Arduino - Interrupteur

L'interrupteur ON/OFF, également appelé interrupteur à bascule, possède deux états : ON (fermé) et OFF (ouvert). L'état de l'interrupteur ON/OFF bascule entre ON et OFF à chaque fois qu'il est pressé, et l'état est maintenu même lorsqu'il est relâché. Dans ce tutoriel, nous allons apprendre à utiliser l'interrupteur ON/OFF avec Arduino.

Interrupteur Marche/Arrêt Arduino

Veuillez ne pas confondre avec ce qui suit :

À propos de l'interrupteur marche/arrêt

Un interrupteur ON/OFF est un interrupteur qui change d'état (de ON à OFF, ou de OFF à ON) lorsqu'il est pressé, et qui maintient ensuite cet état même lorsqu'il est relâché. Pour changer l'état, nous devons le presser à nouveau.

Brochage

L'interrupteur ON/OFF a principalement deux types : l'interrupteur à deux broches et l'interrupteur à trois broches.

Dans ce tutoriel, nous utiliserons un interrupteur à deux broches. Dans ce type, nous n'avons PAS besoin de distinguer les deux broches.

Brochage de l'interrupteur ON/OFF

Comment ça fonctionne

Il existe deux manières d'utiliser l'interrupteur ON/OFF. Ci-dessous se trouve le tableau de câblage pour l'interrupteur ON/OFF et l'état de lecture sur Arduino dans les deux cas :

pin 1 pin 2 Arduino Input Pin's State
1 GND Arduino Input Pin (with pull-up) HIGH OFF, LOW ON
2 VCC Arduino Input Pin (with pull-down) HIGH ON, LOW OFF

Nous devons seulement choisir l'une des deux méthodes ci-dessus. Le reste du tutoriel utilisera la première méthode.

Diagramme de câblage

Schéma de câblage de l'interrupteur Marche/Arrêt Arduino

This image is created using Fritzing. Click to enlarge image

Pour rendre la connexion des fils stable et ferme, nous recommandons d'utiliser un Fer à Souder pour souder ensemble les fils et la broche du bouton ON/OFF, puis d'utiliser un Tube Thermorétractable pour assurer la sécurité.

Code Arduino - Interrupteur Marche/Arrêt

Tout comme un bouton, un interrupteur ON/OFF doit également être anti-rebond (Voir plus à Pourquoi le débounce est nécessaire pour le bouton, l'interrupteur ON/OFF ?). Le debouncing rend le code compliqué. Heureusement, la bibliothèque ezButton prend en charge la fonction de debouncing. La bibliothèque utilise également un registre de pull-up interne. Cela nous facilite la programmation.

※ Note:

Il existe deux cas d'utilisation couramment utilisés :

  • Le premier : Si l'état de l'interrupteur est ON, faire quelque chose. Si l'état de l'entrée est OFF, faire autre chose en sens inverse.
  • Le deuxième : Si l'état de l'interrupteur passe de ON à OFF (ou de OFF à ON), faire quelque chose.
/* * Ce code Arduino a été développé par newbiely.fr * Ce code Arduino est mis à disposition du public sans aucune restriction. * Pour des instructions complètes et des schémas de câblage, veuillez visiter: * https://newbiely.fr/tutorials/arduino/arduino-switch */ #include <ezButton.h> ezButton toggleSwitch(7); // create ezButton object that attach to pin 7; void setup() { Serial.begin(9600); toggleSwitch.setDebounceTime(50); // set debounce time to 50 milliseconds } void loop() { toggleSwitch.loop(); // MUST call the loop() function first if (toggleSwitch.isPressed()) Serial.println("The switch: OFF -> ON"); if (toggleSwitch.isReleased()) Serial.println("The switch: ON -> OFF"); int state = toggleSwitch.getState(); if (state == HIGH) Serial.println("The switch: OFF"); else Serial.println("The switch: ON"); }

Étapes rapides

  • Effectuez le câblage comme indiqué sur le schéma ci-dessus.
  • Connectez l'Arduino au PC via le câble USB.
  • Ouvrez l'Arduino IDE.
  • Installez la bibliothèque ezButton. Voir Comment faire
  • Sélectionnez la bonne carte et le bon port.
  • Cliquez sur le bouton Upload dans l'Arduino IDE pour charger le code sur l'Arduino.
  • Pressez l'interrupteur sur ON.
  • Observez le résultat sur le moniteur série.
  • Puis pressez l'interrupteur sur OFF.
  • Observez le résultat sur le moniteur série.
COM6
Send
The switch: OFF The switch: OFF The switch: OFF The switch: OFF -> ON The switch: ON The switch: ON The switch: ON The switch: ON The switch: ON The switch: ON The switch: ON -> OFF The switch: OFF The switch: OFF The switch: OFF
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

Vidéo

※ OUR MESSAGES

  • Please feel free to share the link of this tutorial. However, Please do not use our content on any other websites. We invested a lot of effort and time to create the content, please respect our work!