Arduino UNO R4 - 74HC595 affichage à 4 chiffres à 7 segments

Un affichage à 4 chiffres à 7 segments typique est utilisé dans des projets tels que des horloges, des minuteries et des compteurs, et nécessite généralement 12 connexions. Le module 74HC595 simplifie cela en n'utilisant que 5 connexions : 2 pour l'alimentation et 3 pour contrôler les segments.

Ce tutoriel ne vous donnera pas trop d'informations complexes sur le matériel. Au lieu de cela, vous apprendrez comment connecter un afficheur à 7 segments à 4 chiffres à un Arduino UNO R4 et comment le programmer pour afficher des informations.

Affichage à 7 segments à 4 chiffres pour Arduino UNO R4 74HC595

Ce guide montrera comment utiliser le module d'affichage à 4 chiffres et 4 points, à sept segments, capable d'afficher des valeurs à virgule flottante. Si vous avez besoin d'afficher un séparateur de deux points, veuillez utiliser le Arduino UNO R4 - Affichage TM1637 à 4 chiffres à 7 segments..

À propos du 74HC595 – affichage à 4 chiffres à 7 segments

Un module d'affichage à 4 chiffres à sept segments basé sur le 74HC595 comprend généralement 4 LEDs à sept segments, 4 petites LEDs de point et un driver 74HC595 pour chaque chiffre. Il est parfait pour afficher des températures ou tout nombre avec des décimales.

Schéma de brochage

Le module 74HC595 pour un afficheur à 4 chiffres à 7 segments possède 5 broches :

  • Broche SCLK : Il s'agit d'une broche d'entrée d'horloge. Connectez-la à n'importe quelle broche numérique sur l'Arduino UNO R4.
  • Broche RCLK : Il s'agit d'une autre broche d'entrée d'horloge. Connectez-la à n'importe quelle broche numérique sur l'Arduino UNO R4.
  • Broche DIO : Il s'agit d'une broche d'entrée/sortie de données. Connectez-la à n'importe quelle broche numérique sur l'Arduino UNO R4.
  • Broche VCC : Cette broche fournit de l'alimentation au module. Connectez-la à une alimentation comprise entre 3,3 V et 5 V.
  • Broche GND : Il s'agit d'une broche de masse. Connectez-la à la masse.
Pinout du module 74HC595

Diagramme de câblage

Ce tableau montre comment connecter les broches de l'Arduino UNO R4 à un afficheur à 4 chiffres 7 segments contrôlé par un 74HC595.

Arduino UNO R4 74HC595 7-segment display
5V5V
7SCLK
6RCLK
5DIO

Si vous utilisez des broches différentes, modifiez les numéros des broches dans le code.

Schéma de câblage du module Arduino UNO R4 74HC595

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

Voir Comment alimenter l'Arduino UNO R4..

Installation de la bibliothèque

Pour configurer facilement la programmation d’un affichage à 4 chiffres à segments 7 avec le 74HC595, installez la bibliothèque DIYables_4Digit7Segment_74HC595 depuis DIYables.io. Voici les étapes pour installer la bibliothèque :

  • Cliquez sur l'icône Libraries sur le côté gauche de l'IDE Arduino.
  • Tapez “DIYables_4Digit7Segment_74HC595” dans la barre de recherche et recherchez la bibliothèque DIYables_4Digit7Segment_74HC595 de DIYables.io
  • Appuyez sur le bouton Install.
Bibliothèque Arduino UNO R4 74HC595 pour affichage à 7 segments à 4 chiffres

Vous pouvez aussi consulter cette bibliothèque sur GitHub

Comment programmer le 74HC595 pour un afficheur à 4 chiffres à 7 segments avec Arduino UNO R4

  • Inclure la bibliothèque
#include <DIYables_4Digit7Segment_74HC595.h>
  • Connectez l'Arduino UNO R4 au module d'affichage comme ceci : D7 vers SCLK, D6 vers RCLK et D5 vers DIO.
#define SCLK 7 // La broche de l'Arduino UNO R4 connectée à SCLK #define RCLK 6 // La broche de l'Arduino UNO R4 connectée à RCLK #define DIO 5 // La broche de l'Arduino UNO R4 connectée à DIO
  • Créez un élément d'affichage appelé DIYables_4Digit7Segment_74HC595.
DIYables_4Digit7Segment_74HC595 display = DIYables_4Digit7Segment_74HC595(CLK, DIO);
  • Vous pouvez afficher des nombres entiers avec des zéros en tête, y compris les nombres négatifs.
display.printInt(-13, false); // affiche un entier sans zéros en tête
  • Vous pouvez afficher des nombres avec des points décimaux, ajouter des zéros devant et inclure des nombres négatifs.
display.printFloat(-9.2, 1, false);
  • Vous pouvez également afficher chaque chiffre, point décimal ou caractère un par un à l'aide de fonctions de base.
