ESP32 MicroPython - Afficheur 7 Segments 4 Chiffres TM1637
L'ESP32 est un microcontrôleur puissant, compatible WiFi, largement utilisé dans les projets IoT et embarqués. Associé à MicroPython et au module d'afficheur 7 segments 4 chiffres DIYables TM1637, vous pouvez facilement afficher des nombres, du texte, des températures et l'heure sur un afficheur LED lumineux.
Ce tutoriel vous guide à travers :
- La connexion de l'afficheur 7 segments 4 chiffres TM1637 à un ESP32 — seulement 2 broches de données nécessaires.
- L'affichage d'entiers avec zéros de tête optionnels.
- L'affichage de texte et de caractères spéciaux (symbole degré).
- L'affichage de l'heure au format HH:MM avec séparateur deux-points clignotant.
- Le contrôle de la luminosité (8 niveaux).
- Le clignotement de l'afficheur avec off()/on().

Composants Nécessaires
Ou vous pouvez acheter les kits suivants:
| 1 | × | Kit de Démarrage DIYables ESP32 (ESP32 inclus) | |
| 1 | × | Kit de Capteurs DIYables (18 capteurs/écrans) |
Le Module d'Afficheur 7 Segments 4 Chiffres TM1637
Le TM1637 est un CI pilote LED dédié qui gère à la fois le multiplexage et le pilotage des segments pour jusqu'à 6 chiffres. Ce module l'utilise pour piloter un afficheur LED 7 segments 4 chiffres avec un séparateur deux-points entre le deuxième et le troisième chiffre, le rendant idéal pour les applications d'horloge et de minuterie.
Contrairement aux afficheurs basés sur des registres à décalage (comme le 74HC595), le TM1637 dispose d'une mémoire d'affichage intégrée. Une fois que vous écrivez des données dans la puce, elle maintient l'afficheur allumé automatiquement — aucune interruption de Timer ni boucle de rafraîchissement n'est nécessaire. Le TM1637 prend également en charge 8 niveaux de luminosité (0–7) et n'utilise que 2 broches GPIO (CLK et DIO) pour la communication.
Le module communique via un protocole série 2 fils similaire à l'I2C (mais pas l'I2C standard). La bibliothèque gère tous les détails du protocole — vous appelez simplement des méthodes simples comme print() et print_time().
Description des Broches
| Broche | Fonction | Connexion ESP32 |
|---|---|---|
| CLK | Entrée horloge série | Connecter à GPIO21 |
| DIO | Entrée/sortie données série | Connecter à GPIO22 |
| VCC | Alimentation 3,3V à 5V | Connecter à 3,3V |
| GND | Masse | Connecter à GND |

Câblage
L'ESP32 fonctionne en logique 3,3V. Le module TM1637 fonctionne avec 3,3V et 5V, il est donc directement compatible avec l'ESP32 sans adaptateur de niveau.
| Module TM1637 | ESP32 | Notes |
|---|---|---|
| CLK | GPIO21 | Ligne d'horloge |
| DIO | GPIO22 | Ligne E/S données |
| VCC | 3.3V | Alimentation |
| GND | GND | Masse |

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.
Conseil : Vous pouvez utiliser n'importe quelle broche GPIO disponible sur l'ESP32. Mettez simplement à jour les numéros de broches dans le code.
Étapes Rapides
Voici les instructions pour configurer et exécuter votre code MicroPython sur l'ESP32 avec Thonny IDE :
- Assurez-vous que Thonny IDE est installé sur votre ordinateur.
- Confirmez que le firmware MicroPython est chargé sur votre carte ESP32.
- Si c'est la première fois que vous utilisez un ESP32 avec MicroPython, consultez le guide ESP32 - Premiers pas. pour des instructions étape par étape.
- Connectez la carte ESP32 au module TM1637 selon le schéma fourni.
- Connectez la carte ESP32 à votre ordinateur avec un câble USB.
- Ouvrez Thonny IDE sur votre ordinateur.
- Dans Thonny IDE, allez dans Outils Options.
- Dans l'onglet Interpréteur, choisissez MicroPython (ESP32) dans le menu déroulant.
- Assurez-vous que le bon port est sélectionné. Thonny IDE le détecte généralement automatiquement, mais vous devrez peut-être le sélectionner manuellement (comme COM3 sur Windows ou /dev/ttyUSB0 sur Linux).
- Naviguez vers Outils Gérer les packages dans Thonny IDE.
- Recherchez "DIYables-MicroPython-4Digit7Segment-TM1637", puis trouvez la bibliothèque d'afficheur 7 segments 4 chiffres TM1637 créée par DIYables.
- Cliquez sur DIYables-MicroPython-4Digit7Segment-TM1637, puis cliquez sur le bouton Installer pour installer la bibliothèque.

