Compteur numérique avec sept segments et un bouton-poussoir utilisant Esptop 10 et Arduino IDE

Compteur numérique avec sept segments et un bouton-poussoir utilisant Esptop 10 et Arduino IDE
ESP32 est un microcontrôleur compact à conservation de puissance qui a un certain nombre d'épingles GPIO nous permettant d'interfacer avec de nombreux capteurs. ESP32 peut interagir avec une grande variété d'appareils électroniques, y compris sept écrans de segment. En utilisant le microcontrôleur ESP32, il est possible de contrôler facilement l'état de chaque segment dans un écran à sept segments, permettant la création d'écrans numériques personnalisés et d'autres projets interactifs.

Cet article couvre le contenu suivant:

  • 1: Introduction à Seven Segment
  • 2: Pinout à sept segments
  • 3: Types de sept segments
  • 4: Comment vérifier un segment à sept est une anode commune ou une cathode commune
  • 5: Interfaçage sept segment avec ESP32 et bouton-poussoir
  • 5.1: schéma
  • 5.2: matériel
  • 5.3: Installation de la bibliothèque requise
  • 6: Concevoir un compteur de sept segments 0 à 9 à l'aide de ESP32 et du bouton-poussoir
  • 6.1: code
  • 6.2: sortie

1: Introduction à Seven Segment

Un segment à sept peut afficher des informations numériques à l'aide d'un programme de microcontrôleur. Il se compose de sept segments individuels, chacun pouvant être illuminé ou éteint indépendamment pour créer divers caractères numériques.

Un affichage de sept segments fonctionne en illuminant différentes combinaisons de ses sept segments pour afficher des caractères numériques. Chaque segment est contrôlé par une broche individuelle, qui peut être activée ou désactivée pour créer le caractère numérique souhaité. Lorsque les segments sont éclairés dans la bonne combinaison, le caractère numérique est visible pour le spectateur.

Lorsque vous utilisez un microcontrôleur ESP32 pour contrôler un écran à sept segments, l'ESP32 envoie des signaux aux broches spécifiques de l'affichage à sept segments, lui indiquant quels segments s'activer ou désactiver afin d'afficher un caractère numérique spécifique.

2: Pinout à sept segments

L'affichage à sept segments a généralement dix broches, avec une broche pour chaque segment, une pour la décimale et deux broches communes. Voici un tableau de l'épinglage typique:

Code PIN Nom de broche Description
1 b Pin LED supérieur à droite
2 un Pin LED la plus haut
3 VCC / GND GND / VCC dépend de la configuration
4 F Pin LED en haut à gauche
5 g Broche à LED du milieu
6 DP Broche
7 c Pin LED en bas à droite
8 VCC / GND GND / VCC dépend de la configuration
9 d Broche LED inférieure
dix e Pin LED en bas à gauche

Chaque segment est étiqueté comme a B c d e F et g. La broche commune est généralement utilisée pour contrôler tous les segments à la fois. La broche commune est soit active faible ou active élevée en fonction de l'écran.

3: sept types de segments

Sept segment peut être classé en 2 types:

  • Cathode commune
  • Anode commune.

1: dans un cathode commune Tous les bornes de segment LED négatives sont connectées.

2: dans un anode commune Sept segment tous les terminaux de segment LED positifs sont connectés.

4: Comment vérifier un segment à sept est une anode commune ou une cathode commune

Pour vérifier le type de sept segments, nous avons juste besoin d'un outil simple - Multimètre. Suivez les étapes pour vérifier le type de sept segments Affichage:

  1. Tenez fermement l'affichage à sept segments et identifiez broche 1 Utilisation du brochage expliqué ci-dessus.
  2. Prendre un multimètre. Assumer une sonde rouge pour positif (+) et sonde noire d'un multimètre pour négatif (-).
  3. Définissez le multimètre sur le test de continuité.
  4. Après cette vérification, le travail du compteur peut être vérifié en touchant à la fois des sondes positives et négatives. Un son bip sera produit si le compteur fonctionne correctement. Sinon, remplacez les batteries de votre multimètre par une nouvelle.
  5. Mettez la sonde noire sur la broche 3 ou 8 du multimètre. Ces deux broches sont communes et connectées en interne. Sélectionnez n'importe quelle broche.
  6. Maintenant, mettez la sonde rouge ou positive du multimètre sur d'autres broches de sept segments comme 1 ou 5.
  7. Après avoir touché la sonde rouge si un segment brille, le segment sept est un cathode commune.
  8. Échangez les fils multimètres si aucun segment ne brille.
  9. Connectez maintenant le fil rouge à la broche 3 ou 8.
  10. Après cela, a mis un plomb noir ou négatif sur les épingles restantes de l'affichage. Maintenant, si l'un des segments de l'écran brille, les sept segments sont anode commune. Comme dans la com anode, toutes les broches positives de segments sont courantes, et les restes sont joints à l'offre négative.
  11. Répétez les étapes pour vérifier tous les autres segments d'affichage un par un.
  12. Si l'un des segments ne brille pas, alors ce sera défectueux.

Voici une image de référence pour un test de sept segments en utilisant un multimètre. Nous pouvons voir que la sonde rouge est à la broche 8 et le noir est à la broche de segment, donc nous utilisons Anode commune Sept segment:

5: Interfaçage sept segment avec ESP32 et bouton-poussoir

Pour interfacer un écran à sept segments avec un ESP32, vous aurez besoin des matériaux suivants:

  • Un microcontrôleur ESP32
  • Un écran à sept segments
  • Bouton-poussoir
  • Une planche à pain
  • Fils de cavalier

Interfaces ESP32 avec sept affichages de segments en plusieurs étapes simples.

