yop,
>>> printf("%lu %u\n",(unsigned long)sec,(unsigned int)nbre_tours);
>>>
>>> en déclarant sec comme "seconds" et j'ai quand même un débordement sur
>>> 16bits.
>>>
>> ça devrait marcher pourtant. Par défaut je mets "%ld" mais je pense que
>> c'est pareil. Sinon rebalance le code ;)
>>
> Ci-joint.
Je vois pas l'erreur là. J'essayerai sur sur notre robot la semaine
prochaine parce que ça m'intrigue ;)
Essaye de regarder si un truc comme ça fonctionne :
long i=153548L;
printf("%ld\n", i);
Sinon, je pense pas que ce soit ça, mais dans le menuconfig, tu peux
choisir différents types de printf (dans generation options).
> Sinon, j'ai du mal à comprendre comment marche tout le bousin. Je
> voudrai utiliser le timer0 pour avoir un rapport cyclique variable sur
> OC0, est-ce que c'est possible de le faire tout en ayant le scheduler
> sur le même timer ?
Je pense que c'est possible... même si le module est pas vraiment prévu
pour.
Dans le cas où tu utilises le scheduler avec le timer0 (sans utiliser le
module hardware/timer), il va initialiser les registres de la manière
suivante :
sbi(TIMSK, TOIE0);
TCNT0 = 0;
TCCR0 = SCHEDULER_CK;
En gros, tu dois pouvoir changer la valeur de TCCR0 après
l'initialisation du scheduler pour utiliser le mode PWM du timer 0, tout
en gardant l'interruption overflow, utilisée par le scheduler.
a+
Olivier
_______________________________________________
Avr-list mailing list
[email protected]
CVSWEB : http://cvsweb.droids-corp.org/cgi-bin/viewcvs.cgi/aversive
WIKI : http://wiki.droids-corp.org/index.php/Aversive
DOXYGEN : http://zer0.droids-corp.org/doxygen_aversive/html/
BUGZILLA : http://bugzilla.droids-corp.org
COMMIT LOGS : http://zer0.droids-corp.org/aversive_commitlog