|
|
Zeile 104: |
Zeile 104: |
| import neopixel | | import neopixel |
| | | |
− | NEOPIXEL_PIN = const(28)
| + | LEDS = const(5) |
− | np = neopixel.NeoPixel(machine.Pin(NEOPIXEL_PIN),5)
| + | verzögerung = 100 |
− | | + | |
− | | + | |
− | pixel = (255,0,0)
| + | |
− | verzögerung = 250 | + | |
| helligkeit = 64 | | helligkeit = 64 |
| + | |
| + | NEOPIXEL_PIN = const(28) |
| + | np = neopixel.NeoPixel(machine.Pin(NEOPIXEL_PIN),LEDS) |
| | | |
| # LEDs aus | | # LEDs aus |
Zeile 121: |
Zeile 120: |
| | | |
| while True: | | while True: |
− | for color in ((helligkeit,0,0),(0,helligkeit,0),(0,0,helligkeit), | + | for color in ((helligkeit,0,0), |
− | (helligkeit,helligkeit,0),(helligkeit,0,helligkeit),(0,helligkeit,helligkeit)): | + | (0,helligkeit,0), |
| + | (0,0,helligkeit), |
| + | (helligkeit,helligkeit,0), |
| + | (helligkeit,0,helligkeit), |
| + | (0,helligkeit,helligkeit) |
| + | ): |
| for i in range(5): | | for i in range(5): |
| alles_aus() | | alles_aus() |
Zeile 133: |
Zeile 137: |
| np.write() | | np.write() |
| time.sleep_ms(verzögerung) | | time.sleep_ms(verzögerung) |
| + | |
| | | |
| </pre> | | </pre> |
Version vom 3. Dezember 2023, 22:48 Uhr
Neopixel
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:
Helligkeit variieren
# 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
# 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
# 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)