<style>[reveal]{opacity:1 !important;transform:none !important}</style>

Siebensegmentanzeige

Wie eine Siebensegmentanzeige aufgebaut ist, was gemeinsame Anode und Kathode bedeuten und wie du mehrere Ziffern im Multiplex ansteuerst.

8 Min. LesezeitSiebensegmentanzeige7-SegmentLED-Anzeigegemeinsame Anode

Die Uhrzeit am Backofen, die Temperatur am Lötkolben, der Zähler an der Zapfsäule, die Anzeige im Labornetzteil: Ziffern aus sieben Balken sind seit Jahrzehnten der einfachste Weg, eine Zahl hell und aus jedem Blickwinkel lesbar darzustellen. Eine Siebensegmentanzeige ist nichts anderes als sieben oder acht LEDs in einem gemeinsamen Gehäuse, die so angeordnet sind, dass sich jede Ziffer von 0 bis 9 bilden lässt. Wer eine einzelne LED ansteuern kann, kann auch eine Siebensegmentanzeige ansteuern – spannend wird es erst, wenn mehrere Ziffern mit wenigen Pins auskommen sollen.

Aufbau und Funktionsweise

Jedes Segment ist ein Lichtleiter aus Kunststoff, unter dem ein oder mehrere LED-Chips sitzen. Die Segmente heißen nach festem Schema a bis g, im Uhrzeigersinn beginnend oben, mit dem Querbalken g in der Mitte. Dazu kommt meist ein Dezimalpunkt (dp).

Siebensegmentziffer mit den Segmenten a oben, b rechts oben, c rechts unten, d unten, e links unten, f links oben, g in der Mitte und dem Dezimalpunkt dp
Die Segmente heißen a bis g, beginnend oben und im Uhrzeigersinn; g ist der Mittelbalken.

Damit nicht jedes Segment zwei eigene Anschlüsse braucht, sind alle LEDs auf einer Seite zusammengeschaltet:

  • gemeinsame Anode (CA): Alle Anoden liegen an einem Pin, der mit Plus verbunden wird. Ein Segment leuchtet, wenn seine Kathode nach Masse gezogen wird.
  • gemeinsame Kathode (CC): Alle Kathoden liegen zusammen an Masse; ein Segment leuchtet, wenn seine Anode Spannung bekommt.

Äußerlich sind beide Varianten nicht zu unterscheiden. Bei Kingbright etwa unterscheidet nur der zweite Buchstabe im Typ: SA56-11EWA hat gemeinsame Anode, SC56-11EWA gemeinsame Kathode – beide mit 14,2 mm (0,56 Zoll) Ziffernhöhe und identischem Gehäuse.

Innenschaltung einer Anzeige mit gemeinsamer Anode: acht LEDs mit verbundenen Anoden an Pin 3 und 8, Kathoden einzeln an a bis g und dp
Gemeinsame Anode: Alle Segment-LEDs hängen an einem Plusanschluss, jedes Segment hat seinen eigenen Kathodenanschluss.

Bei der verbreiteten einstelligen 0,56-Zoll-Anzeige mit zehn Pins ist der gemeinsame Anschluss doppelt vorhanden, an den beiden mittleren Pins 3 und 8. Die übrigen acht Pins führen zu den Segmenten. Ein Schaltzeichen im engeren Sinn gibt es nicht; in Schaltplänen steht meist ein Rechteck mit stilisierter Ziffer und den Pinnamen.

Kennwerte

Die elektrischen Werte gelten je Segment und entsprechen denen einer einzelnen LED. Am Beispiel der roten SA56-11EWA:

KennwertWert je Segment
Flussspannung bei 10 mA1,9 V typ., 2,3 V max.
Dauerstrom max.30 mA
Spitzenstrom (1/10 Tastverhältnis, 0,1 ms)160 mA
Verlustleistung75 mW
Sperrspannung5 V
Wellenlänge (dominant)617 nm

Große Anzeigen ab etwa 25 mm Ziffernhöhe enthalten je Segment oft mehrere LED-Chips in Reihe. Die Flussspannung steigt dann auf das Doppelte oder Vierfache – eine 57-mm-Anzeige lässt sich an 5 V oft gar nicht mehr betreiben. Prüf das im Datenblatt, bevor du die Versorgung festlegst.

Ziffern codieren

Welche Segmente für welche Ziffer leuchten, ist fest. Ordnest du die Segmente a bis g den Bits 0 bis 6 eines Bytes zu, ergibt sich für eine Anzeige mit gemeinsamer Kathode (1 = an) diese Tabelle. Bei gemeinsamer Anode ist jedes Bit invertiert.

ZifferSegmenteBitmuster (g…a)Hex
0a b c d e f01111110x3F
1b c00001100x06
2a b d e g10110110x5B
3a b c d g10011110x4F
4b c f g11001100x66
5a c d f g11011010x6D
6a c d e f g11111010x7D
7a b c00001110x07
8alle11111110x7F
9a b c d f g11011110x6F

Mit denselben Segmenten lassen sich auch die Hexadezimalziffern A, b, C, d, E und F darstellen (siehe Zahlensysteme). Für vollständige Buchstaben gibt es 14- und 16-Segment-Anzeigen.

Ansteuerung einer Ziffer

