Instructions

27
So funktioniert es
Auch in diesem Programm werden die GPIO-Pins für die sieben Segmente über ein dictionary initialisiert.
zahl=[
"abcdef", #0
"bc", #1
"abdeg", #2
"abcdg", #3
"bcfg", #4
"acdfg", #5
"acdefg", #6
"abc", #7
"abcdefg", #8
"abcdfg", #9
]
Die Liste zahl legt die einzuschaltenden Segmente für die einzelnen Ziffern von 0 bis 9 fest. Es handelt
sich um eine normale Liste, deren Elemente nur der Übersichtlichkeit halber untereinander geschrieben
sind. Die Ziffern selbst sind kein Bestandteil der Liste. Sie werden - wie alles, was hinter einem # in einer
Zeile steht - von Python als Kommentar betrachtet und bei der Programmausführung ignoriert.
Das Programm läuft wieder in einer Endlosschleife, die vom Benutzer mit der Tastenkombination
[Strg]+[C] jederzeit beendet werden kann.
for i in range(10):
Eine Schleife zählt fortlaufend von 0 bis 9 durch, um nacheinander die Ziffern anzuzeigen.
for s in zahl[i]:
GPIO.output(seg[s], 1)
Bei jedem Durchlauf der äußeren Schleife arbeitet eine innere Schleife die in der Liste zahl für diese
Ziffer eingetragene Zeichenkette ab, setzt die entsprechenden Segmente der Anzeige auf 1 und schaltet
sie damit ein.
time.sleep(0.5)
for s in "abcdefg":
GPIO.output(seg[s], 0)
Nachdem die Schleife für eine Ziffer durchgelaufen ist, bleibt diese 0,5 Sekunden lang angezeigt, danach
werden alle sieben Segmente unabhängig von ihrem aktuellen Status auf 0 gesetzt und damit ausge-
schaltet. Danach startet die Darstellung der nächsten Zahl.
except KeyboardInterrupt:
GPIO.cleanup()
Drückt der Benutzer die Tastenkombination [Strg]+[C], wird wie in vorherigen Experimenten die Endlos-
schleife beendet, und die GPIO-Ports werden geschlossen.