本文最后修改时间:2022年08月23日 01:57
一、本节简介
本节以树莓派pico开发板为例,介绍如何使用一个pico作为仿真器,给另一个pico仿真调试代码。
二、实验平台
1、硬件平台
1)树莓派pico开发板
①树莓派pico开发板*2
②micro usb数据线*2
2)电脑
2、软件平台
1)VS CODE
三、版权声明
1)作者:甜甜的大香瓜
2)声明:喝水不忘挖井人,转载请注明出处。
3)纠错/业务合作:897503845@qq.com
4)香瓜嵌入式之树莓派群:512598061
5)本文出处:原创连载资料《简单粗暴学树莓派》
6)完整开源资料下载地址(电脑端打开):
opengua.taobao.com
四、实验前提
1、在进行本文步骤前,请先阅读以下章节:
1)《简单粗暴学树莓派》的“第一章至第二章”章节。
2)《How to Debug the Raspberry Pi Pico Using Another Pico!》(外网视频):
https://www.youtube.com/watch?v=0i2gLeBal9Y
2、在进行本文步骤前,请先实现以下章节:
1)《简单粗暴学树莓派》的《香瓜树莓派pico之搭建开发环境(windows)》章节。
五、基础知识
1、大概需要做哪些步骤才能实现仿真?
答:
1)vs code里面的仿真环境搭建(看《香瓜树莓派pico之搭建开发环境(windows)》)。
2)将编译好的picoprobe.uf2固件下载进其中一个pico,此时这个pico就作为仿真器。
3)用杜邦线连接两个pico。
4)使用vs code仿真。
2、两个pico如何接线?
答:
上图正中间的三个引脚(SWCLK、GND、SWDIO),就是SWD接口所用的引脚。
SWD接口是Cortex-M系列控制器的标准接口,例如常用的JLINK、ST-LINK仿真器都具有SWD接口。只要有SWD接口都可以给pico仿真、下载,本文只介绍pico的SWD接口仿真和下载。
如上图,左边的是pico A(仿真器),右边的是pico B(需要仿真的目标板)。
供电来自于pico A的USB,如果想给pico B的USB供电的话接线会更简单,但需要确保中间的红色电源线断开(黑色的不能断,需要共地)。
除了3个仿真引脚,官方推荐的硬件连接图还增加了TX和RX的串口引脚。方便打印出调试信息。
香瓜接的简化版,如下图:
六、实验步骤
1、连接硬件(包括usb插电脑通电)
2、命令行调试
1)使用“WIN+R”+“CMD”,打开两个命令行工具(不要使用Developer Command Prompt for VS 2022,环境不一样),左右各摆放一个。
2)左边的依次输入:
D: cd D:\GUA_PICO\openocd openocd –f interface/picoprobe.cfg –f target/rp2040.cfg –s tcl |
3)右边的依次输入:
D: cd D:\GUA_PICO\pico-examples\build\blink arm-none-eabi-gdb blink.elf |
如果运行提示找不到gcc工具链,是Arm GNU Toolchain工具没有装好。
4)右边的继续输入:
target remote localhost:3333 load monitor reset init continue |
此时就已经在全速运行,可以看到目标板的led在闪烁。
3、选择工程进行编译,并点击仿真