ESP32 - Capteur sonore - LED
Dans ce tutoriel, nous explorerons comment utiliser le capteur sonore pour contrôler des LED. Plus précisément, nous nous pencherons sur deux applications passionnantes :
- **Commutateur sonore** : Lorsqu'un son est détecté (par exemple, un coup), l'ESP32 bascule la LED, l'allumant si elle est éteinte, et l'éteignant si elle est allumée.
- **LED activée par le son** : Lorsqu'un son est détecté, l'ESP32 allume la LED pendant une période spécifique.
Préparation du matériel
1 | × | ESP-WROOM-32 Dev Module | |
1 | × | USB Cable Type-C | |
1 | × | Sound Sensor | |
1 | × | LED | |
1 | × | 220 ohm resistor | |
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) |
À propos des capteurs de LED et de son
Si vous ne connaissez pas les capteurs de LED et de son (brochage, fonctionnement, programmation...), renseignez-vous à leur sujet dans les tutoriels suivants :
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 - Interrupteur sonore active la LED
Le code ci-dessous bascule l'état du LED à chaque fois qu'un son est détecté.
Étapes rapides
- Si c'est la première fois que vous utilisez un 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 l'Arduino IDE sur votre PC.
- Sélectionnez la bonne carte ESP32 (par exemple, ESP32 Dev Module) et le port COM.
- Connectez l'ESP32 au PC via un câble USB.
- Ouvrez Arduino IDE, sélectionnez la bonne carte et le bon port.
- Copiez le code ci-dessus et ouvrez-le avec Arduino IDE.
- Cliquez sur le bouton Upload dans Arduino IDE pour charger le code sur l'ESP32.
- Tapez des mains devant le capteur de son
- Observez le changement d'état de la LED
Explication du code
Lisez l'explication ligne par ligne dans les lignes de commentaire du code source !
Code ESP32 - LED activée par le son pour une durée déterminée
Le code ci-dessous allume une LED pendant une période donnée lorsque du son est détecté. Après cette période, la LED est éteinte.
Veuillez noter que le code précédent utilise la fonction delay(), qui est facile à comprendre. Cependant, lorsque du code supplémentaire est ajouté, la fonction delay() peut causer des problèmes de blocage pendant la période de délai. Pour remédier à cela, le code suivant met en œuvre une approche non bloquante en utilisant la bibliothèque ezLED. La bibliothèque ezLED, travaillant en arrière-plan, utilise la fonction millis() au lieu de delay pour éviter le blocage.
Étapes rapides
- Si c'est la première fois que vous utilisez l'ESP32, consultez comment configurer l'environnement pour l'ESP32 sur Arduino IDE.
- Faites le câblage comme sur l'image ci-dessus.
- Connectez la carte ESP32 à votre PC via un câble micro USB.
- Ouvrez l'Arduino IDE sur votre PC.
- Sélectionnez la bonne carte ESP32 (par exemple, Module de développement ESP32) et le port COM.
- Connectez l'ESP32 au PC via un câble USB.
- Ouvrez l'Arduino IDE, sélectionnez la bonne carte et le bon port.
- Cliquez sur l'icône Libraries dans la barre gauche de l'Arduino IDE.
- Recherchez “ezLED”, puis trouvez la bibliothèque led par ArduinoGetStarted.
- Cliquez sur le bouton Install pour installer la bibliothèque ezLED.
- Copiez le code ci-dessus et ouvrez-le avec l'IDE Arduino
- Cliquez sur le bouton Upload dans l'IDE Arduino pour téléverser le code vers l'ESP32
- Tapez des mains devant le capteur sonore
- Observez le changement d'état de la LED