Aus Raspberry Pi Geek 05/2024

MicroPython (Teil 2): Digitale Ein- und Ausgabe (Seite 2)

Lauflicht

Nach all der Theorie bauen wir als abschließendes Beispiel ein einfaches Lauflicht auf. Es soll aus acht LEDs bestehen, und das Licht soll hin- und herwandern. Dafür empfiehlt sich der ESP32, weil er über acht GPIOs direkt nebeneinander verfügt und Sie das Lauflicht dementsprechend mit einer LED-Balkenanzeige [9] umsetzen können. Als Vorwiderstände für die LED setzen Sie ein Widerstandsnetzwerk ein. Alles zusammen zeigt Abbildung 1.

Listing 3 enthält den passenden Programmcode. Als Erstes definieren Sie wie in der dritten Zeile eine Liste mit den Pin-Nummern der LEDs, die Sie daraufhin als Output festlegen. Die zwei folgenden Schleifen (Zeilen 7 und 11) lassen jeweils eine neue LED aufleuchten und löschen den Vorgänger. Durch geschickt gewählte Parameter für die Funktion range() klappt alles wunschgemäß.

Listing 3

Lauflicht

from machine import Pin
from time import sleep
PINS = [19,18,5,17,16,4,0,2]
LEDS = []
for i in range(8): LEDS.append(Pin(PINS[i],Pin.OUT))
while True:
  for i in range(1,8,1):
    LEDS[i].value(1)
    LEDS[(i-1)].value(0)
    sleep(0.1)
  for i in range(6,-1,-1):
    LEDS[i].value(1)
    LEDS[(i+1)].value(0)
    sleep(0.1)

Fazit und Ausblick

Mit MicroPython führen Sie problemlos Code-identische Programme auf unterschiedlichen Mikrocontrollern aus. Mu als Editor lässt sich kinderleicht bedienen. Im nächsten Teil der Artikelserie beschäftigen wir uns mit analoger Ein- und Ausgabe. (csi)

Der Autor

Martin Mohr hat die komplette Entwicklung der modernen Computertechnik live miterlebt. Nach dem Studium schrieb er überwiegend Java-Applikationen. Mit dem Raspberry Pi erwachte seine alte Liebe zur Elektronik wieder.

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDFUmfang: 4 HeftseitenPreis €0,99
(inkl. 19% MwSt.)
RASPBERRY PI GEEK KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS Raspberry Pi Geek bei Google Play Readly Logo
Nach oben