Pico W / Pico 2 W——选对 UF2、BOOTSEL 与板载 LED

固件目标有三重区分(pico_w / pico2_w / pico2),BOOTSEL 与所有 Pico 相同,而板载 LED 在无线芯片上——为 GP25 写的代码点不亮它。每条事实附官方来源。

本页回答的问题:"Pico W 或 Pico 2 W 怎么烧录、下载哪个 UF2、为什么我的 LED 闪烁代码点不亮板载 LED?"

第 1 步——下载正确的 UF2

官方文档列出四个独立的 MicroPython 构建;W 后缀是不同的构建,不是同一文件的附加功能。下面每一条都是对应板型的官方下载页——在页面上选 Releases 下最新稳定版的 `.uf2`:

C/C++ 的 SDK 构建目标同样区分:PICO_BOARD=pico_w 或 pico2_w——绝不是 pico/pico2。非 W 构建没有无线支持且 LED 接线不对;失败是安静的。

第 2 步——BOOTSEL,与所有 Pico 相同

接 USB 时按住 BOOTSEL,板卡出现大容量存储卷时松开(Pico W 为 RPI-RP2、Pico 2 W 为 RP2350)。把 UF2 拖入卷;板卡重启进入你的固件。BOOTSEL 代码在掩膜 ROM 里——不可能被覆盖,软件无法把板变砖。

注意陷阱:卷名标识世代(RP2040 对 RP2350),不标识无线版本——见 Pico W 与非 W 的区分。

第 3 步——LED:它不在 GP25 上

W 板最常见的意外。官方口径:

  • 非 W 板的板载 LED 接 MCU 的 GP25。
  • Pico W / Pico 2 W 的板载 LED 接无线芯片(WL_GPIO0);这些板的 SDK 板级头文件没有定义 PICO_DEFAULT_LED_PIN。

所以 Pico 教程里的 GP25 闪烁代码能编译能运行——但什么也不亮。官方点灯方式:

  • MicroPython——连接指南(RP-008257-DS 第 3.4 节)用 Pin("LED", Pin.OUT): ```python from machine import Pin led = Pin("LED", Pin.OUT) led.toggle() ```
  • C/C++ SDK——官方 pico-examples 的 blink 一份源码同时支持两代板:W 板初始化 CYW43 驱动后调用 cyw43_arch_gpio_put(CYW43_WL_GPIO_LED_PIN, on);普通 GPIO 路径(gpio_put)只为定义了 PICO_DEFAULT_LED_PIN 的板编译。

预期结果与失败出口

步骤预期失败时
BOOTSEL + USB出现卷 RPI-RP2(Pico W)/ RP2350(Pico 2 W)充电线——USB 检测不到板
拖入 W 专属 UF2卷自动弹出、板重启进入 MicroPython重新烧录前先核对下载页名称与板型名称一致
闪烁"板载 LED"GP25 代码什么也不亮——设计如此LED 在无线芯片上;见第 3 步

本页不能告诉你的

  • 无线电启用(Wi-Fi 扫描、联网)——那是连接指南的范围;无线库的许可条款摘要在板卡页。
  • 你的板到底是不是 W——不确定时先看 Pico W 与非 W 的区分。

板卡

来源