from machine import Pin
import time

# Definición de la clase Led
class Led:
    def __init__(self, pin):
        self.pin = Pin(pin, Pin.OUT)
        print(f'Objeto {self} construido')
    def mensaje(self,texto):
        print(texto)
        
    def prender(self):
        self.pin.value(1)
    def apagar(self):
        self.pin.value(0)
    def pausar(self, tiempo):
        time.sleep(tiempo)
    def parpadear(self, iteraciones):
        for i in range(iteraciones):
            self.prender()
            time.sleep(0.2)
            self.apagar()
            time.sleep(0.2)      
    def __del__(self):    
        print(f"Objeto {self} destruido")
# Creación de los LEDs
ledRojo = Led(15)     # Pin 15 para el LED rojo
ledAmarillo = Led(2)  # Pin 2 para el LED amarillo
ledVerde = Led(4)     # Pin 4 para el LED verde

# Programa principal
if __name__ == '__main__':
    while True:
        # LED rojo prende por 3 segundos
        ledRojo.mensaje(" ALTO ")
        ledRojo.prender()
        ledRojo.pausar(3)
        ledRojo.apagar()

        # LED amarillo prende por 1 segundo
        ledAmarillo.mensaje(" PRECAUCION ")
        ledAmarillo.prender()
        ledAmarillo.pausar(1)
        ledAmarillo.apagar()

        # LED verde prende por 3 segundos
        ledVerde.mensaje(" SIGA ")
        ledVerde.prender()
        ledVerde.pausar(3)
        ledVerde.apagar()