- Copiez le code MicroPython fourni et collez-le dans l'éditeur de Thonny.
- Sauvegardez le code sur votre ESP32 en :
- Cliquant sur le bouton Enregistrer ou en appuyant sur Ctrl+S.
- Dans la boîte de dialogue d'enregistrement, choisissez Appareil MicroPython.
- Nommez le fichier main.py.
- Cliquez sur le bouton vert Exécuter (ou appuyez sur F5) pour exécuter le script.
- Observez le résultat — l'afficheur 7 segments 4 chiffres montre des nombres, du texte ou l'heure selon l'exemple.
Modèle de Code de Démarrage
Code ESP32 — Afficher des Entiers
Essayez
- Câblez le module, connectez l'ESP32 via USB.
- Téléversez le code avec Thonny IDE.
- L'afficheur fait défiler plusieurs entiers (0, 42, 1234, -5, -123, 9999), puis affiche 42 avec zéros de tête "0042".
Référence Affichage d'Entiers
| Appel de méthode | Afficheur montre | Notes |
|---|---|---|
| display.print(0) | 0 | Chiffre unique aligné à droite |
| display.print(42) | 42 | Aligné à droite |
| display.print(1234) | 1234 | 4 chiffres utilisés |
| display.print(-5) | -5 | Signe négatif + chiffre |
| display.print(-123) | -123 | Négatif max 3 chiffres |
| display.print(9999) | 9999 | Valeur maximale affichable |
| display.print(10000) | Err | Erreur de dépassement |
| display.print(42, zero_pad=True) | 0042 | Avec zéros de tête sur 4 chiffres |
Code ESP32 — Afficher Texte, Degrés et Températures
Référence Texte et Température
| Appel de méthode | Afficheur montre | Notes |
|---|---|---|
| display.print("HELP") | HELP | Affichage texte |
| display.print("Hi") | Hi | Aligné à gauche, 2 caractères |
| display.print("COOL") | COOL | 4 caractères |
| display.print_temperature(25, 'C') | 25°C | Celsius avec symbole degré |
| display.print_temperature(72, 'F') | 72°F | Fahrenheit |
| display.print_temperature(-5, 'C') | -5°C | Température négative |
| display.print_temperature(100) | 100° | 3 chiffres, pas de place pour l'unité |
Le symbole degré peut également être utilisé directement dans les chaînes via la constante display.DEGREE.
Code ESP32 — Afficher l'Heure avec Deux-Points Clignotants
Référence Affichage de l'Heure
| Appel de méthode | Afficheur montre | Notes | |
|---|---|---|---|
| display.print_time(12, 30) | 12 | 30 | Deux-points ACTIVÉ |
| display.print_time(9, 5) | 09 | 05 | Heures et minutes avec zéros de tête |
| display.print_time(12, 30, colon=False) | 12 30 | Deux-points DÉSACTIVÉ (pour effet clignotant) |
Alternez le paramètre colon toutes les 500ms pour créer un effet de deux-points clignotant, courant sur les afficheurs d'horloge.
Code ESP32 — Définir des Chiffres Individuels et les Deux-Points
Référence Chiffres Individuels
| Appel de méthode | Description |
|---|---|
| display.set_number(position, number) | Définir un seul chiffre (0-9) à la position 0-3 |
| display.set_char(position, char) | Définir un caractère à la position 0-3 |
| display.set_colon(True) | Activer les deux-points entre le chiffre 1 et le chiffre 2 |
| display.set_colon(False) | Désactiver les deux-points |
Vous pouvez mélanger set_number(), set_char() et set_colon() pour construire des affichages personnalisés chiffre par chiffre.
Code ESP32 — Faire Clignoter l'Afficheur
Référence Clignotement
Utilisez display.off() pour éteindre l'afficheur et display.on() pour le rallumer. Les données d'affichage sont préservées — on() restaure le contenu précédent sans avoir besoin d'appeler print() à nouveau.
Référence de la Bibliothèque
Voir la Référence de la Bibliothèque DIYables_MicroPython_4Digit7Segment_TM1637 pour la documentation complète de l'API incluant tous les constructeurs, méthodes et constantes.
Prochaines Étapes
- Combinez avec un module RTC DS3231 pour construire une horloge en temps réel.
- Ajoutez un capteur DHT11/DHT22 pour afficher des lectures de température en direct.
- Utilisez des boutons pour basculer entre le mode horloge et le mode température.