#-----------------------------------------------------------------
# Semaforo con paso peatonal
# Creada por:
# Aguilar Aldama Andrea
# Gomez Vazquez Jezhaeth
# Ortega Melchor Isaac David
# El siguiente codigo esta programado para usarse en Raspberry Pi Pico.
# Simula semaforo convencional, pero cuenta con un pulsador que indica
# que va apasar un peaton y un led blanco se enciende para darle el paso.
#-----------------------------------------------------------------
#---[LIBRERÍAS EMPLEADAS]---
import machine
import utime
import sys
bool botoncin
botoncin == False
#---[AJUSTES]---
led_rojo = machine.Pin(28, machine.Pin.OUT)
led_amarillo = machine.Pin(15, machine.Pin.OUT)
led_verde = machine.Pin(13, machine.Pin.OUT)
led_blanco = machine.Pin(22, machine.Pin.OUT)
button = machine.Pin(14, machine.Pin.OUT)
#---[FUNCIONES]---
def clear_console():
sys.stdout.write("\033[2J\033[H")
#---[CICLO PRINCIPAL]---
while True:
if botoncin == True:
clear_console()
led_verde.value(0)
led_amarillo.value(1)
led_rojo.value(0)
utime.sleep(1)
led_amarillo.value(0)
led_rojo.value(1)
led_blanco.value(1)
print("peaton pasando")
utime.sleep(5)
led_blanco.value(0)
utime.sleep(0.5)
led_blanco.value(1)
utime.sleep(0.5)
led_blanco.value(0)
utime.sleep(0.5)
led_blanco.value(1)
utime.sleep(0.5)
led_blanco.value(0)
utime.sleep(0.5)
led_blanco.value(1)
utime.sleep(0.5)
botoncin == False
if button.value() == 0:
clear_console()
led_blanco.value(0)
led_verde.value(1)
led_rojo.value(0)
led_amarillo.value(0)
print("verde encendido")
utime.sleep(6)
if button.value()==1:
botoncin == True
clear_console()
break
led_amarillo.value(1)
led_verde.value(0)
print("amarillo encendido")
utime.sleep(2)
if button.value()==1:
botoncin == True
clear_console()
break
led_rojo.value(1)
led_amarillo.value(0)
print("rojo encendido")
utime.sleep(3.5)
clear_console()
if button.value()==1:
botoncin == True
clear_console()
break
#---[FIN DE CODIGO :^) ]---