Cours:TDS 2103 mini projet : Différence entre versions

De troyesGEII
Aller à : navigation, rechercher
m ({{Rouge|Mise sous tension}})
m
Ligne 4 : Ligne 4 :
  
 
Le principe sera le suivant :
 
Le principe sera le suivant :
->une led s'allume
+
*une led s'allume
->on lance un chronomètre (.... oh un timer !)
+
*on lance un chronomètre (.... oh un timer !)
->on attend l'appui sur un bouton
+
*on attend l'appui sur un bouton
->on affiche le temps de réaction
+
*on affiche le temps de réaction
  
 
Le système sera simulé sur '''Tinkercad''' et l'utilisation des fonctions arduino .... {{Rouge|interdites}} bien évidemment.
 
Le système sera simulé sur '''Tinkercad''' et l'utilisation des fonctions arduino .... {{Rouge|interdites}} bien évidemment.

Version du 22 mars 2018 à 18:39

ArduinoPinout.png

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.

Bluebg.png
Aidesmall.png
À propos de cette image

Allez un peu d'aide



  • ça commence par OnCompare
  • ça continue avec le numéro du timer
  • ça se termine par A ou B ... ici on prend la sortie A

Todo.jpg A trouver sur l'image un peu plus haut et câbler cette led sur Tinkercad circuit : montage anodes communes svp

......

Todo.jpg 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)
Documentation simple du Timer 1 (16 bits)
La comparaison avec le Timer 1 (16 bits)


Question.jpg 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

Question.jpg 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

Todo.jpg Faire en sorte qu'à la moitié du temps pendant laquelle la led1 s'allume, la 2ème led s'allume à son tour

bon c'est pas très clair tout ça ... une image :Dephasagepi2.png