from machine import Pin
from time import sleep, time
import random
# Definieer LEDs en knop
leds = [Pin(2, Pin.OUT), Pin(3, Pin.OUT), Pin(4, Pin.OUT), Pin(5, Pin.OUT), Pin(6, Pin.OUT), Pin(7, Pin.OUT), Pin(8, Pin.OUT), Pin(9, Pin.OUT)]
knoppen = [Pin(22, mode=Pin.IN, pull=Pin.PULL_UP), Pin(10, mode=Pin.IN, pull=Pin.PULL_UP)]
# LEDs aan de rechterkant (eerste 4) en linkerkant (laatste 4)
rechter_leds = leds[:4]
linker_leds = leds[4:]
while True:
if knoppen[0].value() == 0 and knoppen[1].value() == 0:
# Willekeurig aan en uit zetten van LEDs tussen 3 en 10 seconden
totale_tijd = random.randint(3, 10)
start_tijd = time()
laatste_led = None
while time() - start_tijd < totale_tijd:
willekeurige_led = random.choice(leds)
willekeurige_led.on()
sleep(0.2)
willekeurige_led.off()
laatste_led = willekeurige_led
# Detecteer de positie van de laatste LED
laatste_led_index = leds.index(laatste_led)
if laatste_led_index < 4:
# Als de laatste LED aan de rechterkant = knipperen de rechter LEDs
for _ in range(16): # 8 seconden knipperen
for led in rechter_leds:
led.toggle()
sleep(0.5)
else:
# Als de laatste LED aan de linkerkant = knipperen de linker LEDs
for _ in range(16): # 8 seconden knipperen
for led in linker_leds:
led.toggle()
sleep(0.5)
# Alle LEDs uitzetten
for led in leds:
led.off()
'''
Instructie Spel
Twee Persoons Spel
Dit is een gokspel.
Twee spelers moeten tegelijkertijd op de knop drukken om het spel te starten.
Daarna zullen de LEDs willekeurig van links naar rechts en van rechts naar links aangaan.
Er wordt een willekeurige tijd gekozen wanneer de LEDs stoppen met aan- en uitgaan van links naar rechts,
of omgekeerd (de tijd is ingesteld tussen 3 en 10 seconden).
Het programma zal onthouden aan welke kant de laatste LED heeft gebrand. Op basis van deze gegevens
zullen de 4 LEDs aan de kant van de winnaar knipperen gedurende 8 seconden.
INFO!
Het monitoren van de live LED-status of de geschiedenis in het geheugen is mogelijk,
voor bescherming tegen spelers die niet tegen hun verlies kunnen. :)
def print_led_status():
status = ["ON" if led.value() == 1 else "OFF" for led in leds]
print("LED statuses:", status)
'''