1: Tout d'abord, connectez l'écran à sept segments à la planche à pain.

2: Ensuite, connectez l'ESP32 à un écran à sept segments à l'aide de fils. L'ESP32 sera utilisé pour envoyer des signaux à l'affichage à sept segments, lui indiquant quels segments s'allumer ou désactiver.

3: Maintenant, écrivez un code Arduino pour ESP32 dans IDE. Le programme devra envoyer des signaux aux broches spécifiques de l'affichage à sept segments, lui indiquant quels segments s'activer ou désactiver afin d'afficher un caractère numérique spécifique.

4: L'IDE Arduino fournit une bibliothèque à l'aide de laquelle nous pouvons facilement contrôler l'état de chaque segment avec des commandes simples.

5: Une fois le programme écrit et téléchargé sur l'ESP32, l'affichage à sept segments devrait commencer à afficher les caractères numériques selon le programme.

5.1: schéma

Pour concevoir un compteur de bouton-poussoir en utilisant sept segments d'abord, nous devons concevoir le circuit ci-dessous et connecter sept segments avec le bouton-poussoir et ESP32. L'utilisation du schéma de référence ci-dessous relie votre carte ESP32 avec un affichage à sept segments.

Voici la table Pinout pour la connexion ESP32 avec un seul écran à sept segments. Un bouton-poussoir est également connecté à D23:

Code PIN Nom de broche Broche ESP32
1 b D2
2 un D15
3 Com GND / VCC dépend de la configuration - Cathode / anode commune
4 F D19
5 g D21
6 DP Broche
7 c D4
8 Com GND / VCC dépend de la configuration - Cathode / anode commune
9 d D5
dix e D18

5.2: matériel

L'image ci-dessous montre le matériel de ESP32 Connexion avec le bouton-poussoir et sept segments:

5.3: Installation de la bibliothèque requise

Après avoir connecté sept segments, nous devons installer une bibliothèque dans le IDE Arduino. En utilisant cette bibliothèque, nous pouvons facilement programmer ESP32 avec sept segments.

Aller à la recherche de gestionnaire de bibliothèque pour Sevseg Bibliothèque et l'installez-la dans Arduino IDE.

6: Concevoir un comptoir à sept segments 0 à 9 en utilisant ESP32 et Pushbutton

Pour concevoir un compteur en temps réel de 0 à 9 en utilisant ESP32, un bouton-poussoir est nécessaire. Pushbutton enverra un signal à la broche numérique d'ESP32 qui affichera un chiffre sur sept segments. Chaque fois que le bouton est appuyé sur un chiffre est incrémenté sur sept segments.

6.1: code

Ouvrir IDE et connecter ESP32. Après cela, téléchargez le code de sept segments donné sur ESP32:

#include "Sevseg.H "/ * Inclure à sept segments bibliothèque * /
Sevseg Sevseg; / * Variable à sept segments * /
int state1; / * Variable pour stocker l'état du bouton-poussoir * /
int count = 0; / * Variable qui stockera la valeur de comptoir * /
#define Button1 23 / * broche ESP32 pour bouton-poussoir * /
void setup()
pinMode (Button1, Input_pullup); / * Affectation du bouton en entrée * /
octet Sevensegments = 1; / * Nombre de sept segments que nous utilisons * /
octet CommonPins [] = ; / * Définir les broches communes * /
BYTE LEDSEGLINGPINS [] = 15, 2, 4, 5, 18, 19, 21; / * Esp32 Pins numériques définis pour sept segments Pin a à g * /
bool résistantsonsegments = true;
sevseg.Begin (Common_anode, Sevensegments, CommonPins, LEDSegmentPins, résistorsonsegments); / * Configuration du segment à sept * /
sevseg.SetBrightness (80); / * Luminosité de sept segments * /

VOID LOOP ()
State1 = DigitalRead (Button1); / * Lire l'état du bouton-poussoir * /
if (state1 == bas) / * État bas lorsque le bouton pushup est enfoncé * /
Count ++; / * Augmenter la valeur d'affichage de 1 * /
sevseg.setNumber (count); / * Afficher la valeur de comptage * /
sevseg.RefreshDisplay (); / * actualiser 7 segments * /
Delay (200);

if (count == 10)

count = 0;

sevseg.setNumber (count); / * Afficher la valeur de nombre * /
sevseg.RefreshDisplay (); / * Refresh 7-Segment * /

Code commencé par appeler le Sevseg bibliothèque. Ici, nous avons créé deux variables État1 et compter. Ces deux variables stockeront respectivement l'état actuel du bouton-poussoir et de la valeur de sept segments.

Après cela, nous avons défini le nombre de segments, nous utilisons avec ESP32. Les broches de segment LED sont définies pour les cartes ESP32. Modifiez la broche en fonction du type d'ESP32 que vous utilisez.

Toutes les épingles numériques ESP32 peuvent être utilisées.

Ensuite, comme nous utilisons le Anode commune type, nous l'avons donc défini à l'intérieur du code.

En cas de Cathode commune Remplacez-le par le code ci-dessous.

Enfin, un si une condition est utilisée qui vérifiera l'état actuel du bouton-poussoir et chaque fois que nous appuyons sur le bouton, une valeur est incrémentée de 1. Cela continuera jusqu'à ce que le compter La valeur variable devient 10. Après cela, il sera à nouveau initialisé à partir de 0.

6.2: sortie

La sortie montre les chiffres imprimés de 0 à 9.

Conclusion

En conclusion, en utilisant ESP32 avec bouton-poussoir et code Arduino, nous pouvons facilement contrôler l'état de chaque segment dans un affichage à sept segments, permettant la création d'un compteur en temps réel personnalisé pour réaliser des projets interactifs à l'aide du bouton-poussoir.