import time
from machine import I2C, Pin
from lcd_api import LcdApi
from pico_i2c_lcd import I2cLcd
#DECLARAMOS LOS LEDS Y EL BOTON
led_0 = machine.Pin(2, machine.Pin.OUT)
led_1 = machine.Pin(3, machine.Pin.OUT)
led_2 = machine.Pin(4, machine.Pin.OUT)
button = machine.Pin(28, machine.Pin.IN, machine.Pin.PULL_DOWN)
#DIRECCION DEL I2C Y EL TAMAÑO DEL LCD
I2C_ADDR = 0x27
I2C_NUM_ROWS = 2
I2C_NUM_COLS = 16
#CONFIRACION DE LA RASPBERRY
i2c = I2C(0, scl = Pin(1), sda = Pin(0), freq=400000)
#CONFIGURACION DEL LCD
lcd = I2cLcd(i2c, I2C_ADDR, I2C_NUM_ROWS, I2C_NUM_COLS)
#ESTABLECEMOS UN METODO INSTANCIADO
def lcd_str(message, col, row):
lcd.move_to(col, row)
lcd.putstr(message)
while True:
if button.value() == 1:
led_0.value(1)
print("LED 1 ON")
if led_0.value() == 1:
lcd.clear()
lcd_str("LED 1 ON" , 0, 0)
lcd_str("1s", 0,1)
time.sleep(1)
lcd_str("LED 1 ON" , 0, 0)
lcd_str("2s", 0,1)
time.sleep(1)
lcd_str("LED 1 ON" , 0, 0)
lcd_str("3s", 0,1)
time.sleep(1)
lcd_str("LED 1 ON" , 0, 0)
lcd_str("4s", 0,1)
time.sleep(1)
lcd.clear()
led_0.value(0)
print("LED 1 OFF")
if led_0.value() == 0:
lcd.clear()
lcd_str("LED 1 OFF" , 0, 0)
lcd_str("4s", 0,1)
time.sleep(1)
lcd_str("LED 1 OFF" , 0, 0)
lcd_str("3s", 0,1)
time.sleep(1)
lcd_str("LED 1 OFF" , 0, 0)
lcd_str("2s", 0,1)
time.sleep(1)
lcd_str("LED 1 OFF" , 0, 0)
lcd_str("1s", 0,1)
time.sleep(1)
lcd.clear()
led_1.value(1)
print("LED 2 ON")
if led_1.value() == 1:
lcd.clear()
lcd_str("LED 2 ON" , 0, 0)
lcd_str("1s", 0,1)
time.sleep(1)
lcd_str("LED 2 ON" , 0, 0)
lcd_str("2s", 0,1)
time.sleep(1)
lcd_str("LED 2 ON" , 0, 0)
lcd_str("3s", 0,1)
time.sleep(1)
lcd_str("LED 2 ON" , 0, 0)
lcd_str("4s", 0,1)
time.sleep(1)
lcd.clear()
led_1.value(0)
print("LED 2 OFF")
if led_1.value() == 0:
lcd.clear()
lcd_str("LED 2 OFF" , 0, 0)
lcd_str("4s", 0,1)
time.sleep(1)
lcd_str("LED 2 OFF" , 0, 0)
lcd_str("3s", 0,1)
time.sleep(1)
lcd_str("LED 2 OFF" , 0, 0)
lcd_str("2s", 0,1)
time.sleep(1)
lcd_str("LED 2 OFF" , 0, 0)
lcd_str("1s", 0,1)
time.sleep(1)
lcd.clear()
led_2.value(1)
print("LED 3 ON")
if led_2.value() == 1:
lcd.clear()
lcd_str("LED 3 ON" , 0, 0)
lcd_str("1s", 0,1)
time.sleep(1)
lcd_str("LED 3 ON" , 0, 0)
lcd_str("2s", 0,1)
time.sleep(1)
lcd_str("LED 3 ON" , 0, 0)
lcd_str("3s", 0,1)
time.sleep(1)
lcd_str("LED 3 ON" , 0, 0)
lcd_str("4s", 0,1)
time.sleep(1)
lcd.clear()
led_2.value(0)
print("LED 3 OFF")
if led_2.value() == 0:
lcd.clear()
lcd_str("LED 3 OFF" , 0, 0)
lcd_str("4s", 0,1)
time.sleep(1)
lcd_str("LED 3 OFF" , 0, 0)
lcd_str("3s", 0,1)
time.sleep(1)
lcd_str("LED 3 OFF" , 0, 0)
lcd_str("2s", 0,1)
time.sleep(1)
lcd_str("LED 3 OFF" , 0, 0)
lcd_str("1s", 0,1)
time.sleep(1)
lcd.clear()
else:
lcd_str("LED1, LED2, LED3" , 0, 0)
lcd_str("OFF" , 0, 1)
Loading
pi-pico-w
pi-pico-w