In dem folgenden Versuch konstruieren wir einen einfachen Küchentimer mit Stopp-Uhr-Funktion. Auf dem Timer kann man
mit zwei Tasten Minuten und Sekunden einstellen. Mit einer dritten Taste kann der Countdown gestartet oder gestoppt werden. Sobald die
eingestellte Zeit abgelaufen ist, soll eine Leuchtdiode angehen und diese Tatsache visuell signalisieren. Die Koordination aller
Komponenten dieser kleinen Schaltung übernimmt ein Python-Programm, das auf dem Raspberry Pi läuft. Der aktuelle Stand des Zählers
wird auf einem 4-Digit-7-Segment-Display (vier einzelne 7-Segment-Anzeigen in einem Gehäuse) angezeigt. Das Anzeige-Modul, um das
es hier geht, beinhaltet außer der 7-Segment-Anzeige auch den Treiberchip TM1637 mit Umgebungselektronik.
4Digit-7Segmentanzeige mit TM1637 (Frontansicht)
TM1637
Ohne weitere Unterstützung wären zahlreiche Verbindungen notwendig, um die 28 LEDs des Anzeige-Moduls anzusteuern.
Dank des Treibers TM1637 wird die benötigte Anzahl der Verbindungen auf lediglich zwei reduziert. Die zwei Leitungen kann man an
beliebige GPIOs des Raspberry Pi anschließen. Zwei weitere Anschlüsse des Anzeige-Moduls betreffen die Spannungsversorgung. Der
Treiberchip, der mit Raspberry Pi kommuniziert, übernimmt im Alleingang die Steuerung aller Segmente der gesamten Anzeige. Das
Anzeige-Modul kann mit einer Spannung von 3,3 V bis 5 V eingespeist werden. Der Stromverbrauch pendelt zwischen 30 mA bis 80 mA.
Seine Betriebstemperatur erstreckt sich von -10 °C bis 80 °C. Die Anzeige leuchtet rot.
Die Verschaltung aller Komponente erfolgt nach folgendem Plan.
Schaltplan
Die Testschaltung auf einem Steckbrett könnte dann so aussehen:
Stoppuhr-Testschaltung
Um das Anzeige-Modul anzusprechen, wird eine weitere Bibliothek in das Python-Programm eingebunden. Sie übernimmt
vollständig die Kommunikation mit dem Treiber TM1637 und stellt uns einige Befehle für die Steuerung der Anzeige zur Verfügung.
Es handelt sich um die Bibliothek "raspberrypi-python-tm1637“. Die Dokumentation für diese Erweiterung findet man im Internet
unter https://github.com/depklyon/raspberrypi-tm1637 .
Sie kann in wenigen Schritten heruntergeladen und installiert werden. Hierzu wird das LXTerminal verwendet:
# Falls noch nicht installiert $ sudo apt install git –y
# falls noch nicht installiert $ sudo pip3 install wiringpi
# Bibliothek herunterladen $ git clone https://github.com/depklyon/raspberrypi-python-tm1637.git
# Verzeichnis wechseln $ cd raspberry-python-tm1637
# installieren $ sudo python3 setup.py install
In dem Python-Programm werden zwei Tasten auf eventuelle Eingaben untersucht. Die erste Taste (S1) ist für die Minuten,
die zweite (S2) für die Sekunden zuständig. Wird eine dieser Tasten betätigt, wird der entsprechende Zähler um 1 erhöht. Mit der
dritten Taste (S3) wird das Herunterzählen (Countdown) eingeleitet. Das Herunterzählen erfolgt im Sekunden-Takt. Erreicht der Zähler
den Wert 0, wird der Vorgang gestoppt und die Leuchtdiode, um diese Tatsache zu signalisieren, leuchtet auf. Das Programm kann bei
Bedarf um weitere nützliche Funktionen wie Dekrementieren, Reset oder Anhalten, auf die hier verzichtet wird, erweitert
werden.
Das Programm
# ------------------------------------------------------------
# Stoppuhr
# 4Digit-7Segmenanzeige mit TM1637
# Raspberry Pi 3B, Python 3
# ------------------------------------------------------------