from machine import ADC, Pin
import time
# --- Configuración del ADC ---
PIN_POT = 34
adc = ADC(Pin(PIN_POT))
adc.atten(ADC.ATTN_11DB) # Permite leer el rango completo 0 - 3.3V
adc.width(ADC.WIDTH_12BIT) # Resolución de 12 bits -> 0 a 4095
VCC = 3.3
MAX_CUENTAS = 4095
while True:
lectura = adc.read() # Valor entre 0 y 4095
voltaje = (lectura / MAX_CUENTAS) * VCC
posicion_porcentaje = (lectura / MAX_CUENTAS) * 100.0
print("ADC: {} | Voltaje: {:.4f} V | Posicion: {:.2f} %".format(
lectura, voltaje, posicion_porcentaje))
PosicionCalculada = (lectura / 4095) * 100
Error = abs(PosicionCalculada - posicion_porcentaje)
print("Posicion Calculada: ",PosicionCalculada, "Error: ",Error)
time.sleep(0.5)