22. Lektion: Neopixel: Unterschied zwischen den Versionen

Aus Attraktor Wiki

Wechseln zu: Navigation, Suche
(Beispiele:)
(Helligkeit variieren)
Zeile 20: Zeile 20:
 
=== Beispiele:===
 
=== Beispiele:===
 
==== Helligkeit variieren====
 
==== Helligkeit variieren====
 +
 +
 +
<pre>
 +
# 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()
 +
</pre>
  
 
==== Farbe variieren====
 
==== Farbe variieren====
  
 
==== Lauflicht====
 
==== Lauflicht====

Version vom 3. Dezember 2023, 19:28 Uhr

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

Lauflicht