from machine import Pin, PWM
from hcsr04 import HCSR04
import time
# Setup sensore e LED
sensore = HCSR04(trigger_pin=4, echo_pin=5)
#Led
led_pwm = PWM(Pin(6)) # Crea oggetto PWM sul pin 2
led_pwm.freq(1000) # Frequenza PWM a 1000Hz
# Distanze per il range di luminosità
DIST_MAX = 200 # Distanza massima (LED spento)
DIST_MIN = 10 # Distanza minima (LED al massimo)
while True:
distanza = sensore.measure_distance_cm()
if distanza is not None:
# Limita la distanza al range definito
if distanza > DIST_MAX:
distanza = DIST_MAX
if distanza < DIST_MIN:
distanza = DIST_MIN
# Converte la distanza in valore PWM (0-65535)
# Più vicino = più luminoso
luminosita = int(65535 * (DIST_MAX - distanza) / (DIST_MAX - DIST_MIN))
# Imposta la luminosità del LED
led_pwm.duty_u16(luminosita)
time.sleep(0.1)