3.5. Die LED-Klasse¶
Das einfachste Hardwareteil an der Kamera sind ihre bordeigenen LEDs. Die meisten Platinen haben eine RGB-LED (Rot, Grün, Blau). machine.LED ist die dafür vorgesehene Klasse zu ihrer Ansteuerung; keine Pin-Nummer, kein Widerstand, keine Schaltung – das Nachschlagen, die Strombegrenzung und die Verdrahtung übernimmt die Kamera selbst.
import time
from machine import LED
red = LED("LED_RED")
red.on()
time.sleep(5)
red.off()
Ein vollständiges Hardware-„Hello World“: die Klasse importieren, eine Instanz mit dem Namen der Farbe erstellen, sie einschalten, warten, sie ausschalten. Die LED leuchtet während der fünf Sekunden langen Pause sichtbar.
Das abschließende red.off() ist symmetrisch zum einleitenden red.on() und macht das Aufräumen explizit. Die bordeigenen LEDs werden außerdem automatisch zurückgesetzt, wenn das Skript beendet wird. Wenn Skripte wachsen, wird das Verlassen auf das Aufräumen beim Skriptende fragil; jedes .on() mit einem expliziten .off() zu paaren, ist die Gewohnheit, die lange Skripte vorhersehbar hält.
3.5.1. Konstruktor und Methoden¶
Der Konstruktor nimmt einen der Werte "LED_RED", "LED_GREEN" oder "LED_BLUE" entgegen. Jede Instanz stellt vier Methoden bereit:
on()– sie einschalten.off()– sie ausschalten.toggle()– den aktuellen Zustand umkehren.value()– ohne Argumente den aktuellen Zustand zurückgeben (0oder1); mit einem Argument ihn setzen.
Ein Blinker nach dem Hauptschleifen-Muster:
import time
from machine import LED
led = LED("LED_RED")
while True:
led.toggle()
time.sleep_ms(500)
Verwenden Sie die bordeigenen LEDs für Anzeige- und Statuszwecke: einen Herzschlag, der jede Sekunde blinkt, ein rotes Blinken bei einem Fehler, einen grünen Impuls, wenn ein Sensormesswert im zulässigen Bereich liegt.