from machine import Pin, ADC, PWM
import utime
# Configuración del pin del LED
led_pin = Pin(5, Pin.OUT)
led_pwm = PWM(led_pin)
# Configuración del pin conectado al sensor LDR
ldr_pin = Pin(34)
ldr = ADC(ldr_pin)
ldr.atten(ADC.ATTN_11DB) # Atenuación
ldr.width(ADC.WIDTH_12BIT) # Resolución
# Configuración de los valores máximos y mínimos de los lux y brillo del LED
max_lux = 100000 # Valor máximo de lux
min_lux = 0.1 # Valor mínimo de lux
max_brillo = 1023 # El brillo máximo es 1023
min_brillo = 0 # El brillo mínimo es 0
while True:
lux = ldr.read() # Leer el valor de lux
print("Lux:", lux)
utime.sleep(0.5)
# Mapear el valor de lux al rango de brillo del LED
if lux >= max_lux:
brillo = max_brillo
elif lux <= min_lux:
brillo = min_brillo
else:
brillo = int((lux - min_lux) / (max_lux - min_lux) * (max_brillo - min_brillo) + min_brillo)
led_pwm.duty(brillo) # Establecer el brillo del LED utilizando PWM