Fundamentos · 6 min de lectura

¿Qué es la Raspberry Pi Pico? Instalación de MicroPython, pines y primeros proyectos

Qué es la Raspberry Pi Pico y en qué se diferencia de una Raspberry Pi y de Arduino. RP2040, Pico W y Pico 2, pines, instalación de MicroPython con Thonny y primeros códigos de LED, botón, PWM y lectura analógica.

La Raspberry Pi Pico es una placa de microcontrolador muy barata, del tamaño de la palma de la mano, basada en el RP2040, un chip diseñado por la propia Fundación Raspberry Pi. Su gran ventaja es que se programa en MicroPython, es decir, en Python: escribes el código, lo ejecutas y ves el resultado al momento, sin esperar a compilar. Por eso es una puerta de entrada fantástica para estudiantes que aprenden Python y para quien empieza en electrónica. Si lo prefieres, también puedes programarla en C/C++ o con el Arduino IDE.

Placa de microcontrolador Raspberry Pi Pico
Raspberry Pi Pico: el chip cuadrado del centro es el RP2040; en un extremo están el conector micro USB y el botón BOOTSEL, y a cada lado hay 20 pines.

¿Qué es la Raspberry Pi Pico? Diferencias con una Raspberry Pi

Aunque el nombre se parezca, la Pico no es un ordenador como la Raspberry Pi 4 o 5. No tiene sistema operativo, salida HDMI ni escritorio; igual que un Arduino, es una placa de microcontrolador que ejecuta un único programa. El programa arranca en cuanto le das corriente, consume muy poca energía y hace en tiempo real tareas como leer sensores, encender LED o mover motores.

CaracterísticaRaspberry Pi PicoArduino Uno R3Raspberry Pi 4 / 5
TipoPlaca de microcontroladorPlaca de microcontroladorOrdenador de placa única
Sistema operativoNo tieneNo tieneLinux
LenguajeMicroPython, C/C++, ArduinoC/C++ (Arduino)Python y casi cualquier lenguaje
Tiempo de arranqueInmediatoInmediato20–30 segundos
ConsumoUnos 25 mAUnos 45 mAVarios vatios
Uso típicoSensores, LED, motores, temporizaciónSensores, LED, motoresCámaras, servidores, ordenador de escritorio

Características técnicas: Pico, Pico W y Pico 2

CaracterísticaPicoPico WPico 2
ChipRP2040, doble núcleo Cortex-M0+, 133 MHzRP2040, doble núcleo Cortex-M0+, 133 MHzRP2350, doble núcleo Cortex-M33, 150 MHz
RAM264 KB264 KB520 KB
Memoria flash2 MB2 MB4 MB
InalámbricoNoWi-Fi (2,4 GHz) + BluetoothNo (sí en la Pico 2 W)
GPIO utilizables262626
Entradas analógicas (ADC)3 canales, 12 bits3 canales, 12 bits3 canales, 12 bits
Tensión de trabajo3,3 V3,3 V3,3 V

Pines de la Pico

La Pico tiene 40 pines en total a lo largo de sus dos lados. Todos los 26 pines GPIO, de GP0 a GP28, pueden dar PWM, y las comunicaciones I2C, SPI y UART se pueden usar en varios pines alternativos. Las entradas analógicas solo están en GP26, GP27 y GP28. Puedes ver el mapa completo en la herramienta Pinout; los pines de alimentación y especiales más importantes son:

PinFunción
VBUS5 V que llegan por USB
VSYSEntrada de alimentación externa (1,8–5,5 V)
3V3(OUT)Salida de 3,3 V para sensores (hasta unos 300 mA)
GNDTierra (hay 8 en la placa)
GP0–GP22Entrada/salida digital, PWM, I2C, SPI, UART
GP26–GP28Además, entradas analógicas (ADC0–ADC2)
RUNReinicia la placa al unirlo a GND
Los pines de la Pico trabajan a 3,3 V y no toleran 5 V. No conectes directamente sensores con salida de 5 V; pon en medio un Divisor de tensión. Por defecto cada pin da 4 mA y como máximo 12 mA; para un LED basta una resistencia de 220–330 Ω, pero cargas como motores y relés deben ir siempre con un transistor.

Instalar MicroPython (con Thonny)

  1. Descarga e instala Thonny desde thonny.org.
  2. Mantén pulsado el botón BOOTSEL de la Pico mientras conectas el cable USB al ordenador; la Pico aparecerá como una unidad llamada RPI-RP2 (RP2350 en la Pico 2).
  3. En el menú del intérprete, abajo a la derecha de Thonny, elige MicroPython (Raspberry Pi Pico) y usa «Install or update MicroPython» para instalar la versión adecuada para tu placa (Pico, Pico W o Pico 2). También puedes descargar el archivo .uf2 de micropython.org y arrastrarlo a la unidad.
  4. Al terminar la instalación, la Pico se reinicia. Si ves el símbolo >>> en el Shell de la parte inferior de Thonny, ya está lista.
  5. Si guardas tu código en la Pico con el nombre main.py, se ejecutará automáticamente cada vez que se encienda la placa, aunque no esté conectada al ordenador.

