Note
Bonjour, bienvenue dans la communauté des passionnés de SunFounder Raspberry Pi, Arduino et ESP32 sur Facebook ! Plongez plus profondément dans le monde des Raspberry Pi, Arduino et ESP32 avec d’autres passionnés.
Pourquoi nous rejoindre ?
Support d’experts : Résolvez les problèmes après-vente et les défis techniques avec l’aide de notre communauté et de notre équipe.
Apprendre & Partager : Échangez des astuces et des tutoriels pour améliorer vos compétences.
Avant-premières exclusives : Accédez en avant-première aux annonces de nouveaux produits et aux aperçus exclusifs.
Réductions spéciales : Profitez de réductions exclusives sur nos derniers produits.
Promotions festives et concours : Participez à des concours et promotions spéciales durant les fêtes.
👉 Prêt à explorer et créer avec nous ? Cliquez sur [ici] et rejoignez-nous dès aujourd’hui !
5.2 Affichage de Nombres
Les affichages 7 segments sont présents partout dans la vie quotidienne. Par exemple, sur un climatiseur, il peut afficher la température ; sur un panneau de signalisation, il peut indiquer un décompte.
L’affichage 7 segments est essentiellement un dispositif constitué de 8 LED, dont 7 LED en forme de bande forment un « 8 », et une petite LED en pointillé sert de point décimal. Ces LED sont marquées a, b, c, d, e, f, g et dp. Elles ont leurs propres broches d’anode et partagent des cathodes communes. Leurs positions sont illustrées dans l’image ci-dessous.
Cela signifie qu’il doit être contrôlé par 8 signaux numériques simultanément pour fonctionner pleinement, et le 74HC595 peut le faire.
Composants Requis
Pour ce projet, nous avons besoin des composants suivants :
Il est plus pratique d’acheter un kit complet, voici le lien :
Nom |
ARTICLES DANS CE KIT |
LIEN |
|---|---|---|
Kepler Kit |
450+ |
Vous pouvez également les acheter séparément avec les liens ci-dessous :
SN |
COMPOSANT |
QUANTITÉ |
LIEN |
|---|---|---|---|
1 |
1 |
||
2 |
Câble Micro USB |
1 |
|
3 |
1 |
||
4 |
Plusieurs |
||
5 |
1 (220Ω) |
||
6 |
1 |
||
7 |
1 |
Schéma
Le principe de câblage est essentiellement le même que pour 5.1 Microcircuit - 74HC595, la seule différence étant que Q0-Q7 sont connectés aux broches a ~ g de l’affichage 7 segments.
LED Segment Display |
|
|---|---|
Q0 |
a |
Q1 |
b |
Q2 |
c |
Q3 |
d |
Q4 |
e |
Q5 |
f |
Q6 |
g |
Q7 |
dp |
Câblage
Code
Note
Ouvrez le fichier
5.2_number_display.pysous le cheminkepler-kit-main/micropythonou copiez ce code dans Thonny, puis cliquez sur « Exécuter le script actuel » ou appuyez simplement sur F5 pour l’exécuter.N’oubliez pas de sélectionner l’interpréteur « MicroPython (Raspberry Pi Pico) » en bas à droite.
Pour des tutoriels détaillés, veuillez vous référer à Ouvrir et Exécuter du Code Directement.
import machine
import time
SEGCODE = [0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f]
sdi = machine.Pin(0,machine.Pin.OUT)
rclk = machine.Pin(1,machine.Pin.OUT)
srclk = machine.Pin(2,machine.Pin.OUT)
def hc595_shift(dat):
rclk.low()
time.sleep_ms(5)
for bit in range(7, -1, -1):
srclk.low()
time.sleep_ms(5)
value = 1 & (dat >> bit)
sdi.value(value)
time.sleep_ms(5)
srclk.high()
time.sleep_ms(5)
time.sleep_ms(5)
rclk.high()
time.sleep_ms(5)
while True:
for num in range(10):
hc595_shift(SEGCODE[num])
time.sleep_ms(500)
Lorsque le programme est en cours d’exécution, vous verrez l’afficheur LED Segment afficher les chiffres de 0 à 9 en séquence.
Comment ça fonctionne ?
hc595_shift() fait en sorte que le 74HC595 émette 8 signaux numériques.
Il envoie le dernier bit du nombre binaire à Q0, et le premier bit à Q7. En d’autres termes, écrire le nombre binaire « 00000001 » fera que Q0 émette un niveau haut et Q1~Q7 un niveau bas.
Supposons que l’affichage 7 segments affiche le chiffre « 1 », il faut envoyer un niveau haut aux broches b, c, et un niveau bas aux broches a, d, e, f, g et dp.
C’est-à-dire que le nombre binaire « 00000110 » doit être écrit. Pour plus de lisibilité, nous utiliserons la notation hexadécimale « 0x06 ».
De même, nous pouvons faire en sorte que l’afficheur LED Segment affiche d’autres chiffres de la même manière. Le tableau suivant montre les codes correspondants à ces chiffres.
Chiffres |
Code Binaire |
Code Hexadécimal |
|---|---|---|
0 |
00111111 |
0x3f |
1 |
00000110 |
0x06 |
2 |
01011011 |
0x5b |
3 |
01001111 |
0x4f |
4 |
01100110 |
0x66 |
5 |
01101101 |
0x6d |
6 |
01111101 |
0x7d |
7 |
00000111 |
0x07 |
8 |
01111111 |
0x7f |
9 |
01101111 |
0x6f |
Écrivez ces codes dans hc595_shift() pour faire en sorte que l’afficheur LED Segment affiche les chiffres correspondants.



