ESP32 S3 - Barregraphe LED à 10 segments

1×ESP32 S3 WROOM N16R8
1×Alternativement: ESP32 S3 SuperMini Dev Module
1×Alternativement: ESP32 S3 Uno-form Board
1×Alternativement: ESP32 S3 Camera Board
1×Câble USB Type-A vers Type-C (pour PC USB-A)
1×Câble USB Type-C vers Type-C (pour PC USB-C)
1×Optionnel: Connecteur d'alimentation DC
1×10 Segment LED Bar Graph
10×220 Ω Resistor
1×Plaque d'essai
1×Fils de connexion
1×Recommandé: Screw Terminal Expansion Board for ESP32 S3
1×Recommandé: Breakout Expansion Board for ESP32 S3
1×Recommandé: Power Splitter for ESP32 S3

Ou vous pouvez acheter les kits suivants:

1×Kit de Démarrage DIYables ESP32 S3 (ESP32 S3 inclus)
1×Kit de Capteurs DIYables (18 capteurs/écrans)
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.

Ce tutoriel pour débutants vous montre comment utiliser l'ESP32 S3 avec un barregraphe LED à 10 segments pour créer des affichages visuels animés. Que vous construisiez un indicateur de niveau de batterie, un vumètre de signal ou une barre de progression, ce guide étape par étape vous permettra de démarrer rapidement.

Ce que vous allez construire dans ce tutoriel :

  1. Ce qu'est le barregraphe LED à 10 segments et comment il fonctionne
  2. Comment câbler le barregraphe LED à l'ESP32 S3
  3. Comment écrire et téléverser le code d'animation
  4. Comment observer et vérifier le résultat de l'animation de la barre
ESP32 S3 et barregraphe LED à 10 segments

À propos du barregraphe LED à 10 segments

Le barregraphe LED à 10 segments est un composant d'affichage compact contenant dix LED rouges individuelles disposées en une barre linéaire. Chaque segment peut être contrôlé indépendamment via une broche GPIO dédiée, ce qui le rend idéal pour créer des indicateurs de niveau visuels, des effets animés et des affichages de progression. Il ne nécessite aucune bibliothèque externe — seulement la fonction intégrée digitalWrite().

Caractéristiques principales

Le barregraphe fonctionne à une tension directe d'environ 2V par segment, avec un courant direct maximal de 20mA. Une résistance limiteuse de courant de 220Ω est nécessaire sur chaque anode pour protéger les broches GPIO de l'ESP32 S3. Le composant compte 20 broches au total : 10 anodes (A1–A10) et 10 cathodes (K1–K10).

Brochage du barregraphe LED

Brochage du barregraphe LED à 10 segments

Le barregraphe LED à 10 segments possède 20 broches disposées en 10 paires anode-cathode.

  1. A1–A10 (Anodes) — Une anode par segment LED ; connectez chacune à une broche GPIO via une résistance de 220Ω
  2. K1–K10 (Cathodes) — Une cathode par segment LED ; connectez-les toutes à GND

Schéma de câblage entre le barregraphe LED à 10 segments et l'ESP32 S3

Connectez chacune des dix broches anode (A1–A10) à une broche GPIO distincte de l'ESP32 S3 (GPIO 4, 5, 6, 7, 15, 16, 17, 18, 8 et 9) via une résistance individuelle de 220Ω, et connectez les dix broches cathode à un rail GND commun sur votre breadboard. Ces broches GPIO sont libres des broches de strapping de l'ESP32 S3 et des broches USB/flash, donc la carte démarre et se flashe normalement même avec le barregraphe branché. Les résistances de 220Ω limitent le courant à travers chaque segment LED et sont essentielles pour protéger les broches GPIO de l'ESP32 S3 contre les dommages.

Consignes de sécurité

Assurez-vous toujours que les résistances limiteuses de courant sont en place avant d'alimenter le circuit — piloter le barregraphe LED sans résistances peut dépasser le courant GPIO maximal de l'ESP32 S3 (40mA par broche), ce qui peut endommager la carte. Utilisez des résistances de 220Ω ou plus pour un fonctionnement sûr.

Schéma de câblage entre l'ESP32 S3 et le barregraphe LED à 10 segments

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.

Barregraphe LED Broche ESP32 S3
A1 (Anode 1) GPIO4 (via 220Ω)
A2 (Anode 2) GPIO5 (via 220Ω)
A3 (Anode 3) GPIO6 (via 220Ω)
A4 (Anode 4) GPIO7 (via 220Ω)
A5 (Anode 5) GPIO15 (via 220Ω)
A6 (Anode 6) GPIO16 (via 220Ω)
A7 (Anode 7) GPIO17 (via 220Ω)
A8 (Anode 8) GPIO18 (via 220Ω)
A9 (Anode 9) GPIO8 (via 220Ω)
A10 (Anode 10) GPIO9 (via 220Ω)
K1–K10 (Cathodes) GND

Code ESP32 S3 - Barregraphe LED à 10 segments

