22. Lektion: Neopixel: Unterschied zwischen den Versionen

Aus Attraktor Wiki

Wechseln zu: Navigation, Suche
(Created page with "Die Handhabung von Neopixel Leds wird durch das Modul '''neopixel''' sehr einfach. Alle LEDs werden über eine gemeinsame Datenleitung angesteuert. Diese Datenleitung liegt au...")
 
 
(9 dazwischenliegende Versionen des gleichen Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
 +
 +
== 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.
 
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.
 
   
 
   
 
<pre>
 
<pre>
import machine                                                                             # für Pin erforderlich
+
# neopixel_001.py
 +
 
 +
import machine                                               # für Pin erforderlich
 
import neopixel
 
import neopixel
  
NEOPIXEL_PIN = const(28)                                                       # Neopixel-Pinnummer als Konstante speichern  
+
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 = 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[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[1] = (0,32,0)                                             # Hier wird die Anzeige vorbereitet.
 
np[2] = (0,0,32)
 
np[2] = (0,0,32)
 
np[3] = (32,32,0)
 
np[3] = (32,32,0)
 
np[4] = (32,0,32)
 
np[4] = (32,0,32)
np.write()                                                                                     # Jetzt werden die Werte zu den LEDs übertragen.
+
np.write()                                                   # Jetzt werden die Werte zu den LEDs übertragen.
 
</pre>
 
</pre>
 +
 +
=== Beispiele:===
 +
==== 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====
 +
 +
 +
 +
<pre>
 +
# 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()
 +
 +
</pre>
 +
 +
==== Lauflicht====
 +
 +
 +
<pre>
 +
# 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)
 +
 +
 +
</pre>
 +
 +
 +
==Navigation==
 +
[[Micropython_Kurs_2023_-_Teil_2|Zurück zur "Micropython Kurs 2023 Teil 2" Startseite]]<br>
 +
[[Micropython Kurs 2023|Zurück zur "Micropython Kurs 2023" Startseite]]<br>
 +
[[Programmieren|Zurück zur Programmieren Startseite]]<br>
 +
[[Attraktor_Wiki|Zurück zur Wiki Startseite]]<br>

Aktuelle Version vom 17. Dezember 2023, 18:53 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)



Navigation

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

Diese Seite wurde zuletzt am 17. Dezember 2023 um 18:53 Uhr geändert. Diese Seite wurde bisher 1.260 mal abgerufen.