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
Timer en C
Modérateur : Modérateur
-
- Administrateur
- Messages : 2323
- Inscription : 23 sept. 2003 18:14
- Localisation : Strasbourg
- Contact :
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
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 !!!!