import machine
import utime
# Configuration de l'ADC
adc = machine.ADC(26) # Utilisez la broche 26 comme entrée ADC
adc_width = 12 # Résolution de 12 bits
adc.atten(machine.ADC.ATTN_11DB) # Gamme de tension de 0-3.6V
# Configuration du PWM
pwm = machine.PWM(machine.Pin(0)) # Utilisez la broche 0 pour PWM
pwm.freq(1000) # Fréquence PWM en Hz (ajustez selon vos besoins)
# Fonction pour lire la tension de l'ADC et ajuster le PWM en conséquence
def read_adc_and_adjust_pwm():
voltage = adc.read_u16() * 3.3 / (2 ** adc_width - 1) # Lire la tension
duty_cycle = int((voltage / 3.3) * 1023) # Convertir la tension en devoir (0-1023)
pwm.duty_u16(duty_cycle) # Définir le devoir du PWM
while True:
read_adc_and_adjust_pwm()
utime.sleep_ms(100) # Attendre un peu avant la prochaine lecture