from machine import Pin, ADC, PWM
import time
# Função map simples
def map_value(x, in_min, in_max, out_min, out_max):
return int((x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min)
# Configuração do potenciômetro
pot = ADC(Pin(35))
pot.atten(ADC.ATTN_11DB)
pot.width(ADC.WIDTH_12BIT)
# Configuração do servo
servo = PWM(Pin(26), freq=50)
while True:
val = pot.read() # lê valor 0-4095
angle = map_value(val, 0, 4095, 0, 180) # converte para 0-180°
# Ajuste do duty para servo (aprox.)
duty = map_value(angle, 0, 180, 40, 115)
servo.duty(duty)
print("Analog value:", val, "=> Angle:", angle)
time.sleep(0.1)