// Affichage de la température 9.3°C display.clear(); display.setNumber(1, 9); // Afficher le chiffre '9' à la position 1 display.setDot(1); // Activer le point décimal à la position 1 display.setNumber(2, 3); // Afficher le chiffre '3' à la position 2 display.setChar(3, SegChars::DEGREE); // Afficher le symbole du degré à la position 3 display.setChar(4, SegChars::C); // Afficher le caractère 'C' à la position 4 display.show(); // Actualiser l'affichage pour afficher les caractères et les chiffres définis
  • Le module 74HC595 à 4 chiffres et 7 segments contrôle chaque segment et chaque LED en utilisant une méthode appelée multiplexage. Par conséquent, le code Arduino UNO R4 doit impérativement :
    • Utiliser la fonction display.show() dans la boucle principale.
    • Éviter d'utiliser la fonction delay() dans la boucle principale.

    Pour plus de détails, consultez la référence de la bibliothèque.

Arduino UNO R4 Code - Affichage d'un entier

#include <DIYables_4Digit7Segment_74HC595.h> // DIYables_4Digit7Segment_74HC595 library #define SCLK 7 // The Arduino UNO R4 pin connected to SCLK #define RCLK 6 // The Arduino UNO R4 pin connected to RCLK #define DIO 5 // The Arduino UNO R4 pin connected to DIO DIYables_4Digit7Segment_74HC595 display(SCLK, RCLK, DIO); void setup() { Serial.begin(9600); display.printInt(-13, false); // you can display a value from -999 to 9999 //display.printInt(-132, false); //display.printInt(9132, false); //display.printInt(132, false); //display.printInt(32, false); //display.printInt(2, false); //display.printInt(2, true); } void loop() { display.loop(); // MUST call the display.loop() function in loop() // DO SOMETHING HERE // NOTE: do NOT use the delay() function in loop because it affects to the multiplexing }

Étapes rapides

Suivez ces instructions étape par étape :

  • Si c'est la première fois que vous utilisez l'Arduino Uno R4 WiFi/Minima, reportez-vous au tutoriel sur Arduino UNO R4 - Installation du logiciel..
  • Connectez l'affichage à 7 segments à 4 chiffres 74HC595 à l'Arduino Uno R4 selon le schéma fourni.
  • Connectez la carte Arduino Uno R4 à votre ordinateur à l'aide d'un câble USB.
  • Lancez l'IDE Arduino sur votre ordinateur.
  • Sélectionnez la carte Arduino Uno R4 appropriée (par exemple, Arduino Uno R4 WiFi) et le port COM.
  • Copiez le code et ouvrez-le dans l'IDE Arduino.
  • Cliquez sur le bouton Upload dans l'IDE Arduino pour envoyer le code à l'Arduino Uno R4.
  • Observez les changements sur l'affichage à 7 segments.

Code Arduino UNO R4 - Affichage d'un nombre à virgule flottante

#include <DIYables_4Digit7Segment_74HC595.h> // DIYables_4Digit7Segment_74HC595 library #define SCLK 7 // The Arduino UNO R4 pin connected to SCLK #define RCLK 6 // The Arduino UNO R4 pin connected to RCLK #define DIO 5 // The Arduino UNO R4 pin connected to DIO DIYables_4Digit7Segment_74HC595 display(SCLK, RCLK, DIO); void setup() { Serial.begin(9600); display.printFloat(-9.2, 1, false); //display.printFloat(-92.4, 1, false); //display.printFloat(-9.24, 2, false); //display.printFloat(192.4, 1, false); //display.printFloat(19.24, 2, false); //display.printFloat(1.924, 3, false); } void loop() { display.loop(); // MUST call the display.loop() function in loop() // DO SOMETHING HERE // NOTE: do NOT use the delay() function in loop because it affects to the multiplexing }

Code Arduino UNO R4 - Affichage de la température

#include <DIYables_4Digit7Segment_74HC595.h> // DIYables_4Digit7Segment_74HC595 library #define SCLK 7 // The Arduino UNO R4 pin connected to SCLK #define RCLK 6 // The Arduino UNO R4 pin connected to RCLK #define DIO 5 // The Arduino UNO R4 pin connected to DIO DIYables_4Digit7Segment_74HC595 display(SCLK, RCLK, DIO); void setup() { Serial.begin(9600); // display 9.3°C by controlling digit by digit display.clear(); display.setNumber(1, 9); // set 9 at the 1st digit display.setDot(1); // set . at the 1st digit display.setNumber(2, 3); // set 3 at the 2nd digit display.setChar(3, SegChars::DEGREE); // set ° at the 3rd digit display.setChar(4, SegChars::C); // set C at the 3rd digit display.show(); // show on the display } void loop() { display.loop(); // MUST call the display.loop() function in loop() // DO SOMETHING HERE // NOTE: do NOT use the delay() function in loop because it affects to the multiplexing }

Vidéo

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