Instructions
14
Starten Sie das Programm mit dem
Symbol Ausführen.
So funktioniert es
Dass das Programm funktioniert, lässt
sich einfach ausprobieren. Jetzt stellen
sich natürlich einige Fragen: Was pas-
siert im Hintergrund? Was bedeuten
die einzelnen Programmzeilen?
Dieses erste Projekt zeigt die grundle-
genden Elemente von Python und der
RPi.GPIO-Bibiothek.
#!/usr/bin/python
Python-Programme, die über die Kom-
mandozeile gestartet werden, müssen
am Anfang immer obige Zeile enthal-
ten. Bei Programmen, die nur über die
Python-Shell gestartet werden, ist das
nicht nötig. Aus Gründen der Kom-
patibilität sollten Sie sich aber ange-
wöhnen, diese Zeile am Anfang jedes
Python-Programms einzutragen.
import RPi.GPIO as GPIO
Die Bibliothek RPi.GPIO muss in jedes Python-Programm importiert werden, in dem sie genutzt werden
soll. Durch diese Schreibweise können alle Funktionen der Bibliothek über das Präfix GPIO angesprochen
werden.
import time
Die häufig verwendete Python-Bibliothek time hat nichts mit GPIO-Programmierung zu tun. Sie enthält
Funktionen zur Zeit- und Datumsberechnung, unter anderem auch eine Funktion time.sleep(), mit der
sich auf einfache Weise Wartezeiten in einem Programm realisieren lassen.
GPIO.setmode(GPIO.BCM)
Am Anfang jedes Programms muss definiert werden, wie die GPIO-Ports bezeichnet sind. Üblicherweise
verwendet man die Standardnummerierung BCM.
Nummerierung der GPIO-Pins
Die Bibliothek RPi.GPIO unterstützt zwei verschiedene Methoden zur Bezeichnung der Pins. Im Modus
BCM werden die bekannten GPIO-Portnummern genutzt, die auch auf Kommandozeilenebene oder in
Scratch verwendet werden. Im alternativen, weitgehend ungebräuchlichen Modus BOARD entsprechen
die Bezeichnungen den Pin-Nummern von 1 bis 40 auf der Raspberry-Pi-Platine, der Reihe nach durch-
gezählt.
rot = 18
gelb = 23
gruen = 24
Diese drei Zeilen definieren Variablen mit den GPIO-Pins, an denen die drei LEDs angeschlossen sind.
Das macht das Programm übersichtlicher, und es lässt sich leichter an einen anderen Schaltungsaufbau
anpassen, da die Pinnummern nur an einer Stelle im Programm geändert werden müssen.
GPIO.setup(rot, GPIO.OUT, initial=0)
GPIO.setup(gelb, GPIO.OUT, initial=0)
GPIO.setup(gruen, GPIO.OUT, initial=1)
Nacheinander werden die drei verwendeten GPIO-Pins als Ausgänge initialisiert. Dabei verwenden wir
keine GPIO-Portnummern, sondern die zuvor definierten Variablen. Die GPIO.setup()-Anweisung kann
einen optionalen Parameter initial enthalten, der dem GPIO-Pin bereits beim Initialisieren einen logi-
schen Status zuweist. Damit schalten wir in diesem Programm die grüne LED bereits von Anfang an ein.
Die anderen beiden LEDs beginnen das Programm im ausgeschalteten Zustand.
Das erste Programm in Python3