Le code suivant initialise les broches GPIO 4, 5, 6, 7, 15, 16, 17, 18, 8 et 9 en sorties et exécute une animation de barre en continu. Il remplit la barre de gauche à droite en allumant chaque segment avec une pause de 100ms entre chaque étape, maintient la barre pleine pendant 500ms, puis la vide de droite à gauche au même rythme. L'état actuel de la barre est affiché sur le moniteur série à chaque étape, produisant une représentation textuelle défilante de l'animation.

/* * Ce code ESP32 S3 a été développé par newbiely.fr * Ce code ESP32 S3 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/esp32-s3/esp32-s3-10-segment-led-bar-graph */ const int NUM_SEGMENTS = 10; const int ledPins[NUM_SEGMENTS] = {4, 5, 6, 7, 15, 16, 17, 18, 8, 9}; void printBar(int litCount) { Serial.print("Bar: ["); for (int i = 0; i < NUM_SEGMENTS; i++) { Serial.print(i < litCount ? "*" : " "); } Serial.println("]"); } void setup() { Serial.begin(115200); for (int i = 0; i < NUM_SEGMENTS; i++) { pinMode(ledPins[i], OUTPUT); digitalWrite(ledPins[i], LOW); } } void loop() { for (int i = 0; i < NUM_SEGMENTS; i++) { digitalWrite(ledPins[i], HIGH); printBar(i + 1); delay(100); } delay(500); for (int i = NUM_SEGMENTS - 1; i >= 0; i--) { digitalWrite(ledPins[i], LOW); printBar(i); delay(100); } delay(500); }
  1. Nouveau sur l'ESP32 S3 ? Suivez d'abord notre guide ESP32 S3 - Premiers pas.
  2. Configurez l'Arduino IDE avec la prise en charge de la carte ESP32 S3 installée.
  3. Câblez le barregraphe LED à l'ESP32 S3 en suivant le schéma de câblage ci-dessus, en insérant une résistance de 220Ω entre chaque broche anode et sa broche GPIO correspondante, et en connectant toutes les broches cathode à GND.
  4. Connectez l'ESP32 S3 à votre ordinateur à l'aide d'un câble USB-C.
  5. Ouvrez l'Arduino IDE.
  6. Sélectionnez la bonne carte ESP32 S3 dans Tools > Board et le bon port dans Tools > Port.
  7. Copiez le code ci-dessus et collez-le dans un nouveau sketch Arduino.
  8. Cliquez sur Upload pour compiler et flasher le code sur l'ESP32 S3.
  9. Observez le barregraphe LED : les segments doivent s'allumer un par un de gauche à droite, rester allumés brièvement, puis s'éteindre un par un de droite à gauche, en boucle continue.
  10. Ouvrez le moniteur série à 115200 bauds pour voir la représentation textuelle de l'animation de la barre en temps réel.
  11. Astuce : Tenez le barregraphe devant une surface sombre pour mieux apprécier l'effet d'animation — les 10 segments rouges vifs produisent une barre visuelle éclatante même en plein jour.

Résultat sur le moniteur série

∞
Newbiely | Arduino IDE 2.3.8
──
☐
✕
File
Edit
Sketch
Tools
Help
ESP32S3 Dev Module
Newbiely.ino
···
8 Serial.println("Hello World!");
Output
Serial Monitor
Message (Enter to send message to 'ESP32S3 Dev Module' on 'COM15')
New Line
9600 baud
Bar: [* ] Bar: [** ] Bar: [*** ] Bar: [**** ] Bar: [***** ] Bar: [****** ] Bar: [******* ] Bar: [******** ] Bar: [********* ] Bar: [**********] Bar: [********* ] Bar: [******** ] Bar: [******* ] Bar: [****** ] Bar: [***** ] Bar: [**** ] Bar: [*** ] Bar: [** ] Bar: [* ] Bar: [ ]
Ln 11, Col 1
ESP32S3 Dev Module on COM15
2

Applications et idées de projets

Voici quelques façons pratiques d'étendre ce projet à des cas d'usage réels.

  1. Indicateur de niveau de batterie : Affichez l'état de charge sous forme de barre visuelle à 10 niveaux.
  2. Vumètre : Visualisez l'amplitude audio à partir d'un capteur de microphone.
  3. Indicateur de force du signal : Indiquez le niveau de signal WiFi ou cellulaire.
  4. Barre de progression : Affichez le pourcentage d'achèvement d'une tâche dans un projet d'automatisation.
  5. Indicateur de plage de température : Associez des valeurs de température à une échelle visuelle.
  6. Moniteur de niveau d'eau : Affichez l'état de remplissage d'un réservoir avec 10 niveaux distincts.

Défiez-vous

  1. Débutant : Connectez un potentiomètre et associez sa valeur analogique (0–4095) au nombre de segments allumés.
  2. Intermédiaire : Créez une animation de rebond où un seul segment se déplace d'avant en arrière.
  3. Avancé : Lisez le niveau sonore d'un module microphone et affichez l'amplitude en temps réel sur le barregraphe.

Vidéo du tutoriel

Regardez ci-dessous le tutoriel vidéo étape par étape pour ce projet ESP32 S3.

※ NOS MESSAGES

  • N'hésitez pas à partager le lien de ce tutoriel. Cependant, veuillez ne pas utiliser notre contenu sur d'autres sites web. Nous avons investi beaucoup d'efforts et de temps pour créer ce contenu, veuillez respecter notre travail !