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 :

Préparation du matériel

1×Arduino Uno
1×USB 2.0 cable type A/B
1×Wires
1×ON/OFF Square Switch
1×(Alternative) ON/OFF Round Switch
1×(Optional) Heat Shrink Tubing
1×(Optional) Soldering Iron
1×(Optional) 9V Power Adapter for Arduino
1×(Recommended) Screw Terminal Block Shield for Arduino Uno
1×(Optional) Transparent Acrylic Enclosure For Arduino Uno

Or you can buy the following sensor kits:

1×DIYables Sensor Kit (30 sensors/displays)
1×DIYables Sensor Kit (18 sensors/displays)
Divulgation : Certains des liens fournis dans cette section sont des liens affiliés Amazon. Nous pouvons recevoir une commission pour tout achat effectué via ces liens, sans coût supplémentaire pour vous. Nous vous remercions de votre soutien.

À 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 THAT:

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!