Étape 7: minuteries
Nous avons eu un moment difficile avec les minuteries tout en travaillant sur ce projet pour plusieurs raisons :
· Minuterie 0 :
Nous avons voulu utiliser cette minuterie pour contrôler les mouvements de la manette de jeu, donc nous n’avions aucune rebonds pendant l’utilisation. Alors que nous testions, utilisant delay(), millis() et plusieurs fonctions Timer 0, nous avons réalisé que l’écran LCD ne fonctionne plus correctement. Nous ne comprends pas vraiment pourquoi cela fonctionnait de cette façon.
Après quelques temps à essayer de corriger cela, nous avons utilisé la version précédente de notre code, sans utiliser les fonctions de minuterie 0 et l’écran LCD fonctionne à merveille. Donc finalement, nous avons réalisé la bibliothèque de LiquidCrystal.h que nous utilisions pour travailler avec l’écran LCD utilise Timer 0, ce qui signifie aucuns autres fonctions qui fonctionnent avec le même timer ne peuvent être utilisées.
· Timer 1 :
Nous utilisons cette minuterie avec le servo, car il faut un signal PWM et cette minuterie peut lui fournir. Il s’agissait de celui plus simple à utiliser car la bibliothèque de servo.h a plusieurs exemples sur la façon de travailler avec le servo et le contrôler.
· Minuterie 2 :
Après que tout le temps passé à essayer d’utiliser la minuterie 0 à contrôler les mouvements de la manette de jeu, lorsque nous avons enfin compris que nous ne pouvions pas l’utiliser, nous avons cherché d’autres solutions. Dans la page web de Arduino, nous avons vu l’Arduino UNO que nous utilisions avait une autre horloge, la minuterie 2 ; Nous avons téléchargé la bibliothèque et il inclus. Il était un exemple sur comment initialiser le timer, appeler une fonction après un temps de milliseconde, qui était parfait pour notre projet.