import time
import machine
time.sleep(0.1) # Wait for USB to become ready
green_led = machine.Pin(15, machine.Pin.OUT)
yellow_led = machine.Pin(14, machine.Pin.OUT)
red_led = machine.Pin(13, machine.Pin.OUT)
button = machine.Pin(12, machine.Pin.PULL_DOWN)
green_button = machine.Pin(16, machine.Pin.PULL_DOWN)
buzzer = machine.Pin(27, machine.Pin.OUT)
green_button_pressed = False
button_pressed = False
def green_btn_handler(pin):
global green_button_pressed
if not green_button_pressed:
green_button_pressed = True
def btn_handler(pin):
global button_pressed
if not button_pressed:
button_pressed = True
green_button.irq(trigger=machine.Pin.IRQ_FALLING, handler=green_btn_handler)
button.irq(trigger=machine.Pin.IRQ_FALLING, handler=btn_handler)
while True:
if button_pressed == True:
red_led.value(1)
for i in range(20):
buzzer.value(1)
print("go crossing")
time.sleep(0.05)
buzzer.value(0)
time.sleep(0.2)
button_pressed = False
if green_button_pressed == True:
green_led.value(1)
red_led.value(0)
yellow_led(0)
print("green light activated")
red_led.value(1)
time.sleep(5)
if green_button_pressed == True:
green_led.value(1)
red_led.value(0)
yellow_led(0)
print("green light activated")
yellow_led.value(1)
red_led.value(0)
time.sleep(2)
if green_button_pressed == True:
green_led.value(1)
red_led.value(0)
yellow_led(0)
print("green light activated")
yellow_led.value(0)
green_led.value(1)
time.sleep(5)
if green_button_pressed == True:
green_led.value(1)
red_led.value(0)
yellow_led(0)
print("green light activated")
green_led.value(0)
yellow_led.value(1)
time.sleep(2)
if green_button_pressed == True:
green_led.value(1)
red_led.value(0)
yellow_led(0)
print("green light activated")