Eine einzelne Ziffer steuerst du statisch an: jedes Segment über einen eigenen Vorwiderstand an einen Ausgang. Der Widerstand gehört in die Segmentleitung, nicht in den gemeinsamen Anschluss – sonst leuchtet die „1“ mit zwei Segmenten viel heller als die „8“ mit sieben. Warum, steht ausführlich unter Vorwiderstand vor oder nach der LED?.

Den Widerstand für andere Werte bestimmst du mit dem LED-Vorwiderstand-Rechner. Statt acht Mikrocontroller-Pins kann auch ein BCD-Decoder wie der CD4511 die Segmente treiben: Er bekommt die Ziffer als 4-Bit-Zahl und schaltet die passenden Segmente.

Mehrere Ziffern im Multiplex

Vier Ziffern statisch anzusteuern, bräuchte 32 Ausgänge. Deshalb verbindet man bei mehrstelligen Anzeigen die gleichen Segmente aller Ziffern miteinander – a mit a, b mit b und so weiter –, und jede Ziffer behält nur ihren eigenen gemeinsamen Anschluss. Vierstellige Anzeigen sind innen schon so verschaltet und haben nur 12 Pins: 8 Segmente und 4 Ziffern.

Der Mikrocontroller schaltet nun in schneller Folge immer nur eine Ziffer ein und legt gleichzeitig das Segmentmuster für genau diese Ziffer an. Erfolgt der Wechsel schnell genug, sieht das Auge alle Ziffern gleichzeitig leuchten. Weil jede Ziffer aber nur einen Teil der Zeit an ist, muss der Strom während dieser Zeit entsprechend höher sein.

Zwischen dem Abschalten der einen und dem Einschalten der nächsten Ziffer solltest du alle Segmente kurz ausschalten. Sonst blitzt das Muster der vorigen Ziffer schwach an der nächsten Stelle auf („Ghosting“).

Bauformen und Treiber

Einstellige und vierstellige Siebensegmentanzeige sowie ein Modul mit Treiber-IC, das 12:34 zeigt
Einzelne Ziffer, vierstelliger Block mit Multiplex-Verschaltung und ein fertiges Modul mit Treiber.
  • Einzelziffern von 7 mm (0,28 Zoll) bis über 100 mm Höhe, bedrahtet oder als SMD.
  • Mehrstellige Blöcke mit zwei, drei oder vier Ziffern, oft mit Doppelpunkt für Uhren, innen bereits gemultiplext.
  • Module mit Treiber-IC: Der MAX7219 steuert bis zu acht Ziffern über SPI und stellt den Segmentstrom mit einem einzigen Widerstand ein, ganz ohne Vorwiderstände je Segment (siehe LED ohne Vorwiderstand). Der TM1637 auf vielen Uhrenmodulen braucht nur zwei Datenleitungen.

Für mehr als Ziffern – Text, Symbole, Grafik – sind LCD und OLED die Alternativen. Die Siebensegmentanzeige punktet mit Helligkeit, Robustheit und Lesbarkeit aus der Entfernung.

Auswahl und Praxistipps

Wähle Ziffernhöhe nach Leseabstand (grob: 1 cm Ziffernhöhe für jeweils einige Meter), Farbe nach Umgebung und die Variante nach deiner Ansteuerung: gemeinsame Anode passt gut zu PNP- oder P-Kanal-Schaltern an der Ziffer und Segmenten, die der Controller nach Masse zieht; gemeinsame Kathode zu NPN-Schaltern und Segmenten, die der Controller treibt.

Häufige Fehler:

  • CA und CC verwechselt: Nichts leuchtet. Mit 5 V über 1 kΩ an Pin 3 und Masse an einem Segmentpin findest du es schnell heraus.
  • Gemeinsamer Vorwiderstand: Die Helligkeit hängt von der Ziffer ab, die „8“ ist sichtbar dunkler als die „1“.
  • Ziffernstrom vergessen: Im Multiplex fließt der Strom aller leuchtenden Segmente durch einen Pin – ohne Transistor wird der Controller überlastet.
  • Zu langsames Multiplex: Unter etwa 100 Hz Bildwiederholrate flimmert die Anzeige, besonders aus dem Augenwinkel.
  • Pinbelegung geraten: Sie ist bei einstelligen Anzeigen weitgehend üblich, bei mehrstelligen aber herstellerabhängig.

Selbsttest

Welche Segmente leuchten bei der Ziffer 7?

a, b und c.

Was ist der Unterschied zwischen gemeinsamer Anode und gemeinsamer Kathode?

Bei gemeinsamer Anode sind alle Anoden verbunden und liegen an Plus, ein Segment wird über seine Kathode nach Masse eingeschaltet; bei gemeinsamer Kathode umgekehrt.

Eine sechsstellige Anzeige wird im Multiplex betrieben. Welcher Pulsstrom ist für einen mittleren Segmentstrom von 3 mA nötig?

6 · 3 mA = 18 mA.

Wie viel Strom fließt dabei durch den gemeinsamen Anschluss einer Ziffer, die „8.“ zeigt?

8 · 18 mA = 144 mA – ein Fall für einen Transistor.

Wie lautet der Hex-Code der Ziffer 4 für gemeinsame Anode, wenn er für gemeinsame Kathode 0x66 ist?

Alle sieben Bits invertiert: 0x19 (bei acht Bit mit ausgeschaltetem Dezimalpunkt 0x99).