Primer programa: hacer parpadear el LED integrado

MicroPython
1from machine import Pin
2import time
3
4led = Pin(25, Pin.OUT)      # Pico'da dahili LED; Pico W ve Pico 2 W'de Pin("LED") yaz
5                            # onboard LED on Pico; use Pin("LED") on Pico W / Pico 2 W
6
7while True:
8    led.toggle()            # durumu tersine çevir / flip the state
9    time.sleep(0.5)

Controlar un LED con un botón

Conecta un LED al GP15 con una resistencia de 220 Ω y un botón al GP14. La otra pata del botón va a GND y se activa la resistencia pull-up interna de la Pico; así el botón lee 1 cuando está suelto y 0 cuando está pulsado:

MicroPython
1from machine import Pin
2
3led = Pin(15, Pin.OUT)
4button = Pin(14, Pin.IN, Pin.PULL_UP)   # butonun diğer ucu GND'de / other leg to GND
5
6while True:
7    led.value(not button.value())        # basılıyken yanar / on while pressed
El chip RP2350 de la Pico 2 tiene un problema conocido (E9) con sus resistencias pull-down internas: a veces el pin se queda atascado en HIGH. Conectar el botón a GND y usar PULL_UP es lo más seguro tanto en la Pico como en la Pico 2. Para más detalles sobre la conexión de botones, mira Cómo conectar un pulsador a Arduino; la lógica es la misma.

Brillo de un LED con PWM

Todos los GPIO de la Pico pueden dar PWM. En MicroPython el valor de duty va de 0 a 65535. El código siguiente enciende el LED poco a poco y vuelve a empezar; la idea del PWM se explica en detalle en ¿Qué es PWM?

MicroPython
1from machine import Pin, PWM
2import time
3
4led = PWM(Pin(15), freq=1000)
5
6while True:
7    for d in range(0, 65536, 1024):   # yavaşça yan / fade in
8        led.duty_u16(d)
9        time.sleep_ms(10)

Lectura analógica y sensor de temperatura integrado

Conecta la pata central de un potenciómetro al GP26 y las de los extremos a 3V3 y GND. read_u16() devuelve un valor de 0 a 65535. La Pico lleva además un sensor de temperatura interno conectado al 4.º canal del ADC; la medida es aproximada, pero es una forma divertida de leer la temperatura sin piezas extra:

MicroPython
1from machine import ADC
2import time
3
4pot = ADC(26)                    # GP26 (ADC0) / potansiyometre orta ucu / pot wiper
5sensor = ADC(4)                  # dahili sıcaklık sensörü / internal temperature sensor
6
7while True:
8    value = pot.read_u16()                       # 0–65535
9    volts = sensor.read_u16() * 3.3 / 65535
10    temp = 27 - (volts - 0.706) / 0.001721       # °C (yaklaşık / approximate)
11    print(value, round(temp, 1))
12    time.sleep(1)

Programar la Pico con el Arduino IDE

Si prefieres C++ y las librerías de Arduino, también puedes usar la Pico con el Arduino IDE. Añade https://github.com/earlephilhower/arduino-pico/releases/download/global/package_rp2040_index.json en el campo de URLs adicionales de tarjetas de Archivo > Preferencias e instala desde el Gestor de tarjetas el paquete Raspberry Pi Pico/RP2040/RP2350 de Earle Philhower. Para la primera carga, conecta la placa manteniendo pulsado BOOTSEL; después la carga funciona con normalidad. El ejemplo Blink con LED_BUILTIN y la mayoría de las librerías de Arduino funcionan sin problemas.

¿Pico, ESP32 o Arduino?

Lo que necesitasPlaca recomendada
Primer proyecto, sensores de 5 V, más ejemplos y recursosArduino Uno
Wi-Fi, Bluetooth, internet, control desde el móvilESP32 o Pico W
Aprender a programar en PythonRaspberry Pi Pico
Precio muy bajo, temporización precisa (PIO)Raspberry Pi Pico
Proyectos con cámara y audioESP32-S3 o ESP32-CAM

Para proyectos inalámbricos, conoce el ESP32 en ¿Qué es el ESP32? Una ventaja exclusiva de la Pico son sus bloques PIO (entrada/salida programable): se encargan de tareas con temporización crítica, como las tiras LED WS2812B o protocolos de comunicación propios, sin cargar al procesador.

