树莓派 Pico RP2040 微控制器全面介绍
RP2040 是树莓派公司精心打造的一款 32 位双核 ARM Cortex-M0+ 微控制器芯片,于 2021 年 1 月正式发布,作为树莓派 Pico 开发板的核心部件,广泛应用于嵌入式开发与创客项目。
RP2040 的核心优势在于高性能、低功耗、小尺寸封装、灵活的 I/O 以及独特的可编程 I/O(PIO)子系统,为开发者提供了极大的灵活性与扩展空间。
RP2040 同时支持 MicroPython、C/C++ 和 TensorFlow Lite 等多种编程语言与框架,适用于创意原型、物联网设备乃至边缘机器学习等各类应用场景。
RP2040 主要技术规格
- 双核 ARM Cortex-M0+ 处理器,主频高达 133MHz
- 264KB 片上 SRAM,划分为六个独立存储区,提升多任务处理效率
- 支持最多 16MB 片外闪存,通过专用 QSPI 总线连接
- DMA 控制器,实现高效数据搬运
- 全连接 AHB 总线交换机,提供灵活的内部互联
- 插值器和整数除法器外设,加速数学运算
- 片上可编程 LDO,用于生成稳定的核心电压
- 2 个片上 PLL,分别用于生成 USB 和核心时钟
- 30 个 GPIO 引脚,其中 4 个可用作模拟输入
外设接口列表
- 2 个 UART 串行接口
- 2 个 SPI 控制器
- 2 个 I2C 控制器
- 16 个 PWM 通道,支持精密脉宽调制
- USB 1.1 控制器与 PHY,支持主机和设备两种模式
- 8 个 PIO 状态机,实现自定义通信协议
看下图,左侧为树莓派官方授权出品的 micro B 接口 Pico,右侧为售价仅 8 元(TB 9.9 包邮,实际到手 8 元)的合宙 Type-C 接口 Pico。两者参数完全一致,合宙版额外增加了 4MB Flash 存储。

一键拖放安装 MicroPython 固件
只需将 Pico 通过 USB 连接至电脑,然后将 MicroPython 固件文件拖放到 Pico 存储盘,即可快速完成安装。
本文整理了可直接下载的 UF2 文件,助您轻松部署 MicroPython 运行环境。
- 通过下方链接下载 MicroPython 的 UF2 文件。Micropython.org 提供最新测试版,树莓派官网提供稳定版,两者文件内容相同,推荐初学者优先使用官网版本。
Micropython.org 下载界面如下所示:

https://www.raspberrypi.com 仅提供一个稳定版本:

- 按住 Pico 开发板上的 BOOTSEL 按钮,然后将 Pico 插入树莓派或 PC 的 USB 接口,待电脑识别出 RPI-RP2 盘符后再松开 BOOTSEL 按钮。
- Pico 会被自动识别为大容量存储设备。

- 将下载的 MicroPython UF2 文件拖入 RPI-RP2 卷。Pico 将自动重启,随后 MicroPython 便开始运行。
您可以通过 USB 串行接口访问 REPL(类似命令行交互环境)。
点亮板载 LED 测试

上述代码可以简化为以下更简洁的版本:
from machine import Pin
import time
led = Pin(25, Pin.OUT)
while True:
led.toggle()
time.sleep(1)


小提示: 若您使用合宙推出的 Type-C 接口 Pico,其板载 LED 同样连接在 GPIO 25 上,代码无需修改。另外,Micropython.org 上的固件更新更频繁,但树莓派官网版本稳定性更高,建议初学者先使用官网版本。
常见问题:
- Q:拖放 UF2 文件后,Pico 没有自动重启怎么办?
A:请检查 USB 线是否支持数据传输(部分充电线无法传输数据),尝试更换一根数据线。另外确保在按住 BOOTSEL 按钮的同时插入 USB,直到电脑识别出 RPI-RP2 盘符后再松开按钮。- Q:代码上传后 LED 不亮怎么办?
A:首先确认固件已正确安装(可重新拖放一次 UF2 文件)。其次检查代码中Pin(25, Pin.OUT)是否写错,Pico 的板载 LED 对应 GPIO 25。如果使用合宙版本,请确认板载 LED 的引脚(合宙 Pico 同样使用 GPIO 25)。最后尝试手动输入print("hello")测试 REPL 是否正常,若不正常可能 USB 驱动问题。- Q:为什么我的电脑没有显示 RPI-RP2 盘符?
A:请按住 BOOTSEL 按钮不放,再插入 USB,直到盘符出现。如果仍未出现,尝试在其他 USB 口或另一台电脑上测试。部分老旧电脑可能需要安装树莓派 Pico 的 WinUSB 驱动。
总结
通过以上步骤,您已成功在树莓派 Pico 上安装 MicroPython 并点亮了板载 LED。接下来可以尝试更复杂的项目,例如使用 I2C 连接传感器、利用 PWM 控制电机,或借助 PIO 实现自定义通信协议。祝您开发愉快!
