Affichage 4 segments arduino
L’affichage est un module très important dans nos projets. Et nous disposons de nombreux types d’écrans, des écrans LED traditionnels à 7 segments aux micro-écrans OLED, en passant par les écrans LCD 16×2 et les écrans graphiques. Chacun a ses avantages et ses inconvénients, et celui que nous utilisons dépend entièrement du projet sur lequel nous travaillons.
La puce 74HC595 est un registre à décalage qui nous permettra de réduire le nombre de broches, de 8 à 3 (et peut-être 4), pour contrôler les 8 segments d’un chiffre LCD à 7 segments. Nous allons avoir besoin du protocole de communication série SPI à 3 lignes (bien que nous n’en utilisions que 2) qui est présent dans pratiquement tous les microcontrôleurs du marché.
Comme je l’ai mentionné, les chiffres seront contrôlés par des transistors discrets MOSFET 2N7000, bien qu’il soit également possible d’utiliser des transistors TBJ (transistors à jonction bipolaire, tels que le BC547, le BC337, etc). Et on pourrait aussi utiliser des transistors encapsulés (comme les ULN2003), mais 4 transistors discrets est une meilleure option pour un affichage à 4 chiffres, comme celui que je vais vous présenter.
Arduino multiplexage affichage 7-segments
#include <TM1637Display.h>L’étape suivante consiste à spécifier les broches de connexion. L’instruction #define est utilisée pour nommer une valeur constante. Le compilateur remplacera toute référence à cette constante par la valeur définie lors de la compilation du programme. Ainsi, partout où vous mentionnez CLK, le compilateur le remplacera par la valeur 2 lors de la compilation du programme.// Définissez les broches de connexion :
#include <TM1637.h>int clk = 3;int dio = 4;TM1637 tm (clk,dio) ; void setup() { // mettez votre code de configuration ici, pour l’exécuter une fois : tm.init() ; tm. set(3) ; } void loop() { // mettez votre code principal ici, pour l’exécuter de manière répétée : tm.display(0,1) ; tm.display(1,2) ; tm.point(1) ; tm.display(2,10) ; tm.display(3,11) ; }
void loop(){}VideoTM1637 – Paramètres de luminositéVoir cette vidéo sur YouTube.Exemple 3 – HeureEtant donné que cet écran n’a “que” 4 chiffres, dans l’exemple suivant je vais donner l’heure au format HH:MM. Le colon clignote toutes les 0,5 secondes.
Afficheur proteus à 7 segments et 4 chiffres
La carte Grove- Display 4 digits est un module qui permet de contrôler un affichage à 4 digits de 7 segments chacun, avec seulement 2 broches numériques d’un microcontrôleur ou d’une carte Arduino. Cette carte utilise le circuit intégré TM1637 pour contrôler ces 4 chiffres. La couleur de chaque segment de ces chiffres est rouge et possède 8 niveaux de luminosité réglables à partir de la programmation.
Vous pouvez utiliser ce produit pour mettre en œuvre un système de chronométrage, un chronomètre, un contrôle des entrées numériques, des compteurs, etc. La connexion Grove incluse sur cette carte permet une connexion rapide et une facilité d’utilisation. Il est compatible avec des tensions de 3,3V à 5,5V.
La carte Grove- Display 4 digits est un module qui permet de contrôler un affichage à 4 chiffres de 7 segments chacun, avec seulement 2 broches numériques d’un microcontrôleur ou d’une carte Arduino. Cette carte utilise le circuit intégré TM1637 pour contrôler ces 4 chiffres. La couleur de chaque segment de ces chiffres est rouge et possède 8 niveaux de luminosité réglables à partir de la programmation.
Affichage 7-segment 4 chiffres anode commune
Tout d’abord, l’Arduino UNO n’a pas autant de broches (oui, le Mega en a, mais rappelez-vous, l’élégance, beaucoup d’élégance), donc si vous faisiez ces écrans, comment éviteriez-vous d’utiliser 34 broches ? Réfléchissez-y, quelle solution donneriez-vous au problème ?
Eh bien, une solution facile (et bon marché, ce qui plaît aux fabricants) consiste à garder 8 broches pour éclairer les 7 segments plus le point, et à mettre 4 autres broches pour indiquer lequel des chiffres correspond à l’information que vous mettez dans a, b, c, d, e, f, g, h.
La chose va dans ce sens, mais pour cela il faudrait mettre des mémoires et des loquets comme dans le registre à décalage et quelqu’un a dit : Non, non, encore moins cher. Et un ingénieur créatif a dit : “Eh bien, si nous faisons en sorte que ces 4 broches pour indiquer la position aillent à la masse en passant par un transistor chacune, nous pouvons faire en sorte qu’une seule d’entre elles s’allume à la fois”. Et si on pédale assez vite, en passant de l’un à l’autre, ils ne le remarquent même pas. Inutile de dire que l’ingénieur créatif est devenu chef de projet.
Et c’est tout. Nous utilisons toujours 8 broches pour allumer les segments, mais il n’y en a qu’un seul d’actif à la fois. Et en faisant un cycle rapide, nous allumons un à la fois rapidement et passons au suivant, puis au suivant et le problème est résolu.