Timer en C

Pour toutes vos questions sur CodeVision et la programmation en C en général

Modérateur : Modérateur

Invité

Timer en C

Message par Invité »

bonjour,
voila je me suis crée un petit schema utilisant en entré les broches D.1 et D.2 d'un ATMEGA32
sur ces broche devrai arrivé un signal carré a fréquence variable et je voudrai optenir le temps entre deux impultions pour pouvoir calculé la vitesse en KM/H et le nombre de tour/minute (c'est pour un compteur moto)
j'ai entendu parlé des timers mais je ne sais pas m'en servir.
merci d'avance

JP
Administrateur
Administrateur
Messages : 2323
Inscription : 23 sept. 2003 18:14
Localisation : Strasbourg
Contact :

Message par JP »

Bonjour,

Sur le principe, tu configures ton timer pour qu'il soit cadencé par un signal (F_CPU/prescaler) dont la période est plus grande que la retard entre tes 2 signaux.

Le signal 1 arrive et démarre le timer.
Le time s'incrémente en fonction de sa fréquence de cadencement.
Le signal 2 arrive et arrete le timer.

Tu vas lire la valeur du time
Tu fais la valeur x période de la fréquence du timer, ca te donne le retard.

Il faut s'arranger pour avoir la meilleur présicion sans que le timer arrive à sa valeur final avant que le signal 2 arrive.

Pour la configuration et le fonctionnement des différents timers, tu trouveras tout dans le datasheet.

a+
JP
Ca clignote !!!!

Répondre