Comment utiliser le module TM1638 LED&KEY-Afficheur 8 chiffres avec Arduino

1. Introduction
Module TM1638 est un dispositif polyvalent qui combine à la fois un afficheur LED à 8 chiffres et une matrice de touches. Il permet aux utilisateurs d’afficher des chiffres, des caractères ou des symboles sur les segments LED et de détecter les entrées de boutons de manière simple et efficace. Dans cet article, nous allons explorer en détail ce module et découvrir comment l’utiliser avec la plateforme Arduino pour créer des projets d’affichage et d’interaction.
-
Module TM1638 afficheur 8 chiffres avec clavier54,00 DH
-
Produit en promotionCâble de connexion M/F JumperLe prix initial était : 7,00 DH.6,00 DHLe prix actuel est : 6,00 DH.
-
Arduino Uno R3 avec câble USB120,00 DH
2. Description du module TM1638 LED&KEY
Module TM1638 est composé de 8 LED affichant des chiffres et des caractères, ainsi que de 8 touches tactiles disposées en une matrice 8×1. Il est conçu pour être facilement connecté à un microcontrôleur, tel que l’Arduino, grâce à son interface simple à 5 broches (VCC, GND, STB, CLK, DIO).
2.1. Caractéristiques du module
Le module TM1638 fonctionne avec une tension d’alimentation de 5V, avec un courant maximal de 130 mA. Il prend en charge une fréquence de synchronisation allant jusqu’à 450 kHz. La température de fonctionnement recommandée se situe entre -15°C et 60°C, ce qui le rend adapté à une variété d’applications.
2.2. Schéma du module
Le module TM1638 est équipé de 8 LED (LED1 à LED8) connectées à la ligne SEG9 et aux broches de commande GRID1 à GRID8 pour afficher les chiffres et les caractères. Chaque LED peut être contrôlée individuellement en écrivant des données à l’adresse correspondante.
2.3. Connexions avec Arduino UNO
Pour utiliser ce module avec Arduino UNO, il suffit de connecter les broches du module aux broches correspondantes de l’Arduino :
- Broche 3 du module -> Broche DIO de l’Arduino
- Broche 2 du module -> Broche CLK de l’Arduino
- Broche 4 du module -> Broche STB de l’Arduino
2.4. Connexions à la bibliothèque SPI
Il est également possible de connecter le module TM1638 à la bibliothèque SPI de l’Arduino pour simplifier le processus de communication.
3. Programmation du module TM1638 LED&KEY
3.1. Programmation en langage C avec Atmel
La programmation du module TM1638 en langage C peut être réalisée avec les outils fournis par Atmel. Des exemples de programmes de base peuvent être utilisés pour interagir avec le module et afficher des chiffres, des caractères et des symboles.
3.2. Programmation avec Arduino IDE
Pour faciliter la programmation du module TM1638 avec Arduino, diverses bibliothèques sont disponibles, dont la bibliothèque Ricardo Batista. Cette bibliothèque offre une prise en charge étendue du module, avec des fonctions pour afficher des nombres, du texte, des caractères spéciaux et bien plus encore.
3.3. Utilisation de la bibliothèque Ricardo Batista
La bibliothèque Ricardo Batista permet d’utiliser des méthodes simples pour afficher des chiffres, du texte et des caractères spéciaux sur le module TM1638. Par exemple, la fonction setDisplayToDecNumber()
permet d’afficher des nombres décimaux, tandis que setDisplayToString()
permet d’afficher du texte.
3.4. Exemples de programmation
Plusieurs exemples de programmation sont présentés pour illustrer comment utiliser efficacement le module TM1638 avec Arduino. Des exemples incluent l’affichage de nombres, de messages, la gestion des entrées de boutons et bien plus encore.
Voici un exemple de code pour utiliser ce module avec Arduino et afficher un compteur de 0 à 9 en boucle :
#include <TM1638.h> #define DIO_PIN 3 #define CLK_PIN 2 #define STB_PIN 4 TM1638 module(DIO_PIN, CLK_PIN, STB_PIN); void setup() { // Initialisation du module TM1638 module.setupDisplay(true, 2); // Activer l'affichage avec une intensité de 2 (réglable de 0 à 7) } void loop() { // Afficher les chiffres de 0 à 9 en boucle for (int i = 0; i <= 9; i++) { module.setDisplayToDecNumber(i, 0, false); // Afficher le chiffre i (0-9) sans point décimal delay(1000); // Attendre 1 seconde } }
Autre exemple ci-dessous allume successivement chaque LED, de gauche à droite :
#include <TM1638.h> // DIO 3, CLK 2 , STB 4: TM1638 afficheur(3, 2, 4); void setup() { } void loop() { for (int i = 0; i <= 7; i++) { afficheur.setLED(TM1638_COLOR_RED, i); delay(500); afficheur.setLED(TM1638_COLOR_NONE, i); delay(500); } }
Autre exemple ci-dessous indique dans le moniteur série le numéro du bouton enfoncé :
#include <TM1638.h> // DIO 3, CLK 2 , STB 4: TM1638 afficheur(3, 2, 4); void setup() { Serial.begin(9600); } void loop() { byte etatBoutons; etatBoutons = afficheur.getButtons(); for (int i = 0; i <= 7; i++) { if (bitRead(etatBoutons, i)) { Serial.print("Le bouton S"); Serial.print(i + 1); Serial.println(" est enfonce."); delay(500); } } }
4. Applications pratiques
Le module TM1638 offre de nombreuses applications pratiques dans le domaine de l’électronique et de la robotique. Voici quelques exemples d’utilisation :
4.1. Horloges et Chronomètres
Grâce à ses huit chiffres d’affichage, ce module est parfait pour créer des horloges numériques ou des chronomètres. En programmant simplement les chiffres appropriés sur les segments LED, vous pouvez afficher l’heure, les minutes et les secondes avec précision.
4.2. Systèmes de Contrôle d’Accès
Les huit touches tactiles du ce module en font un excellent choix pour les systèmes de contrôle d’accès, tels que les claviers de saisie de code PIN. Les utilisateurs peuvent saisir leur code PIN en appuyant sur les touches correspondantes, puis le système peut vérifier la combinaison pour autoriser ou refuser l’accès.
4.3. Moniteurs de Température et d’Humidité
En combinant le module TM1638 avec des capteurs de température et d’humidité, vous pouvez créer des moniteurs environnementaux. Les valeurs relevées par les capteurs peuvent être affichées en temps réel sur les chiffres LED, fournissant ainsi un suivi en temps réel des conditions ambiantes.
4.4. Affichage de Messages d’Alerte
Le module TM1638 peut être utilisé pour afficher des messages d’alerte ou des notifications importantes. Par exemple, il peut être intégré dans un système de sécurité pour signaler des événements tels que des intrusions ou des défaillances.
5. Conclusion
Le module TM1638 est un composant extrêmement utile pour les projets électroniques basés sur Arduino et autres microcontrôleurs. Il offre une solution économique pour l’affichage d’informations et la gestion des entrées de boutons. Grâce à ses fonctionnalités polyvalentes et à ses bibliothèques de programmation, il est facile à utiliser et offre un large éventail d’applications pratiques.
Que vous souhaitiez construire une horloge numérique sophistiquée, un système de contrôle d’accès ou un simple moniteur de température, ce module est un excellent choix. En explorant les exemples de programmation et en combinant les fonctionnalités d’affichage et d’entrée, les possibilités de projets créatifs sont pratiquement illimitées.
En conclusion, ce module offre une expérience d’apprentissage amusante et enrichissante pour les passionnés d’électronique, des débutants aux experts, en leur permettant de créer des projets interactifs et innovants qui répondent à leurs besoins spécifiques. Que vous soyez un étudiant, un bricoleur ou un amateur de projets électroniques, ce module est un ajout précieux à votre boîte à outils de développement.
Pour plus d’articles : https://www.moussasoft.com/tutoriels-electroniques