from time import sleep_ms # importeer functie sleep uit module time
from machine import Pin # importeer functie Pin uit module machine
rode_led = Pin(16,Pin.OUT) # stel een instantie(object) rode_led in als uitgang
gele_led = Pin(15,Pin.OUT) # stel een instantie(object) gele_led in als uitgang
pb_start = Pin(21,Pin.IN) # stel een instantie(object) pb_start in als ingang
pb_stop = Pin(20, Pin.IN) # stel een instantie(object) pb_stop in als ingang
oranje_led = Pin(14,Pin.OUT) #stel oranje_led in als uitgang
groene_led = Pin(13,Pin.OUT) #stel oranje_led in als uitgang
Dblauwe_led = Pin(12,Pin.OUT) #stel Dblauwe_led in als uitgang
paarse_led = Pin(11,Pin.OUT) #stel paarse_led in als uitgang
roze_led = Pin(10,Pin.OUT) #stel roze_led in als uitgang
Lblauw_led = Pin(9,Pin.OUT) #stel Lblauwe_led in als uitgang
#lijst met patronen
patroon_A = [rode_led] #patroon_A is rode_led
patroon_B = [gele_led] #patroon_B is gele_led
patroon_C = [oranje_led]
patroon_D = [groene_led]
patroon_E = [Dblauwe_led]
patroon_F = [paarse_led]
patroon_G = [roze_led]
patroon_H = [Lblauw_led]
start = 0 #start heeft de waarde 0
code = 0 #code heeft de waarde 0
vertraging = 500 #vertraging heeft de waarde 500
while True:
if pb_start.value() == 1: # onthoud wanneer pb_start wordt vergeleken met 1
start = 1 #als pb_start 1 is wordt de waarde van start 1
code = 1 #als pb_start 1 is wordt de waarde van code 1
elif pb_stop.value() == 1: #onthoud wanneer pb_stop wordt vergeleken met 1
start = 2 #als pb_stop 1 is wordt de waarde van start 2
code = 128 #als pb_stop 1 is wordt de waarde van code 128
if start == 1: #als start wordt vergeleken met 1 dan
if code == 1: #als code wordt vergeleken met 1 dan
for led in patroon_A: #voor de ledjes in patroon_A
led.value(1) #de ledjes in patroon_A aan
sleep_ms(150) #de ledjes in patroon_A aan voor 150 milliseconden
led.value(0) #de ledjes in patroon_A uit
if code == 2: #als code wordt vergeleken met 2 dan
for led in patroon_B: #voor de ledjes in patroon_B
led.value(1) #de ledjes in patroon_B aan
sleep_ms(150) #de ledjes in patroon_B aan voor 150 milliseconden
led.value(0) #de ledjes in patroon_B uit
if code == 4: #als code wordt vergeleken met 4 dan
for led in patroon_C: #voor de ledjes in patroon_C
led.value(1) ##de ledjes in patroon_C aan
sleep_ms(150) #de ledjes in patroon_C aan voor 150 milliseconden
led.value(0) #de ledjes in patroon_C uit
if code == 8: #als code wordt vergeleken met 8 dan
for led in patroon_D: #voor de ledjes in patroon_D
led.value(1) #ledjes in patroon_D aan
sleep_ms(150) #ledjes in patroon_D aan voor 150 milliseconden
led.value(0) #ledjes in patroon_D uit
if code == 16: #als code wordt vergeleken met 16 dan
rode_led.off() #als code wordt vergeleken met 16 zet rode_led uit
gele_led.off() #als code wordt vergeleken met 16 zet gele_led uit
oranje_led.off() #als code wordt vergeleken met 16 zet oranje_led uit
groene_led.off() #als code wordt vergeleken met 16 zet groene_led uit
Dblauwe_led.on() #als code wordt vergeleken met 16 zet Dblauwe_led aan
paarse_led.off() #als code wordt vergeleken met 16 zet paarse_led uit
roze_led.off() #als code wordt vergeleken met 16 zet roze_led uit
Lblauw_led.off() #als code wordt vergeleken met 16 zet Lblauw_led uit
if code == 32: #als code wordt vergeleken met 32 dan
rode_led.off() #als code wordt vergeleken met 32 zet rode_led uit
gele_led.off() #als code wordt vergeleken met 32 zet gele_led uit
oranje_led.off() #als code wordt vergeleken met 32 zet oranje_led uit
groene_led.off() #als code wordt vergeleken met 32 zet groene_led uit
Dblauwe_led.off() #als code wordt vergeleken met 32 zet Dblauwe_led uit
paarse_led.on() #als code wordt vergeleken met 32 zet paarse_led aan
roze_led.off() #als code wordt vergeleken met 32 zet roze_led uit
Lblauw_led.off() #als code wordt vergeleken met 32 zet Lblauw_led uit
if code == 64: #als code wordt vergeleken met 64 dan
rode_led.off() #als code wordt vergeleken met 64 zet rode_led uit
gele_led.off() #als code wordt vergeleken met 64 zet gele_led uit
oranje_led.off() #als code wordt vergeleken met 64 zet oranje_led uit
groene_led.off() #als code wordt vergeleken met 64 zet groene_led uit
Dblauwe_led.off() #als code wordt vergeleken met 64 zet Dblauwe_led uit
paarse_led.off() #als code wordt vergeleken met 64 zet paarse_led uit
roze_led.on() #als code wordt vergeleken met 64 zet roze_led aan
Lblauw_led.off() #als code wordt vergeleken met 64 zet Lblauw_led uit
if code == 128: #als code wordt vergeleken met 128 dan
rode_led.off() #als code wordt vergeleken met 128 zet rode_led uit
gele_led.off() #als code wordt vergeleken met 128 zet gele_led uit
oranje_led.off() #als code wordt vergeleken met 128 zet oranje_led uit
groene_led.off() #als code wordt vergeleken met 128 zet groene_led uit
Dblauwe_led.off() #als code wordt vergeleken met 128 zet Dblauwe_led uit
paarse_led.off() #als code wordt vergeleken met 128 zet paarse_led uit
roze_led.off() #als code wordt vergeleken met 128 zet roze_led uit
Lblauw_led.on() #als code wordt vergeleken met 128 zet Lblauw_led aan
code = code*2
if code == 256:
def zet_led_status(status): #zet let aan (1) of uit (0)
rode_led.value(status) #rode_led staat aan of uit
gele_led.value(status) #gele_led staat aan of uit
oranje_led.value(status) #oranje_led staat aan of uit
groene_led.value(status) #groene_led staat aan of uit
Dblauwe_led.value(status) #Dblauwe_led staat aan of uit
paarse_led.value(status) #paarse_led staat aan of uit
roze_led.value(status) #roze_led staat aan of uit
Lblauw_led.value(status) #Lblauw_led staat aan of uit
def knipper(aantal,pauze): #laat de ledjes voor aantal keer knipperen met pauze
for i in range(aantal): #laat het programma een bepaald antal keer doorlopen
zet_led_status(1) #zet ledjes aan
sleep_ms(pauze) #zet ledjes aan voor bepaalde tijd
zet_led_status(0) #zet ledjes uit
sleep_ms(pauze) #zet ledjes uit voor bepaalde tijd
knipper(5,500) #laat de ledjes bepaald aantal keer knipperen met pauze
if code == 256: #als code wordt vergeleken met 256 dan
code = 0 #als code wordt vergeleken met 256 wordt code 0
sleep_ms(300) #wacht 300 milliseconden
elif start == 2:
if code == 128:
rode_led.off()
gele_led.off()
oranje_led.off()
groene_led.off()
Dblauwe_led.off()
paarse_led.off()
roze_led.off()
Lblauw_led.on()
if code == 64:
rode_led.off()
gele_led.off()
oranje_led.off()
groene_led.off()
Dblauwe_led.off()
paarse_led.off()
roze_led.on()
Lblauw_led.off()
if code == 32:
rode_led.off()
gele_led.off()
oranje_led.off()
groene_led.off()
Dblauwe_led.off()
paarse_led.on()
roze_led.off()
Lblauw_led.off()
if code == 16:
rode_led.off()
gele_led.off()
oranje_led.off()
groene_led.off()
Dblauwe_led.on()
paarse_led.off()
roze_led.off()
Lblauw_led.off()
if code == 8:
rode_led.off()
gele_led.off()
oranje_led.off()
groene_led.on()
Dblauwe_led.off()
paarse_led.off()
roze_led.off()
Lblauw_led.off()
if code == 4:
rode_led.off()
gele_led.off()
oranje_led.on()
groene_led.off()
Dblauwe_led.off()
paarse_led.off()
roze_led.off()
Lblauw_led.off()
if code == 2:
rode_led.off()
gele_led.on()
oranje_led.off()
groene_led.off()
Dblauwe_led.off()
paarse_led.off()
roze_led.off()
Lblauw_led.off()
if code == 1:
rode_led.on()
gele_led.off()
oranje_led.off()
groene_led.off()
Dblauwe_led.off()
paarse_led.off()
roze_led.off()
Lblauw_led.off()
code = code//2 #code is gelijk aan code maal 2
if code == 0: #als code wordt vergeleken met 0 dan
def zet_led_status(status): #zet let aan (1) of uit (0)
rode_led.value(status) #rode_led staat aan of uit
gele_led.value(status) #gele_led staat aan of uit
oranje_led.value(status) #oranje_led staat aan of uit
groene_led.value(status) #groene_led staat aan of uit
Dblauwe_led.value(status) #Dblauwe_led staat aan of uit
paarse_led.value(status) #paarse_led staat aan of uit
roze_led.value(status) #roze_led staat aan of uit
Lblauw_led.value(status) #Lblauw_led staat aan of uit
def knipper(aantal,pauze): #laat de ledjes een bepaald aantal keer knipperen met pauze
for i in range(aantal): #laat het programma een bepaald antal keer doorlopen
zet_led_status(1) #zet ledjes aan
sleep_ms(pauze) #zet ledjes aan voor bepaalde tijd
zet_led_status(0) #zet ledjes uit
sleep_ms(pauze) #zet ledjes uit voor een bepaalde tijd
knipper(5,500) #knipper 5 keer voor 500 milliseconde
if code == 0: #als code wordt vergeleken met 0 dan
code = -2 #als code wordt vergeleken met 0 wordt code -2
sleep_ms(300) #wacht 300 milliseconden