import machine
import neopixel
import time

# Configuración de la tira NeoPixel
NUM_LEDS = 32  # Número de LEDs en la tira
pin_neopixel = 2  # Pin GPIO conectado a la tira NeoPixel
np = neopixel.NeoPixel(machine.Pin(pin_neopixel), NUM_LEDS)

# Colores para cada estado del semáforo
ROJO = (255, 0, 0)
VERDE = (0, 255, 0)

# Función para cambiar el estado del semáforo
def cambiar_semaforo():
    np[0] = VERDE # encneder verde peaton
    np[2] = (0, 0, 0)  # Apagar rojo peaton
    np[10] = ROJO # encender rojo coche
    np[12] = (0,0,0) # apagar verde coches
    np.write()
    time.sleep(5)  # El semáforo verde dura 5 segundos
    
    np[0] = (0, 0, 0)  
    np[2] = ROJO
    np[10] = (0,0,0)
    np[12] = VERDE
    np.write()
    time.sleep(5)  # El semáforo rojo dura 5 segundos

# Ciclo infinito para cambiar el semáforo continuamente
while True:
    cambiar_semaforo()