Ideas de proyectos con la Raspberry Pi Pico

  • Semáforo: un semáforo con tres LED que se encienden por turnos.
  • El coche fantástico: un efecto de luz que va y viene por seis LED.
  • Botones e interrupciones (IRQ): código que detecta una pulsación sin esperar al bucle principal.
  • Ciclo de color RGB: un efecto arcoíris en un LED RGB con tres canales PWM.
  • Servidor web con la Pico W: controla un LED o un relé desde una página en el móvil.
  • Mini termómetro: muestra el sensor de temperatura interno en una pantalla OLED.

Errores comunes y cómo solucionarlos

  • No aparece la unidad RPI-RP2: la placa se conectó sin pulsar BOOTSEL o el cable es solo de carga; usa un cable de datos.
  • Thonny no encuentra la placa: el intérprete elegido es incorrecto o MicroPython no está instalado.
  • El LED no se enciende en la Pico W: en la Pico W el LED integrado está conectado al chip inalámbrico; usa Pin("LED") en lugar de Pin(25).
  • Conectar señales de 5 V: los GPIO son de 3,3 V; las señales de 5 V pueden dañar el pin.
  • El código no funciona al desconectar el ordenador: no se guardó en la Pico como main.py.
  • Demasiada tensión en VSYS: VSYS admite como mucho 5,5 V; no conectes directamente un cargador de 9 V o 12 V.

Con su bajo precio y su soporte de Python, la Raspberry Pi Pico es una de las formas más fáciles de unir programación y electrónica. Tienes lo básico de los LED en ¿Qué es un LED?; en la app BlueGrays encontrarás proyectos con la Pico de LED, semáforo, coche fantástico, interrupciones con botón, efecto de respiración con PWM y ciclo de color RGB, paso a paso con esquemas y código MicroPython.

Preguntas frecuentes

¿La Raspberry Pi Pico es un ordenador Raspberry Pi?

No. La Pico es una placa de microcontrolador fabricada por la Fundación Raspberry Pi; no tiene sistema operativo, salida de pantalla ni escritorio. Como un Arduino, ejecuta un único programa. Las Raspberry Pi 4 y 5, en cambio, son ordenadores completos con Linux.

¿En qué lenguaje se programa la Raspberry Pi Pico?

Lo más habitual es MicroPython: se instala fácilmente con Thonny y quien sabe Python puede empezar enseguida. También se pueden usar el SDK oficial de C/C++ y el Arduino IDE (con el paquete de Earle Philhower). CircuitPython también es compatible.

¿Qué diferencia hay entre la Pico y la Pico W?

La Pico W añade un chip inalámbrico con Wi-Fi de 2,4 GHz y Bluetooth; todo lo demás es igual. Como el LED integrado de la Pico W está conectado a ese chip, en el código se usa Pin("LED") en lugar de Pin(25).

¿La Raspberry Pi Pico funciona con 5 V?

La placa se puede alimentar con los 5 V del USB o con 1,8–5,5 V en el pin VSYS. Pero los pines GPIO trabajan a 3,3 V y no toleran 5 V, así que no debes conectarles señales de 5 V directamente.

¿Cuántas entradas analógicas tiene la Pico?

Tiene tres entradas analógicas accesibles: GP26 (ADC0), GP27 (ADC1) y GP28 (ADC2). Además, el 4.º canal del ADC está conectado al sensor de temperatura interno del chip. En MicroPython, read_u16() devuelve un valor de 0 a 65535.

¿Puedo programar la Raspberry Pi Pico con el Arduino IDE?

Sí. Al instalar en el Arduino IDE el paquete de placas Raspberry Pi Pico/RP2040/RP2350 de Earle Philhower, puedes programar la Pico con órdenes de Arduino y usar la mayoría de sus librerías. Para la primera carga hay que conectar la placa manteniendo pulsado el botón BOOTSEL.

Ver todos los proyectos
Parpadeo LED Integrado Raspberry Pi Pico (GP25 LED Onboard)
#147Principiante

Parpadeo LED Integrado Raspberry Pi Pico (GP25 LED Onboard)

¡El proyecto de apertura de la serie Raspberry Pi Pico! Hacemos parpadear el LED integrado (LED verde conectado a GP25) para verificar que la placa funciona — un experimento clásico "Hello World". SIN componentes externos, solo Pico y cable USB. El código está escrito en **MicroPython** (el lenguaje oficialmente respaldado por la Raspberry Pi Foundation). Aprende la clase `machine.Pin`, el modo `Pin.OUT`, los métodos `led.on()/off()` y `time.sleep()` en Thonny IDE. Sigue cada cambio en vivo en l

5.0(1)
9
Encendido de un LED externo con la Raspberry Pi Pico (GP14 + placa de pruebas)
#148Principiante

Encendido de un LED externo con la Raspberry Pi Pico (GP14 + placa de pruebas)

