from machine import Pin
from time import sleep
# Define 10 LED pins (change these to match your board's GPIO)
led_pins = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
leds = [Pin(pin, Pin.OUT) for pin in led_pins]
print("STM32 Running Lights Start!")
while True:
# Mode 1: Left to Right
print("--- Mode 1: Left to Right ---")
for i, led in enumerate(leds):
led.value(1)
print(f"LED {i+1} ON")
sleep(0.2)
led.value(0)
sleep(0.5)
# Mode 2: Right to Left
print("--- Mode 2: Right to Left ---")
for i in reversed(range(len(leds))):
leds[i].value(1)
print(f"LED {i+1} ON")
sleep(0.2)
leds[i].value(0)
sleep(0.5)
# Mode 3: Back-and-Forth
print("--- Mode 3: Back-and-Forth ---")
for led in leds:
led.value(1)
sleep(0.15)
led.value(0)
for led in reversed(leds[1:-1]):
led.value(1)
sleep(0.15)
led.value(0)
sleep(0.5)
# Mode 4: Progressive Lighting (keep LEDs on)
print("--- Mode 4: Progressive Lighting ---")
for led in leds:
led.value(1)
sleep(0.2)
sleep(1)
# Turn off all LEDs
print("Turning off all LEDs...")
for led in leds:
led.value(0)
sleep(0.1)
sleep(1)
# Mode 5: Opposite Collision (LEDs light from both ends)
print("--- Mode 5: Opposite Collision ---")
num_leds = len(leds)
for i in range(num_leds // 2):
leds[i].value(1)
leds[num_leds - 1 - i].value(1)
sleep(0.2)
leds[i].value(0)
leds[num_leds - 1 - i].value(0)
sleep(1)
# Mode 6: Blink All LEDs
print("--- Mode 6: Blink All LEDs ---")
for _ in range(3):
for led in leds:
led.value(1)
sleep(0.3)
for led in leds:
led.value(0)
sleep(0.3)
sleep(1)
Loading
st-nucleo-l031k6
st-nucleo-l031k6