Cómo leer puerto analógico con Raspberry Pi Pico usando MicroPython


En esta guía te mostraré cómo conectar un potenciómetro al Raspberry Pi Pico y leer su valor usando MicroPython

Cómo leer puerto analógico con Raspberry Pi Pico usando MicroPython
oscar Escrito por oscar 21 July 2025 76 0

En esta guía te mostraré cómo conectar un potenciómetro al Raspberry Pi Pico y leer su valor usando MicroPython.

Instalación y configurar el entono de trabajo

Configurar entorno de trabajo

Para trabajar con este post debemos tener el entorno de trabajo instalado y configurado, ademas del firmware cargado a la raspberry pi pico, en el post instalar entorno de trabajo, explico a detalle como se hace, aunque voy a dar la explicación resumida a continuación.

Configurar para uso en raspberry pi pico

Antes de realizar el primer programa y cargarlo a la tarjeta, debemos realizar la configuración de thonny y cargar el firmware a la tarjeta raspberry pi pico, en post instalar entorno de trabajo tambien se explica a detalle como se debe hacer esta configuración.

Selector de interprete MicroPython
Selector de interprete MicroPython

Raspberry pi pico

Tenemos una imagen que se ha obtenido de la hoja de datos de las raspberry pi pico. Mas informacion en http://codigoelectronica.com/blog/hoja-de-datos-raspberry-pi-pico

Pineas raspberry pi pico
Pineas raspberry pi pico

Materiales necesarios

  • 1 Raspberry Pi Pico
  • 1 Potenciómetro (10kΩ recomendado)
  • 3 cables jumper macho-macho
  • Protoboard (opcional, pero recomendada)
  • Conexión USB a tu PC
  • Thonny IDE o cualquier entorno de desarrollo compatible con MicroPython

¿Qué es un pin analógico en Raspberry Pi Pico?

El Raspberry Pi Pico no tiene un ADC externo, pero sí incluye 3 pines analógicos integrados, que permiten leer voltajes variables en un rango de 0V a 3.3V. Estos pines están conectados al ADC interno de 12 bits del microcontrolador RP2040.

Los pines analógicos del Raspberry Pi Pico son:

  • GP26 → ADC0
  • GP27 → ADC1
  • GP28 → ADC2

Conexión del potenciómetro

Un potenciómetro tiene 3 pines:

  • Pin 1: Conéctalo a 3.3V del Raspberry Pi Pico. Pin 36
  • Pin 2 (central): Salida variable, conéctalo al GP26 (ADC0) pin 31.
  • Pin 3: Conéctalo a GND. Pin 38
Circuito rpi pico analógico
Leyenda
Raspberry Pi Pico Potenciómetro
3.3V (pin 36) Pin 1
GND  (pin 38) Pin 3
GP26 (pin 31) Pin 2 (salida variable)

¿Cómo funciona analogRead en MicroPython?

En MicroPython no existe directamente la función analogRead como en Arduino. En su lugar, se usa la clase ADC del módulo machine.

La lectura de un ADC en el Pico devuelve un valor entre 0 y 65535 (escalado de los 12 bits a 16 bits). Puedes convertir ese valor a voltaje si lo deseas.

Código en MicroPython

from machine import ADC, Pin
from time import sleep

# Configurar el pin GP26 como entrada ADC
pot = ADC(Pin(26))

while True:
    lectura = pot.read_u16()  # Valor entre 0 y 65535
    print("Valor ADC:", lectura)
    sleep(0.5)

Resultado en la consola

rpi pico analógico
rpi pico analógico

Cuando giras el potenciómetro:

  • Si está completamente hacia un lado, verás un valor cercano a 0 (0V).
  • Si está completamente hacia el otro lado, será cercano a 65535 (3.3V).
  • En la posición intermedia, los valores oscilarán proporcionalmente.
rpi pico funcionando
rpi pico funcionando

Comentario

Debe aceptar antes de enviar