Pico W / Pico 2 W 与非 W 板怎么区分
无线与非无线的 Pico 板外观相近;三处官方差异每次都能分开它们:LED 在哪、SWD 焊盘在哪、有没有无线电屏蔽罩。另附卷名陷阱。
本页回答的问题:"我这块是 Pico W / Pico 2 W 还是普通 Pico / Pico 2——这重要吗?"
比命名显示的更重要:无线板把板载 LED 从 GP25 挪走,且占用的内部 GPIO 不同,为非 W 板写的固件和教程会安静地不工作。官方文档把每代的四个变体放在一起描述并明确说明差异。
三项每次都能分开它们的检查
| 检查 | 非 W(Pico、Pico H、Pico 2、Pico 2 with headers) | 无线(Pico W、Pico WH、Pico 2 W、Pico 2 W with headers) | 来源 |
|---|---|---|---|
| 板载 LED | 在 MCU 的 GP25 上(PICO_DEFAULT_LED_PIN 25) | 在无线芯片上(WL_GPIO0);W 板头文件没有定义 PICO_DEFAULT_LED_PIN | 文档布局章节 + SDK 头文件 pico.h / pico_w.h |
| SWD 焊盘 | 在板下缘 | 在 MCU 正下方中央 | 文档调试连接器表 |
| 无线电 | 无——MCU 周围是光板 | CYW43439 无线芯片 + 板载天线 | 文档无线型号章节 |
板上丝印的型号名可读时最快;丝印不清时用上面三项检查。
内部 GPIO 差异(固件为什么在乎)
两代的 40 个排针位置相同,但板内 GPIO 做不同的工作:
| GPIO | 非 W 用途 | 无线用途 |
|---|---|---|
| GP23 | SMPS 省电控制 | 无线使能(WL_REG_ON) |
| GP24 | VBUS 检测 | 无线数据出/入 + 主机唤醒(共享) |
| GP25 | 用户 LED | 无线 SPI 片选(WL_CS)——当 LED 驱动会破坏无线通信 |
| GP29 | VSYS 监控(ADC) | 无线 SPI 时钟与 VSYS 监控共享同一针 |
四者在两种板上都不引出到排针。变化的是驱动它们(或假设 GP25 会闪)的后果。
卷名陷阱
BOOTSEL 模式下的大容量存储卷名,RP2040 板是 RPI-RP2、RP2350 板是 RP2350——不含 W 后缀。Pico 2 W 与 Pico 2 显示同一个"RP2350"盘。卷名只告诉你世代,永远不告诉你无线版本。
软件能判断自己跑在哪块板上吗?
官方答案:"用 MicroPython 写的软件没有直接查看硬件来判断自己运行在 Pico 还是 Pico W 上的方法"——但可以间接探测,例如检查固件的 network 模块是否包含 WLAN 支持。C/C++ 则不同:SDK 构建目标(pico_w / pico2_w 对比 pico / pico2)是构建时事实,不是运行时发现。
本页不能告诉你的
- 你该买哪个版本——那是项目问题;先想清楚是否需要 Wi-Fi/蓝牙,再看板卡页。
- 预焊排针版本(H / WH / "with headers")只改变排针焊接与 SWD 连接器形式(通孔焊盘对带键 JST 式)——电路板相同,上面的检查同样适用。
板卡
- Raspberry Pi Pico W 与 Raspberry Pi Pico 2 W——含无线 claim 的完整记录。
- Raspberry Pi Pico 与 Raspberry Pi Pico 2——非 W 姊妹板。
下一步:Pico W / Pico 2 W:UF2、BOOTSEL 与板载 LED。
来源
- Raspberry Pi Pico 系列官方文档(commit 21d772e7)——变体表、布局章节(LED 接线)、调试连接器表、无线型号章节、MicroPython"判断硬件"注记。
- pico-sdk 板级头文件(tag 2.3.1)——pico.h 对比 pico_w.h / pico2_w.h:LED 针有无与 CYW43 引脚宏。