This commit is contained in:
2026-06-16 13:02:06 +02:00
commit 9e45f1f199
29 changed files with 2531 additions and 0 deletions

View File

@@ -0,0 +1,46 @@
import machine
import neopixel
import time
# NeoPixel setup
NUM_LEDS = 8
np = neopixel.NeoPixel(machine.Pin(17), NUM_LEDS) # 28
# Button on GP22 (active LOW)
button = machine.Pin(22, machine.Pin.IN, machine.Pin.PULL_UP)
# Color list (R, G, B)
colors = [
(255, 0, 0), # Red
(0, 255, 0), # Green
(0, 0, 255), # Blue
(255, 255, 0), # Yellow
(255, 0, 255), # Magenta
(0, 255, 255), # Cyan
(255, 255, 255) # White
]
current_color = 0
last_state = 1 # button not pressed
def show_color(color):
for i in range(NUM_LEDS):
np[i] = color
np.write()
# Initial color
show_color(colors[current_color])
while True:
state = button.value()
# Detect button press (HIGH → LOW)
if last_state == 1 and state == 0:
current_color = (current_color + 1) % len(colors)
show_color(colors[current_color])
time.sleep_ms(200) # Debounce delay
last_state = state
time.sleep_ms(10)