【更新】Pico-Template 稳定调试版v1.3.2发布

2021-10-12 16:41:02 浏览数 (1)

【说在前面的话】


首先必须要感谢小伙伴们的踊跃“star”——这给了我莫大的支持和动力,于是Pico-Template又更新了!本文发出时的版本是 v1.3.2,主要带来以下的更新:

  • 解决了 AC6-DebugInSRAM 无法生成 uf2 的问题。现在编译后会正确生成一个 template.uf2。托放到PICO的U盘后会正确执行——完全在SRAM中执行,不会更新Flash哦;
  • 解决了 AC6-DebugInSRAM 中无法简单方便的 Reset 的问题——引入了一个专门的按钮 “Reset Pico”
  • 解决了 AC6-DebugInSRAM 无法在 main() 函数设置断点的问题
  • 提高了模板的代码鲁棒性。

感兴趣的小伙伴赶快更新吧!此外,顺便更新下教程(由于问题都解决了,教程反而变简单了)。

【如何实现调试的“单体自助”】


要想让你手中的Pico变成自带调试器的单片机,你需要访问下面的网址:

https://github.com/majbthrd/pico-debug/releases

下载这里的 pico-debug-gimmecache.uf2 文件(不要下错了哦),留着备用。

此外,我已经对Pico-Template进行了更新,发布了v1.3.2 版本——对用户来说,MDK工程模板已经为您配置好了一切。新版本的获取方式请参考往期文章《【独家】我就要用MDK来开发树莓Pico,怎么地吧!》或者,在订阅【裸机思维】公众号后,发送关键字“pico”来获取网盘链接。(有机会的话,还是跪求一个Star,谢谢啦)。

【如何享受调试的最佳姿势】


对大部分人来说,Pico-Template所提供的 AC6-DebugInSRAM 实现了“编译、下载、调试”一条龙服务。

由于pico-debug所实现的CMSIS-DAP调试器运行在SRAM中,因此很容易注意到每次对Pico进行断电后,都需要重新进行一次如下步骤:

1、按住Pico上的白色按钮不放、将Pico的USB接口连接PC。当我们在文件管理器中发现一个新的叫做 PRI-RP2 的U盘时,说明Pico已经成功进入烧录准备状态。

2、将pico-debug-gimmecache.uf2 拖放到U盘中即可。

3、如果一切顺利,我们可以在资源管理器中发现一个新的HID-compiliant设备。

这里,还请放宽心,这个步骤每次断电后的第一次连接都只要做一次就行——不必每次启动调试都做一遍

打开MDK,切换到 AC6-DebugInSRAM 工程配置。在Options for Target窗口中,我们可以从Debug选项卡里看到:调试器已经被选择为 CMSIS-DAP Debugger。

单击 Settings,我们应该看到 Pico 的其中一个 Cortex-M0 已经被检测到了:

注意:由于MDK工程模板中所有三个工程configuration(也就是AC6-flashAC6-RunInSRAMAC6-DebugInSRAM)都使用了同一个Objects文件夹来保存生成的 axf 文件,为了避免误会,在开始AC6-DebugInSRAM环境下的调试之前,一定要对当前工程进行至少一次重新编译——以确保载入的template.axf是对应当前工程配置的。

对工程进行编译后,单击调试按钮,我们应该看到指针停在了Reset_Handler程序上:

【如何对RunInFlash和RunInSRAM进行调试】


除了前面所说的 AC6-DebugInSRAM 方案外,Pico-Template模板还提供了一般工程开发所需的 AC6-FlashAC6-RunInSRAM 两个配置。

它们的调试本身并不复杂,但这两个配置有自己的难言之隐,即:每次重新编译工程后,都需要用户:

  • 首先,通过常规方法将 uf2 文件拖放到 RPI-RP2 盘中完成“手工下载”;
  • 紧接着,还要再次Boot Pico使其进入U盘模式后拖放 pico-debug-gimmecache.uf2 使Pico具有调试能力
  • 最后才是通过MDK进入调试模式。

总结一下:AC6-FlashAC6-RunInSRAM的调试优点是非常方便、没有弯弯绕;缺点是下载纯手工。

【复位Pico的正确姿势】


由于树莓派Pico的特殊性,目前MDK中的普通的复位按钮其实并不足以正确对芯片进行复位。为此,Pico-Template提供了专门的方法——一个由脚本生成的按钮“Reset Pico”:

如果你的调试界面中找不到它,不要紧,在启动调试后,顺着菜单依次找到“View->Toolbox Window”,点开即可。

【说在后面的话】


最后提醒下,一定要用MDK 5.35极其以上版本来体验哦

感谢大家的支持,我会一如既往的进行更新的~


原创不易,

如果你喜欢我的思维、觉得我的文章对你有所启发,

请务必 “点赞、收藏、转发” 三连,这对我很重要!谢谢!

欢迎订阅 裸机思维

0 人点赞