ESP32 - Bargraphe LED à 10 Segments

1×38-pin ESP32 ESP-WROOM-32 Dev Module - Narrow
1×Alternativement: 38-pin ESP32 ESP-WROOM-32 Dev Module - Wide
1×Alternativement: 30-pin ESP32 ESP-WROOM-32 Dev Module - Wide
1×Alternativement: ESP32 Uno-form board
1×Alternativement: ESP32 S3 Uno-form 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é: Carte d'extension à bornier à vis pour ESP32
1×Recommandé: Breakout Expansion Board for ESP32
1×Recommandé: Répartiteur d'alimentation pour ESP32

Ou vous pouvez acheter les kits suivants:

1×Kit de Démarrage DIYables ESP32 (ESP32 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 vous explique comment utiliser l'ESP32 pour contrôler un bargraphe LED à 10 segments et afficher une animation visuelle de barre sur l'afficheur.

À Propos du Bargraphe LED à 10 Segments

Bargraphe LED à 10 segments
Nombre de segments 10
Couleur des LED Rouge vif
Tension directe ~2V par segment
Courant direct 20mA max par segment
Résistance requise 220Ω par segment

Brochage du Bargraphe LED

Brochage du bargraphe LED à 10 segments
  • Broches d'anode (A1–A10) : connectez ces broches aux broches GPIO via des résistances de 220Ω
  • Broches de cathode (K1–K10) : connectez ces broches à GND (0V)

Nous recommandons vivement de connecter des résistances de limitation de courant sur chaque anode pour protéger les broches GPIO de l'ESP32.

※ Note:

Les 10 broches d'anode sont câblées le long d'un seul côté du connecteur de la carte ESP32 Dev Board, dans l'ordre physique des broches, afin de garder un câblage simple. Cela signifie que GPIO5 et GPIO15 sont utilisées — toutes deux n'émettent qu'une brève impulsion au démarrage et sont couramment utilisées pour les LED intégrées, elles présentent donc peu de risques. GPIO0, GPIO2 et GPIO12, qui peuvent réellement perturber le démarrage de la carte ou le mode de flashage, sont entièrement évitées.

Schéma de Câblage entre le Bargraphe LED à 10 Segments et l'ESP32

Schéma de câblage ESP32 bargraphe LED - Breadboard

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

Si vous ne savez pas comment alimenter l'ESP32 et d'autres composants, consultez les instructions dans le tutoriel suivant : Comment alimenter l'ESP32..

Bargraphe LED Broche ESP32
A1 (Anode 1) GPIO23 (via 220Ω)
A2 (Anode 2) GPIO22 (via 220Ω)
A3 (Anode 3) GPIO21 (via 220Ω)
A4 (Anode 4) GPIO19 (via 220Ω)
A5 (Anode 5) GPIO18 (via 220Ω)
A6 (Anode 6) GPIO5 (via 220Ω)
A7 (Anode 7) GPIO17 (via 220Ω)
A8 (Anode 8) GPIO16 (via 220Ω)
A9 (Anode 9) GPIO4 (via 220Ω)
A10 (Anode 10) GPIO15 (via 220Ω)
K1–K10 (Cathodes) GND

Comment Programmer l'ESP32 pour le Bargraphe LED à 10 Segments

  • Programmer l'ESP32 pour le bargraphe LED à 10 segments est simple. Aucune installation de bibliothèque n'est nécessaire.
  • Définissez un tableau de broches GPIO attribuées à chaque segment : const int ledPins[10] = {23, 22, 21, 19, 18, 5, 17, 16, 4, 15};
  • Configurez chaque broche en sortie dans setup() : pinMode(ledPins[i], OUTPUT);
  • Allumez un segment en écrivant HIGH sur sa broche : digitalWrite(ledPins[i], HIGH);
  • Éteignez un segment en écrivant LOW sur sa broche : digitalWrite(ledPins[i], LOW);

Code ESP32 - Bargraphe LED à 10 Segments

/* * Ce code ESP32 a été développé par newbiely.fr * Ce code ESP32 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/esp32-10-segment-led-bar-graph */ const int NUM_SEGMENTS = 10; const int ledPins[NUM_SEGMENTS] = {23, 22, 21, 19, 18, 5, 17, 16, 4, 15}; 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); }

Étapes Rapides

Si c'est la première fois que vous utilisez l'ESP32, consultez Installation du logiciel ESP32..

  • Copiez le code ci-dessus et ouvrez-le dans Arduino IDE.
  • Sélectionnez la carte ESP-WROOM-32 Dev Module et le bon port COM.
  • Cliquez sur le bouton Téléverser pour compiler et téléverser le code vers l'ESP32.
  • Ouvrez le Moniteur Série et réglez le débit en bauds sur 115200.
  • Observez l'animation de la barre sur le bargraphe LED et la sortie affichée dans le Moniteur Série.

Sortie du Moniteur Série

∞
Newbiely | Arduino IDE 2.3.8
──
☐
✕
File
Edit
Sketch
Tools
Help
ESP32 Dev Module
Newbiely.ino
···
8 Serial.println("Hello World!");
Output
Serial Monitor
Message (Enter to send message to 'ESP32 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
ESP32 Dev Module on COM15
2

Vidéo

Commentaires

※ 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 !