1 分钟搞懂 UF2:Pico 刷固件的 “拖放式” 魔法,原理全解析


这个电路包含 Pico 的两个关键功能模块:一是控制‘启动状态’的 BOOT 模式选择电路,二是存程序的 Flash 闪存电路 —— 前者帮你切换‘运行已存程序’和‘装新程序’的状态,后者是 Pico 存程序的‘内置小硬盘’,下面具体讲它们的作用:
- 板载的 2MB QSPI 闪存可以使用串行线调试端口或通过特殊的 USB 大容量存储设备模式(重新)编程。
- 上方为 BOOT 模式选择电路,启动模式切换按键与 RP2040 的 QSPI_SS 引脚串联一个 1kΩ 相连接,串联电阻可以使得在 BootLoader 模式时,按下复位时运行 Flash 的内容。
当 RP2040 上电时,QSPI_SS 引脚将自动默认为上拉,RP2040 在启动过程中会检查这个 I/O 的值,当 QSPI_SS 为逻辑 0,则 RP2040 进入引导加载驱动 BootLoader 模式。
- 未按 BOOTSEL 按键时,复位或上电:进入 normal 普通模式,MCU从 Flash 里启动已存的程序。
- 按下 BOOTSEL 按键时,复位或上电:MCU进入 “装新程序” 的BootLoader模式,此时 Pico 会变成电脑里的 “U 盘”,拖入 uf2 格式的程序文件就能更新固件。
开机时有短暂一段时间不能保证 QSPI_SS 引脚的状态,增加一个上拉电阻就可得到保证。W25Q128 这款 Flash 闪存外部上拉电阻是不必要的,所以标记为 NO-FIT,焊接时可忽略不焊。
下方为 Flash 闪存电路,其电源供电和与芯片的 3.3V 电源引脚处于同一电压,W25Q128 的引脚与 RP2040 的 QSPIx 引脚相连接。在 Flash 闪存 W25Q128 的电源引脚(VCC)附近放置 2.2uF 和 100nF 的滤波电容,以便提供稳定的 3.3V 供 W25Q128JVSIQ 所使用。


这个电路包含 Pico 的两个关键功能模块:一是控制‘启动状态’的 BOOT 模式选择电路,二是存程序的 Flash 闪存电路 —— 前者帮你切换‘运行已存程序’和‘装新程序’的状态,后者是 Pico 存程序的‘内置小硬盘’。
浙公网安备 33010602011771号