from machine import Pin, PWM, I2C
from ssd1306 import SSD1306_I2C
import time
button1 = Pin(2, Pin.IN, Pin.PULL_DOWN)
button2 = Pin(3, Pin.IN, Pin.PULL_DOWN)
button3 = Pin(4, Pin.IN, Pin.PULL_DOWN)
led_red = PWM(Pin(5))
led_green = PWM(Pin(6))
led_blue = PWM(Pin(7))
i2c = I2C(0, scl=Pin(17), sda=Pin(16))
oled = SSD1306_I2C(128, 64, i2c)
def update_oled(color, intensity):
oled.fill(0)
oled.text('Color: ' + color, 0, 0)
oled.text('Intensidad: ' + str(intensity), 0, 10)
oled.show()
led_red.duty_u16(0)
led_green.duty_u16(0)
led_blue.duty_u16(0)
while True:
if button1.value():
for intensity in range(0, 65536, 1000):
led_red.duty_u16(intensity)
update_oled('Rojo', intensity)
time.sleep(0.01)
elif button2.value():
for intensity in range(0, 65536, 1000):
led_green.duty_u16(intensity)
update_oled('Verde', intensity)
time.sleep(0.01)
elif button3.value():
for intensity in range(0, 65536, 1000):
led_blue.duty_u16(intensity)
update_oled('Azul', intensity)
time.sleep(0.01)