# Importaciones básicas
from machine import Pin # Importación de los pines para el LED y los botones
from time import sleep # Importación para manejar los tiempos de espera
# Definimos pines para botones y led
led = Pin(12, Pin.OUT)
bOn = Pin(4, Pin.IN, Pin.PULL_UP)
bOff = Pin(2, Pin.IN, Pin.PULL_UP)
bONff = Pin(14, Pin.IN, Pin.PULL_UP)
# Estado inicial del led
state = False # El LED comienza apagado
# Función que enciende el LED
def on(pin):
global state
state = False # Cambia el estado a apagado (0)
led.value(state) # Actualiza el estado del LED
# Función que apaga el LED
def off(pin):
global state
state = True # Cambia el estado a encendido (1)
led.value(state) # Actualiza el estado del LED
# Función para alternar el estado del LED
def toggle(pin):
global state
state = not state # Alterna el valor actual de 'state' (True/False)
led.value(state) # Actualiza el LED con el nuevo estado
# Asignar interrupciones a los botones
bOn.irq(trigger=Pin.IRQ_FALLING, handler=on) # Enciende el LED cuando se presiona bOn
bOff.irq(trigger=Pin.IRQ_FALLING, handler=off) # Apaga el LED cuando se presiona bOff
bONff.irq(trigger=Pin.IRQ_FALLING, handler=toggle) # Alterna el estado del LED cuando se presiona bONff
# Mantener el programa en ejecución
while True:
pass