使用picoprobe调试树莓派PICO(附调试包)
本站所有内容除特殊注明均遵守:署名-非商业性使用-相同方式共享(CC BY-NC-SA)协议
本文章纯原创,转载请注明出处!
看了下网上的树莓派调试的资料,要么使用 stlink,要么使用树莓派4B,要么按官方的来,使用一个树莓派PICO调试另一个,但连编译后的openocd都不给一个嘛。。。。。
今天来写一篇:在 Windows 下使用一个树莓派PICO调试另一个,基于官方的 picoprobe
准备材料:
- 树莓派 PICO 两片
- USB 线一根
- 杜邦线若干
下载需要的资源
按官方的教程,你需要编译专门的 openocd 、编译 picoprobe 固件、下载 USB 驱动
然而,这些我已经帮你们做好了,下载吧:树莓派PICO调试包 ,密码: 50w56o
防失效,补个档(两个内容一样,建议使用第一个)
1 | https://pan.skyone.host/s/PKH0 //密码:50w56o |
包含以下文件:
1 | ├── interface |
烧录调试固件
这一步需要烧录 picoprobe
固件(是烧录到用来调试的PICO,不是要调试的PICO哦)
在我分享的 树莓派PICO调试包
中找到 picoprobe.uf2
按住树莓派PICO的 BOOTSEL
按钮,USB 连电脑,把 picoprobe.uf2
拖入磁盘中
完成!
安装USB驱动
打开调试包的 zadig-2.7.exe
,连接烧录过 picoprobe
驱动的 PICO,按如图选择:
等待驱动安装完成······
在调试包文件夹下运行以下命令:
1 | ./openocd -f interface/picoprobe.cfg -f target/rp2040.cfg -s tcl |
如果显示以下内容,表示成功
1 | Open On-Chip Debugger 0.11.0-g4f2ae61 (2022-05-30-21:15) |
接线
USB拔掉,接线千万不要接错!!!
接线方式如下表
调试用的PICO | 要调试的PICO |
---|---|
GND | GND |
GP2 | SWCLK |
GP3 | SWDIO |
GP4/UART1 TX | GP1/UART0 RX |
GP5/UART1 RX | GP0/UART0 TX |
VSYS | VSYS |
这里也贴一张官方给的图(在官方的getting-started-with-pico Appendix A: Picoprobe Wiring)

确认一遍没连错,进入下一步
开始调试
这一步分两部分:命令行调试、IDE 调试
命令行调试
将用来调试的PICO用USB连上电脑,在调试包目录运行:
1 | ./openocd -f interface/picoprobe.cfg -f target/rp2040.cfg -s tcl |
然后在你 编译好的准备调试的固件的目录 打开一个新的命令行,运行:
1 | arm-none-eabi-gdb <你编译的固件的名称> |
烧录完成,开始调试把!
注:如果没有树莓派PICO的开发环境, 欢迎看我的另一篇很早前写的文章
IDE 调试
打开 Clion,加载你的项目,这里我以打印“1”的程序为例:

右下角,选择 Debug
模式,并选择 编辑配置
添加一个 嵌入式GDB服务器
的配置
按如图所示的填,其中:
目标和可执行文件按你们的项目填
GDB :选择 arm-none-eabi-gdb
GDB 服务器:选择调试包里的 openocd
(这里我改了名字)
GDB 服务器参数:填 -f interface/picoprobe.cfg -f target/rp2040.cfg -s tcl
执行目录:填调试包的目录
接下来这么做就不用我说了把
【完】