Raspberry Pi Pico: LED-Lauflicht programmieren
In einem LED-Lauflicht sind die Leuchtdioden wie in einer Lichterkette nebeneinander angeordnet. Allerdings werden in einem Lauflicht alle Leuchtdioden einzeln angesteuert.
So ist es möglich, dass alle Lampen bzw. Leuchtdioden in einer beliebigen Reihenfolge leuchten. In einem Lauflicht werden die Leuchtdioden nacheinander ein- und ausgeschaltet. Damit die Leuchtdioden an- und ausgehen müssen wir das Lauflicht programmieren.
Im folgenden Aufbau wird der Mikrocontroller Raspberry Pi Pico verwendet. Zum Einstieg und erste Versuche empfehlen sich Erste Schritte mit dem Raspberry Pi Pico und Programmieren mit MicroPython.
Aufbau und Bauteile
- R1: Widerstand, 470 Ohm (Gelb-Violett-Schwarz-Schwarz)
- R2: Widerstand, 470 Ohm (Gelb-Violett-Schwarz-Schwarz)
- R3: Widerstand, 470 Ohm (Gelb-Violett-Schwarz-Schwarz)
- R4: Widerstand, 470 Ohm (Gelb-Violett-Schwarz-Schwarz)
- R5: Widerstand, 470 Ohm (Gelb-Violett-Schwarz-Schwarz)
- R6: Widerstand, 470 Ohm (Gelb-Violett-Schwarz-Schwarz)
- LED1: Leuchtdiode, rot, gelb oder grün
- LED2: Leuchtdiode, rot, gelb oder grün
- LED3: Leuchtdiode, rot, gelb oder grün
- LED4: Leuchtdiode, rot, gelb oder grün
- LED5: Leuchtdiode, rot, gelb oder grün
- LED6: Leuchtdiode, rot, gelb oder grün
1. Programmcode für Anfänger
Im Programmcode werden zuerst die LEDs der Reihe nach initialisiert und anschließend innerhalb einer Schleife der Reihe nach eingeschaltet und wieder ausgeschaltet.
# Bibliotheken laden from machine import Pin from utime import sleep # Initialisierung von GPIOs als Lauflicht led1 = Pin(18, Pin.OUT, value=0) led2 = Pin(17, Pin.OUT, value=0) led3 = Pin(16, Pin.OUT, value=0) led4 = Pin(13, Pin.OUT, value=0) led5 = Pin(14, Pin.OUT, value=0) led6 = Pin(15, Pin.OUT, value=0) # Wiederholung (Endlos-Schleife) while True: led1.on() sleep(0.5) led1.off() led2.on() sleep(0.5) led2.off() led3.on() sleep(0.5) led3.off() led4.on() sleep(0.5) led4.off() led5.on() sleep(0.5) led5.off() led6.on() sleep(0.5) led6.off()
2. Programmcode für Fortgeschrittene
Der erste Programmcode hat einen entscheidenden Nachteil: Wenn man das Lauflicht um LEDs verkürzen oder um weitere verlängern will, dann muss man umfangreiche Änderungen am Programm vornehmen. Das liegt daran, weil jede LED einzeln adressiert und angesprochen wird. Ein guter Programmierer wird jedoch versuchen nicht jedes gleiche Element, in dem Fall die LED, einzeln zu programmieren, sondern alle Elemente nacheinander in einer Schleife anzusprechen.
Dadurch wird der Programmcode auf den ersten Blick komplizierter, aber auch wesentlich flexibler.
# Bibliotheken laden from machine import Pin from utime import sleep # GPIOs für das Lauflicht auswählen GPIO = [18, 17, 16, 13, 14, 15] leds = len(GPIO) led = [0] * leds # Initialisierung von GPIOs als Lauflicht for i in range(leds): led[i] = Pin(GPIO[i], Pin.OUT, value=0) # Wiederholung (Endlos-Schleife) while True: for i in range(leds): led[i].on() sleep(0.5) led[i].off()
Experimente
- Versuche einfach mal das Lauflicht zu verkürzen, also LEDs softwareseitig zu entfernen und nach einem erfolgreichen Test hinzuzufügen.
- Lege eine eigene Reihenfolge fest. Lass das Lauflicht zum Beispiel anders herum laufen.
Darf es etwas mehr sein?
Hast Du das Lauflicht auf 2 Leuchtdioden verkürzt? Das sieht aus wie ein Wechselblinker. Ja, der Programmcode ist so flexibel, dass er für eine Wechselblinker verwendet werden kann.
Highlights: Elektronik mit dem Raspberry Pi Pico
- Raspberry Pi Pico: Onboard-LED einschalten und ausschalten
- Raspberry Pi Pico: Taster-Zustand auswerten und mit einer LED anzeigen
- Raspberry Pi Pico: Elektronischer Würfel
- Raspberry Pi Pico: Temperatur-Messung und Temperatur anzeigen
Elektronik mit dem Raspberry Pi
Die Stärken des Raspberry Pi liegen klar in der Computer-Architektur mit typischen Computer-Schnittstellen und Möglichkeit zum Ausführen von Open-Source-Software für Linux.
Weitere verwandte Themen:
- Raspberry Pi Pico
- Raspberry Pi Pico: GPIO-Grundlagen
- Raspberry Pi Pico: GPIO-Eingang beschalten
- Raspberry Pi Pico: GPIO-Ausgang beschalten
- Elektronik mit dem Raspberry Pi Pico
Teilen:
Hardware-nahes Programmieren mit dem Raspberry Pi Pico und MicroPython
Das Elektronik-Set Pico Edition ist ein Bauteile-Sortiment mit Anleitung zum Experimentieren und Programmieren mit MicroPython.
- LED: Einschalten, ausschalten, blinken und Helligkeit steuern
- Taster: Entprellen und Zustände anzeigen
- LED mit Taster einschalten und ausschalten
- Ampel- und Lauflicht-Steuerung
- Elektronischer Würfel
- Eigene Steuerungen programmieren
Online-Workshop
Hardware-nahes Programmieren mit dem Raspberry Pi Pico
Gemeinsam mit anderen und unter Anleitung experimentieren? Wir bieten unterschiedliche Online-Workshops zum Raspberry Pi Pico und MicroPython an. Einführung in die Programmierung, Sensoren programmieren und kalibrieren, sowie Internet of Things und Smart Home über WLAN und MQTT.
Für Ihre Fragen zu unseren Online-Workshops mit dem Raspberry Pi Pico besuchen Sie unseren PicoTalk (Online-Meeting). (Headset empfohlen)
Elektronik-Set Pico Edition
Raspberry Pi Pico: Hardware-nahes Programmieren mit MicroPython
Leichter Einstieg mit All-in-one-Set zum sofort Loslegen, um eigene Steuerungen programmieren.
Elektronik-Set Pico WLAN Edition
Raspberry Pi Pico W: IoT und Smart Home mit WLAN und MQTT
Betreibe Deinen Raspberry Pi Pico W als drahtloser Sensor in Deinem WLAN, versende E-Mails mit Daten und kommuniziere per MQTT im Internet of Things oder Smart Home.
Elektronik-Set Sensor Edition
Erweiterung zu den Elektronik-Sets Pico Edition und Pico WLAN Edition
Elektronik-Set mit den beliebtesten Sensoren zum Messen von Temperatur, Helligkeit, Bewegung, Lautstärke und Entfernung.
Elektronik-Set Eingabe Ausgabe Edition
Erweiterung zu den Elektronik-Sets Pico Edition und Pico WLAN Edition
Damit kannst Du MP3-Dateien abspielen, eine Stoppuhr bauen, einen Servo-Motor mit Drehschalter oder Joystick steuern, Lichteffekte mit einem WS2812-LED-Lichtstreifen erzeugen, Schalten mit einem Relais und Signalisieren mit einem Vibrationsmotor.