Utilisation d'un afficheur 7 segments à 4 chiffres TM1637 avec Arduino
Dans ce tutoriel, nous verrons comment utiliser l'afficheur 7 segments TM1637 à 4 chiffres avec un Arduino. Cet afficheur peut être utilisé pour afficher des nombres, des compteurs ou toute autre donnée numérique. À la fin du projet, vous disposerez d'un afficheur fonctionnel capable de compter de 0 à 500 et de démontrer diverses fonctionnalités telles que le réglage de la luminosité.

Pour ce projet, nous allons connecter l'afficheur TM1637 à l'Arduino en n'utilisant que quelques fils. L'afficheur possède quatre broches : VCC, GND, DIO et CLK. VCC se connecte à l'alimentation 5 V, tandis que GND se connecte à la masse. La broche DIO sera connectée à la broche numérique 3 de l'Arduino, et la broche CLK sera connectée à la broche numérique 2. Ce montage permet à l'Arduino de communiquer facilement avec l'afficheur.
Pour voir la mise en pratique, assurez-vous de suivre la vidéo (dans la vidéo à 00:00) pour un guide visuel.
Le matériel expliqué
Le TM1637 est un pilote d'afficheur à 7 segments polyvalent qui permet de contrôler facilement des afficheurs à 4 chiffres. Il est piloté via une interface à deux fils, composée d'une broche de données (DIO) et d'une broche d'horloge (CLK). Cela facilite sa connexion à des microcontrôleurs comme l'Arduino sans nécessiter de composants supplémentaires.
L'afficheur peut afficher des nombres décimaux et prend en charge le réglage de la luminosité, ce qui le rend adapté à diverses applications telles que les compteurs, les horloges et les minuteries. Son design compact et sa facilité d'utilisation en font un choix populaire tant auprès des amateurs que des professionnels.
Détails de la fiche technique
| Fabricant | Titan Microélectronique |
|---|---|
| Numéro de pièce | TM1637 |
| Tension logique / E/S | 5 V |
| Tension d'alimentation | 3,3 V - 5,5 V |
| Courant de sortie (par segment) | 20 mA |
| Directives sur la fréquence PWM | S/O |
| Seuils logiques d'entrée | 0,3 VCC (niveau bas), 0,7 VCC (niveau haut) |
| Chute de tension / RDS(on)/ saturation | 2,5 V (typ.) |
| Limites thermiques | 125 °C |
| Paquet | DIP 16 broches |
- Assurez-vous que VCC est connecté à une source stable de 5 V afin d'éviter un dysfonctionnement de l'affichage.
- Utilisez des résistances de limitation de courant si nécessaire pour éviter d'endommager les segments.
- Gardez les câbles courts pour minimiser le bruit et les interférences.
- Vérifiez toujours les connexions des broches pour éviter une inversion de polarité.
- Ajustez les niveaux de luminosité en utilisant le
setBrightnessfonction pour une visibilité optimale.
Instructions de câblage


Pour câbler l'afficheur TM1637, connectez d'abord la broche VCC à la sortie 5 V de l'Arduino. Ensuite, connectez la broche GND à l'une des broches de masse de l'Arduino. Pour la communication de données, reliez la broche DIO de l'afficheur à la broche numérique 3 de l'Arduino, et la broche CLK à la broche numérique 2. Cette configuration simple permet à l'Arduino de communiquer efficacement avec l'afficheur.
Assurez-vous d'avoir des connexions sécurisées pour éviter tout problème de fils desserrés. Dans la vidéo, des configurations de câblage alternatives sont montrées, mais les connexions fournies sont les plus simples pour un fonctionnement de base (dans la vidéo à 01:30).
Exemples de code et guide pas à pas
Le code fourni initialise l'affichage et configure les paramètres nécessaires. Les identifiants clés dans le code incluentCLKetDIO, qui sont définis comme les broches numériques 2 et 3, respectivement. La luminosité de l'afficheur est réglée à l'aide desetBrightnessfonction.
#define CLK 2
#define DIO 3
TM1637Display display(CLK, DIO);
void setup() {
display.setBrightness(0x0f); // Set maximum brightness
}
Cet extrait de code montre l'initialisation de l'affichage et le réglage de la luminosité maximale. Ensuite, leloopCette fonction montre comment afficher différents nombres.

void loop() {
uint8_t data[] = { 0x0, 0x0, 0x0, 0x0 };
display.setSegments(data); // Clear the display
display.showNumberDec(23, false, 2, 1); // Show number 23
delay(TEST_DELAY);
}
Ici, l'affichage est effacé et le nombre 23 est affiché. La fonctionshowNumberDecprend des paramètres pour contrôler le nombre affiché et son formatage. La boucle continue d'afficher des nombres jusqu'à 500.
for(int i=0; i<=500; i++) {
display.showNumberDec(i); // Show numbers from 0 to 500
}
Cet extrait de code illustre un compteur simple qui affiche les nombres de 0 à 500 sur l'écran TM1637. L'affichage se mettra à jour en continu jusqu'à atteindre 500, puis reviendra à 0. Le code complet est disponible sous l'article pour votre référence.
Démonstration / À quoi s'attendre
Une fois que tout est câblé et que le code est téléversé, l'écran devrait afficher les nombres de 0 à 500 de manière séquentielle. Il affichera également différents niveaux de luminosité et effacera correctement l'écran entre chaque mise à jour. Faites attention à une inversion de polarité, car cela peut endommager l'affichage. Vous pouvez confirmer le bon fonctionnement en observant l'affichage dans la vidéo (à 04:00).
Horodatages vidéo
- 00:00- Introduction à l'afficheur TM1637
- 01:30- Instructions de câblage
- 02:45- Présentation du code
- 04:00- Démonstration de l'affichage
Ressources et références
Aucune ressource pour le moment.
Fichiers📁
Bibliothèques Arduino (zip)
-
TM1637 Arduino Library
TM1637_library.zip1.36 MB
Fiche technique (pdf)
-
Fiche technique TM1637
/download/datasheet/robojax_TM1637_datasheet.pdf0.67 MB
Manuel de l'Utilisateur
-
Manuel d'affichage TM1637
robojax-TM1637_display_manual.pdf0.31 MB