Cours:TDS 2103 mini projet
On souhaite réaliser un système permettant de mesurer le temps de réaction à un événement.
Le principe sera le suivant : ->une led s'allume ->on lance un chronomètre (.... oh un timer !) ->on attend l'appui sur un bouton ->on affiche le temps de réaction
Le système sera simulé sur Tinkercad et l'utilisation des fonctions arduino .... interdites bien évidemment.
******************************************* Astuce Tinkercad circuit : mettre un _delay_ms(xxx) dans le while(1) *******************************************
Mise sous tension
Commençons par indiquer que le système est vivant.
On branche une led (verte de préférence) sur une broche du port B qui soit pilote directement par le TIMER1 ... donc pas n'importe laquelle.
|
|
A trouver sur l'image un peu plus haut et câbler cette led sur Tinkercad circuit : montage anodes communes stp
......
Bon alors, elle fonctionne cette led ... elle s'éclaire trop ou pas assez, la résistance !!!!
Allez on fait clignoter cette led :
- rythme 4Hz
- allumée 4 fois en 1 seconde
- éteinte 4 fois en 1 seconde
- temps allumé = temps éteint
- pas le droit à toute forme de .... delay
Et voilà le premier Timer à configurer :
- choix du prédiviseur
- mode CTC
- valeur de comparaison
- module de sortie (demander le chgt d'état de OC1A à chaque comparaison)
Vérifier le bon fonctionnement du clignotement
Bon c'est pas mal, mais avec 2 leds c'est mieux
- couleur au choix
- position sur sortie OC1B
Bien sûr, c'est le timer qui va faire clignoter la led sans action du µcontroleur.
La fréquence de clignotement des 2 leds sera donc la même : ça ne dépend que de OCR1A
En jouant sur la valeur de OCR1B, on décale (déphase plutôt) le moment ou la 2ème led s'allume par rapport à la première
Faire en sorte qu'à la moitié du temps pendant laquelle la led1 s'allume, la 2ème led s'allume à son tour


