from time import sleep_ms
from machine import Pin
# --- Instellingen van de hardware ---
rode_led = Pin(16, Pin.OUT)
gele_led = Pin(15, Pin.OUT)
oranje_led = Pin(14, Pin.OUT)
groene_led = Pin(13, Pin.OUT)
pb_start = Pin(21, Pin.IN)
pb_stop = Pin(20, Pin.IN)
# --- Eigen definities (functies) ---
def alle_leds_uit():
"""Zet alle leds tegelijk uit."""
rode_led.off()
gele_led.off()
oranje_led.off()
groene_led.off()
def update_leds(stand):
"""Zet de juiste led aan op basis van de tellerstand."""
alle_leds_uit() # Eerst alles uit, daarna de juiste aan
if stand == 1:
rode_led.on()
elif stand == 2:
gele_led.on()
elif stand == 4:
oranje_led.on()
elif stand == 8:
groene_led.on()
# --- Hoofdprogramma ---
teller = 1
richting = 0 # 0 = stop, 1 = vooruit, 2 = achteruit
while True:
# 1. Controleer de knoppen
if pb_start.value() == 1:
richting = 1
teller = 1
elif pb_stop.value() == 1:
richting = 2
teller = 8
# 2. Voer de beweging uit
if richting == 1:
update_leds(teller)
teller = teller * 2
if teller > 8:
teller = 1
elif richting == 2:
update_leds(teller)
teller = teller // 2
if teller < 1:
teller = 8
if richting != 0:
sleep_ms(500)