22. Lektion: Neopixel
Zur Navigation springen
Zur Suche springen
Neopixel[Bearbeiten | Quelltext bearbeiten]
Die Handhabung von Neopixel Leds wird durch das Modul neopixel sehr einfach. Alle LEDs werden über eine gemeinsame Datenleitung angesteuert. Diese Datenleitung liegt auf dem Micropython Demoboard V.1.0 auf Pin 28.
# neopixel_001.py import machine # für Pin erforderlich import neopixel NEOPIXEL_PIN = const(28) # Neopixel-Pinnummer als Konstante speichern np = neopixel.NeoPixel(machine.Pin(NEOPIXEL_PIN), 5) # Eine Neopixel Instanz erzeugen - 5 ist die Anzahl von LEDs die angesteuert werden sollen. np[0] = (32,0,0) # Die einzelnen LEDs werden als Index der Instanz np angesteuert. np[1] = (0,32,0) # Hier wird die Anzeige vorbereitet. np[2] = (0,0,32) np[3] = (32,32,0) np[4] = (32,0,32) np.write() # Jetzt werden die Werte zu den LEDs übertragen.
Beispiele:[Bearbeiten | Quelltext bearbeiten]
Helligkeit variieren[Bearbeiten | Quelltext bearbeiten]
# neopixel_004.py
import machine
import time
import neopixel
interval = 25
NEOPIXEL_PIN = const(28)
np = neopixel.NeoPixel(machine.Pin(NEOPIXEL_PIN),5)
# LEDs aus
def alles_aus():
for i in range(np.__len__()):
np[i] = (0, 0, 0)
np.write()
alles_aus()
while True:
for i in range(1,255):
np[1] = [i,0,0]
np[2] = [0,i,0]
np[3] = [0,0,i]
np.write()
time.sleep_ms(interval)
alles_aus()
# time.sleep_ms(50)
for i in range(255,0,-1):
np[1] = [i,0,0]
np[2] = [0,i,0]
np[3] = [0,0,i]
np.write()
time.sleep_ms(interval)
alles_aus()
Farbe variieren[Bearbeiten | Quelltext bearbeiten]
# neopixel_005.py
import machine
import time
import neopixel
NEOPIXEL_PIN = const(28)
np = neopixel.NeoPixel(machine.Pin(NEOPIXEL_PIN),5)
# LEDs aus
def alles_aus():
for i in range(np.__len__()):
np[i] = (0, 0, 0)
np.write()
alles_aus()
for r in range(1,256,4):
for g in range(1,256,4):
for b in range(1,256,4):
np[2] = [r,g,b]
np.write()
alles_aus()
Lauflicht[Bearbeiten | Quelltext bearbeiten]
# neopixel_006.py
import machine
import time
import neopixel
LEDS = const(5)
verzögerung = 100
helligkeit = 64
NEOPIXEL_PIN = const(28)
np = neopixel.NeoPixel(machine.Pin(NEOPIXEL_PIN),LEDS)
# LEDs aus
def alles_aus():
for i in range(np.__len__()):
np[i] = (0, 0, 0)
np.write()
alles_aus()
while True:
for color in ((helligkeit,0,0),
(0,helligkeit,0),
(0,0,helligkeit),
(helligkeit,helligkeit,0),
(helligkeit,0,helligkeit),
(0,helligkeit,helligkeit)
):
for i in range(5):
alles_aus()
np[i] = color
np.write()
time.sleep_ms(verzögerung)
for i in range(4,-1,-1):
alles_aus()
np[i] = color
np.write()
time.sleep_ms(verzögerung)
[Bearbeiten | Quelltext bearbeiten]
Zurück zur "Micropython Kurs 2023 Teil 2" Startseite
Zurück zur "Micropython Kurs 2023" Startseite
Zurück zur Programmieren Startseite
Zurück zur Wiki Startseite