El siguiente paso tras el LED integrado de Pico: conectar un LED externo a la placa de pruebas y controlarlo a través del pin GP14. Con este proyecto aprenderás a utilizar cualquier pin GPIO de uso general del Pico como salida, la polaridad del LED (patilla larga = ánodo/+, patilla corta = cátodo/–) y por qué es imprescindible utilizar una resistencia limitadora de corriente (220 Ω). Si no colocas la resistencia, el LED recibirá una corriente excesiva y podría quemarse. El circuito es muy sencil

4.5(2)
7
Simulador de Semáforo Raspberry Pi Pico (3 LEDs Secuenciales, GP11/GP12/GP13)
#150Principiante

Simulador de Semáforo Raspberry Pi Pico (3 LEDs Secuenciales, GP11/GP12/GP13)

Simulamos un semáforo real con LEDs rojo, amarillo y verde. Verde 4 seg "pase", amarillo 1,5 seg "prepárese", rojo 3 seg "detenga" y rojo+amarillo 1 seg "arranque" (patrón europeo). Aprende definición de función, lógica de máquina de estados y sincronización multi-GPIO. Circuito simple: 3 LEDs en GP11/GP12/GP13.

4.0(1)
12
Raspberry Pi Pico LED Secuencial (6 LEDs, GP14 → GP9)
#153Principiante
Premium

Raspberry Pi Pico LED Secuencial (6 LEDs, GP14 → GP9)

¡Animación clásica de LED secuencial con Pico — versión 6 LEDs! 🌊 6 LEDs se encienden de izquierda a derecha secuencialmente. Aprende lista Python, comprensión de listas ([Pin(p, Pin.OUT) for p in LED_PINS]), bucle for con control de pines y enumerate(). 6 LEDs en GP9-GP14, cada uno con resistencia 220Ω. Código muy limpio: en lugar de definir 6 LEDs uno por uno, usamos una lista — incluso 100 LEDs mantendrían el código igual. Simula en Wokwi o construye en 5-7 minutos en breadboard.

0.0(0)
8
Raspberry Pi Pico LED Controlado por Botón (Push, GP14 + GP2)
#155Principiante
Premium

Raspberry Pi Pico LED Controlado por Botón (Push, GP14 + GP2)

¡Primer proyecto de **entrada** con Pico — lectura de botón! 🔘 LED se enciende mientras el botón está presionado. Aprende `Pin.IN`, `Pin.PULL_UP` y `buton.value()`. GP14 LED, GP2 botón con PULL_UP interno. Presionado = 0, liberado = 1 — estándar.

0.0(0)
11
Raspberry Pi Pico Botón Debounce: IRQ vs Software Polling (GP5 + GP4)
#159Intermedio
Premium

Raspberry Pi Pico Botón Debounce: IRQ vs Software Polling (GP5 + GP4)

¿Una pulsación y el código cuenta 3-4? ¡Es contact bounce! 🔁 Compara 2 métodos de conteo en Serial: polling RAW (captura bounce, cuenta mal) vs IRQ + software debounce (preciso). Aprende física del bounce, software debounce, Pin.irq() interrupt, IRQ_FALLING trigger, ISR handlers, seguridad de variables globales en ISR.

0.0(0)
12
Raspberry Pi Pico PWM LED Fade (Efecto Respiración, GP14)
#160Principiante
Premium

Raspberry Pi Pico PWM LED Fade (Efecto Respiración, GP14)

¡El LED ya no solo parpadea — respira! 🌬️ Con el **PWM** (modulación por ancho de pulso) del Raspberry Pi Pico, el brillo sube y baja lentamente. Aprende la clase machine.PWM, duty_u16() (brillo de 16 bits 0–65535), la frecuencia PWM, bucles range() y salida tipo analógica. Base para mezcla de color RGB, control de motores, servos y buzzer.

0.0(0)
4
Raspberry Pi Pico LED RGB Ciclo de Colores (PWM de 3 Canales, GP11-13)
#161Principiante
Premium

Raspberry Pi Pico LED RGB Ciclo de Colores (PWM de 3 Canales, GP11-13)

¡Un LED, millones de colores! 🌈 Un LED RGB contiene 3 LEDs: rojo, verde y azul. Con un canal PWM del Pico para cada uno, los colores se mezclan: rojo + verde = amarillo, verde + azul = cian, los tres = blanco. El LED recorre 8 colores. Aprende múltiples canales PWM, funciones (def), mezcla RGB, conversión de 8 a 16 bits (x257) y cátodo común vs ánodo común.

0.0(0)
6

Aprende que la Raspberry Pi Pico es un microcontrolador y no un ordenador, la diferencia entre Pico, Pico W y Pico 2, cómo instalar MicroPython y tus primeros proyectos con LED, botón, PWM y lecturas analógicas.

¿Qué es la Raspberry Pi Pico? Instalación de MicroPython, pines y primeros proyectos | BlueGrays