5.2 - Zahlenanzeige

LED-Segmentanzeigen sind überall im Alltag zu finden. Zum Beispiel kann sie auf einer Klimaanlage zur Temperaturanzeige verwendet werden oder an einer Verkehrsanzeige, um einen Timer anzuzeigen.

Die LED-Segmentanzeige besteht im Wesentlichen aus einem Gerät, das mit 8 LEDs verpackt ist, von denen 7 streifenförmige LEDs eine „8“-Form bilden und eine etwas kleinere gepunktete LED als Dezimalpunkt dient. Diese LEDs sind als a, b, c, d, e, f, g und dp gekennzeichnet. Sie haben eigene Anodenpins und teilen sich Kathoden. Ihre Pin-Positionen sind im untenstehenden Bild dargestellt.

img_7seg_cathode

Das bedeutet, dass sie von 8 digitalen Signalen gleichzeitig gesteuert werden muss, um vollständig zu funktionieren, und der 74HC595 kann dies leisten.

Benötigte Komponenten

Für dieses Projekt benötigen wir die folgenden Komponenten.

Es ist definitiv praktisch, ein ganzes Kit zu kaufen, hier ist der Link:

Name

ARTIKEL IN DIESEM KIT

KAUF-LINK

Kepler Kit

450+

Kepler Kit

Sie können sie auch einzeln über die untenstehenden Links kaufen.

SN

KOMPONENTENBESCHREIBUNG

MENGE

KAUF-LINK

1

Raspberry Pi Pico W

1

BUY

2

Micro USB Kabel

1

3

Steckbrett

1

BUY

4

Jumperkabel

Mehrere

BUY

5

Widerstand

1(220Ω)

BUY

6

7-Segment-Anzeige

1

BUY

7

74HC595

1

BUY

Schaltplan

sch_74hc_7seg

Verdrahtung

wiring_74hc_7seg

Verdrahtung

74HC595

LED Segmentanzeige

Q0

a

Q1

b

Q2

c

Q3

d

Q4

e

Q5

f

Q6

g

Q7

dp

Code

Bemerkung

  • Sie können die Datei 5.2_number_display.ino im Pfad kepler-kit-main/arduino/5.2_number_display öffnen.

  • Oder kopieren Sie diesen Code in die Arduino IDE.

  • Vergessen Sie nicht, das Board (Raspberry Pi Pico) und den richtigen Port auszuwählen, bevor Sie auf die Schaltfläche Upload klicken.

Wenn das Programm läuft, können Sie sehen, dass die LED-Segmentanzeige die Zahlen 0~9 nacheinander anzeigt.

Wie funktioniert es?

shiftOut() lässt den 74HC595 8 digitale Signale ausgeben. Es gibt das letzte Bit der Binärzahl an Q0 aus und den Ausgang des ersten Bits an Q7. Das bedeutet, dass beim Schreiben der Binärzahl „00000001“ Q0 ein hohes Signal ausgibt und Q1~Q7 ein niedriges Signal.

Nehmen wir an, das 7-Segment-Display zeigt die Zahl „1“ an, wir müssen ein hohes Signal für b, c schreiben und ein niedriges Signal für a, d, e, f, g und dg. Das heißt, die Binärzahl „00000110“ muss geschrieben werden. Aus Gründen der Lesbarkeit verwenden wir die Hexadezimalnotation als „0x06“.

Ebenso können wir das LED-Segmentdisplay auf die gleiche Weise zur Anzeige anderer Zahlen verwenden. Die folgende Tabelle zeigt die entsprechenden Codes für diese Zahlen.

Glyphen-Code

Zahlen

Binärcode

Hex-Code

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

Fügen Sie diese Codes in die Funktion shiftOut() ein, um die jeweiligen Zahlen auf dem LED-Segmentdisplay darzustellen.