import time
import machine
# Autolichten rijrichting 1
rode_led1 = machine.Pin(0, machine.Pin.OUT)
gele_led1 = machine.Pin(1, machine.Pin.OUT)
groene_led1 = machine.Pin(2, machine.Pin.OUT)
# Autolichten rijrichting 2
rode_led2 = machine.Pin(3, machine.Pin.OUT)
gele_led2 = machine.Pin(4, machine.Pin.OUT)
groene_led2 = machine.Pin(5, machine.Pin.OUT)
# Voetgangerslichten
voetg_rood1 = machine.Pin(6, machine.Pin.OUT)
voetg_groen1 = machine.Pin(7, machine.Pin.OUT)
voetg_rood2 = machine.Pin(8, machine.Pin.OUT)
voetg_groen2 = machine.Pin(9, machine.Pin.OUT)
# -----------------------------------------
# FUNCTIES
# -----------------------------------------
def auto1(rood, geel, groen):
rode_led1.value(rood)
gele_led1.value(geel)
groene_led1.value(groen)
def auto2(rood, geel, groen):
rode_led2.value(rood)
gele_led2.value(geel)
groene_led2.value(groen)
def voetgangers(v1_rood, v1_groen, v2_rood, v2_groen):
voetg_rood1.value(v1_rood)
voetg_groen1.value(v1_groen)
voetg_rood2.value(v2_rood)
voetg_groen2.value(v2_groen)
# -----------------------------------------
# FASE-FUNCTIES
# -----------------------------------------
def fase_auto1_rood_auto2_groen():
auto1(1, 0, 0)
auto2(0, 0, 1)
voetgangers(0, 1, 1, 0)
time.sleep(5)
def fase_auto2_oranje():
auto1(1, 0, 0)
auto2(0, 1, 0)
voetgangers(1, 0, 0, 1)
time.sleep(1.5)
def fase_ontruimen():
auto1(1, 0, 0)
auto2(1, 0, 0)
time.sleep(3)
def fase_auto1_groen_auto2_rood():
auto1(0, 0, 1)
auto2(1, 0, 0)
time.sleep(5)
def fase_auto1_oranje():
auto1(0, 1, 0)
auto2(1, 0, 0)
time.sleep(1.5)
def fase_auto1_auto2_rood_wachttijd():
auto1(1, 0, 0)
auto2(1, 0, 0)
time.sleep(5)
# -----------------------------------------
# HOOFDLUS
# -----------------------------------------
while True:
fase_auto1_rood_auto2_groen()
fase_auto2_oranje()
fase_ontruimen()
fase_auto1_groen_auto2_rood()
fase_auto1_oranje()
fase_auto1_auto2_rood_wachttijd()