ESP32 - Boutons multiples
Ce tutoriel vous guide sur la programmation d'un ESP32 pour utiliser plusieurs boutons simultanément sans dépendre de la fonction delay(). Le tutoriel propose du code selon deux méthodes :
- ESP32 boutons multiples avec anti-rebond
- ESP32 boutons multiples avec anti-rebond en utilisant le tableau.
Nous allons démontrer avec quatre boutons. Cependant, vous pouvez facilement adapter le code pour deux boutons, trois boutons, cinq boutons, ou même plus.
Préparation du matériel
1 | × | ESP-WROOM-32 Dev Module | |
1 | × | USB Cable Type-C | |
1 | × | PCB-mount Button | |
1 | × | Panel-mount Button | |
1 | × | Breadboard | |
1 | × | Jumper Wires | |
1 | × | (Recommended) ESP32 Screw Terminal Adapter |
Or you can buy the following sensor kits:
1 | × | DIYables Sensor Kit (30 sensors/displays) | |
1 | × | DIYables Sensor Kit (18 sensors/displays) |
Diagramme de câblage
This image is created using Fritzing. Click to enlarge image
Si vous ne savez pas comment alimenter l'ESP32 et d'autres composants, vous pouvez trouver des conseils dans le tutoriel suivant : Comment alimenter l'ESP32.
Code ESP32 - Plusieurs boutons avec anti-rebond
Lorsque vous gérez plusieurs boutons, la complexité peut survenir dans des situations spécifiques :
- Applications nécessitant l'anti-rebond des boutons (se référer à pourquoi nous avons besoin de l'anti-rebond pour les boutons)
- Applications nécessitant de détecter les changements d'état (appuyé/relâché)
Heureusement, la bibliothèque ezButton simplifie ce processus en gérant en interne le debounce et les événements de bouton. Cela dispense les utilisateurs de gérer des horodatages et des variables lors de l'utilisation de la bibliothèque. De plus, l'utilisation d'un tableau de boutons peut améliorer la clarté et la concision du code.
Étapes rapides
- Si c'est la première fois que vous utilisez ESP32, consultez comment configurer l'environnement pour ESP32 sur Arduino IDE.
- Réalisez le câblage comme sur l'image ci-dessus.
- Connectez la carte ESP32 à votre PC via un câble micro USB.
- Ouvrez Arduino IDE sur votre PC.
- Sélectionnez la bonne carte ESP32 (par exemple, ESP32 Dev Module) et le port COM.
- Réalisez le câblage comme sur l'image ci-dessus.
- Connectez la carte ESP32 à votre PC via un câble USB.
- Ouvrez Arduino IDE sur votre PC.
- Sélectionnez la bonne carte ESP32 (par exemple, ESP32) et le port COM.
- Cliquez sur l'icône Libraries dans la barre gauche de l'Arduino IDE.
- Recherchez "ezButton", puis trouvez la bibliothèque de boutons par ESP32GetStarted.
- Cliquez sur le bouton Install pour installer la bibliothèque ezButton.
- Copiez le code ci-dessus et collez-le dans l'IDE Arduino.
- Compilez et téléchargez le code sur la carte ESP32 en cliquant sur le bouton Upload dans l'IDE Arduino.
- Ouvrez le moniteur série sur Arduino IDE
- Appuyez et relâchez le bouton un par un
Code ESP32 - Plusieurs boutons à l'aide d'un tableau
Nous pouvons améliorer le code fourni en utilisant un tableau de boutons. Le code suivant montre comment ce tableau gère les objets bouton.