from machine import Pin
from time import sleep
# Define pins for each LED
led1 = Pin(32, Pin.OUT) # R
led2 = Pin(33, Pin.OUT) # Y
led3 = Pin(25, Pin.OUT) # G
led4 = Pin(21, Pin.OUT) # R
led5 = Pin(22, Pin.OUT) # Y
led6 = Pin(23, Pin.OUT) # G
led7 = Pin(5, Pin.OUT) # R
led8 = Pin(18, Pin.OUT) # Y
led9 = Pin(19, Pin.OUT) # G
led10 = Pin(17, Pin.OUT) # R
led11 = Pin(16, Pin.OUT) # Y
led12 = Pin(4, Pin.OUT) # G
while True:
# Initial state: All yellow lights on
led2.on()
led5.on()
led8.on()
led11.on()
sleep(0.5) # Yellow stays on for 0.5 seconds
# Transition to all red lights
led1.on()
led2.off()
led3.off()
led4.on()
led5.off()
led6.on()
led7.on()
led8.off() # 1
led9.off()
led10.on()
led11.off()
led12.on() # Changed from off to on for red light
sleep(0.5) # Red stays on for 0.5 seconds
# Transition to all green lights
led1.off()
led2.off()
led3.on()
led4.off()
led5.on()
led6.off()
led7.on() # 2
led8.off()
led9.on()
led10.off()
led11.on()
led12.off()
sleep(1) # Green stays on for 1 second
# Transition to vertical red lights
led1.on()
led2.off()
led3.off()
led4.on()
led5.off()
led6.off()
led7.off() # 3
led8.off()
led9.on()
led10.on()
led11.off()
led12.off()
sleep(0.5) # Red stays on for 0.5 seconds
# Transition to horizontal red lights
led1.on()
led2.off()
led3.off()
led4.on()
led5.off()
led6.off()
led7.on() # 4
led8.off()
led9.off()
led10.on()
led11.off()
led12.off()
sleep(0.5) # Red stays on for 0.5 seconds
# Transition to horizontal green lights
led1.on()
led2.off()
led3.off()
led4.on()
led5.off()
led6.off()
led7.on() # 5
led8.on()
led9.off()
led10.off()
led11.off()
led12.on()
sleep(1) # Green stays on for 1 second
# Transition to horizontal yellow lights
led1.on()
led2.off()
led3.off()
led4.on()
led5.off()
led6.off()
led7.on()
led8.off() # 6
led9.off()
led10.off()
led11.on()
led12.off()
sleep(0.5) # Yellow stays on for 0.5 seconds