Étape 5: Le Code
Ce code est similaire et utilise de nombreux exemples tirés de l’exemple de changement d’État fichier > exemples > numérique > StateChangeDetection. Un exemple simple de ce code peut être trouvé ici.
Dans mon void setup(), j’ai mis tout simplement les broches de la LED de sortie et les deux boutons d’entrée.
« Serial.begin(9600); » va me permettre d’utiliser l’outil Moniteur série > Serial Monitor pour suivre mes compteurs et les boutons pressés.
Dans le void loop() j’ai lu l’entrée pin, puis on le compare à son état précédent qui en ce moment est 0. S’il y avait un changement tels que le bouton est enfoncé (buttonState == haut) j’ai augmenter le compteur et l’afficher sur le moniteur de la série. Quand j’ai relâché la touche (buttonState == faible) j’ai afficher quel bouton j’ai insisté pour référence. J’ai également ajouter un petit délai pour éviter de rebondir.
Après cela, c’est toutes les mission avance droite de LED au compteur.
C’était pour le premier bouton qui passe 1 de 0 à 15.
Maintenant le deuxième bouton que nous avons déplace la valeur vers le bas. La partie la plus délicate est d’avoir il fonctionne en même temps donc quand nous appuyer sur le second bouton pour diminuer la valeur, la première valeur de boutons et compteur obtient une diminution trop. Donc au lieu d’être à 4, nous appuyer sur le bouton et déplacer vers 3 (en binaire), lorsque nous appuyer sur le premier bouton, nous voulons aller à 4 au lieu de 5.
Pour ce faire correctement, nous commençons le deuxième bouton tout comme le premier, mais cette fois notre compteur bouton 2 sera le compteur du premier bouton moins 1 et ensuite nous devons faire le premier compteur trop reculé de 1.
buttonPushCounter2 = buttonPushCounter - 1 ;
buttonPushCounter = buttonPushCounter - 1 ;
Tout le reste est le même, et on copie la fi... instructions Else.