Désormais, nous devons tester le montage. En conséquence, il est nécessaire de connecter le bouton poussoir
à la carte.
Le boutton poussoir se présente comme un composant avec 4 pattes. Cependant, le fonctionnement d'un tel boutton n'est pas tout à fait celui d'un pur boutton analogique, c'est d'ailleurs pour cela qu'il a 4 pattes.
Les deux schéma suivants expliquent ce qui se passe quand le bouton est relâché ou quand le bouton est pressé.
Positionner correctement le bouton sur la breadboard.
Pour mémoire, vous avez le schéma de connexion de la breadboard qui est rappelé par le schéma suivant :
Il faudra faire attention à ce que deux pins ne soient pas sur la même ligne de connexion de la breadboard.
Une fois que vous avez positionné le bouton sur la breadboard, il faut désormais connecté chacune des pins sur la carte ARDUINO .
Identifier les ports dont vous avez besoin pour :
Indication : Sur la carte ARDUINO, il existe un port sortant du 3,3 V. De plus il existe une banque de port pouvant générer ou lire des signaux numériques (soit 0 ou 3,3 V) dans la banque PWM.
Connecter le bouton sur ces ports.
En fait, nous allons faire un peu plus compliqué, nous allons mettre la diode verte en série avec l'interupteur selon le schéma suivant :
+ --- Interrupteur ---- + ----- diode verte ------- + | | | | | | | | | 3,3 V (mesure GND port x sur ARDUINO)
Quand vous appuez sur l'interrupteur, la diode verte doit s'allumer.
L'intérêt, c'est que quand vous coupez l'interrupteur, la charge mesurée diminue immédiatement puisque la diode a une certaine résistance. Sinon, elle mettrait plus de temps pour disparaitre et créerait des variations de mesure. Autre montage possible :
+ --- diode blanche ---- + ----- interrupteur ------- + | | | | | | | | | 3,3 V (mesure GND port x sur ARDUINO)
Attention, dans ce cas, l'interuppteur est on
quand la mesure sur le port est LOW
.
Nous allons tester si cela fonctionne correctement. Pour ce faire, nous allons faire un petit programme qui va tester régulièrement l'état du bouton.
Le programme sera quelque chose du type :
Button myButton(portNumber, "bouton"); // portNumber correspond au port // que vous avez sélectionné pour connecter // votre bouton pressoir. void setup() { Serial.begin(9600); } void loop() { if(myButton.isPressed()) // J'ai appelé la fonction qui retourne l'état ''isPressed''. Serial.print("Button is pressed\n"); delay(500); }
Button
et les ports que vous avez sélectionnés en interne.Désormais, nous souhaitons que chaque fois que nous appuyons sur le bouton, la diode interne s'allume si elle était éteinte ou au contraire, elle s'éteint si jammais elle était allumée.
Modifier le programmer précédent pour :
Tester le bon fonctionnement de l'ensemble.
Précédent: Jalon 1: La classe ''Button''
Suivant: Jalon 3: Détermination des limites de l'approche synchone.