Arduino - Debugging on the Arduino IDE 2.0

Arduino - Debugging on the Arduino IDE 2.0

概述

弄了2块开发板(Mega2560(MCU is ATmega2560), Arduino Nano Every(MCU is ATMega4809)).
安装了最新版的Arduino IDE(2.0.3), 发现这2个板子均不支持单步调试. 只能将程序编译完, 上传到开发板盲跑, 最多打印一些串口调试语句供参考. 这不难为我啊.

手头正好有个固件, 现在硬件都没好呢, 不知道固件是否好使. 如果有问题, 那不好排错和学习啊.

去查资料, 先行的同学提到过, Arduino IDE只支持几种Arduino开发板的单步调试. 很想弄一块能单步调试的Arduino开发板用来辅助排错和学习.
今天在官方站点上找到这个文档了… https://docs.arduino.cc/software/ide-v2/tutorials/ide-v2-debugger

能调试的Arduino开发板的MCU都是ARM M0以上的.
在这里插入图片描述
再往下看, 可以知道只有Arduino Zero自带硬件调试器的, 不需要外接硬件调试器.
在这里插入图片描述
我就定了一块Arduino Zero, 好贵(398元), 这板子哪值这个钱啊, 无奈.

等我用Arduino Zero单步, 将固件工程逻辑理解了, 换个ARM MCU(GPIO, 串口2个)做个板子, 自己实现, 没多少钱啊.

如果手头基于ATmega2560的固件有问题, 可以用Arduino Zero来单步调试, 模拟一下通讯, 单步学习和修正一下. 如果有靠谱的修正, 可以上传到2560开发板上直接跑看看效果.

如果没有官方文档, 如何手工测试哪种开发板能在Arduino IDE 中单步调试?

在这里插入图片描述
如果从下拉框中选了一种开发板, 如果看到左边第3个按钮(debug)是灰的, 就是不支持调试.
不支持调试分2种情况:
*没安装开发板所需要的组件
*真的是开发板不支持单步调试.
将鼠标移动到变灰的调试按钮上, 看提示信息.
在这里插入图片描述
像"Debugging is not supported by xx"这种提示, 就是Arduino IDE真的不支持单步调试这种板子.

如果是刚装完的Arduino IDE, 新选了一种没选过的板子, 调试按钮也是灰的, 但是有不同的提示.
在这里插入图片描述
提示为 “Platform is not installed for xx”, 说明是板子的组件没安装引起的不能调试. 同时, IDE右小角有安装板子组件的提示.
在这里插入图片描述
安装完组件后, 如果提示还为 “Debugging is not supported by xx”, 就是Arduino IDE真的不支持单步调试这种板子
假设没有找到官方文档中关于哪种板子才支持单步调试的说明, 可以自己挨个来选板子, 看调试按钮的状态, 就知道板子是否支持单步调试.
不过一般人也不会这么无聊.
心急火燎的时候, 就更不会去自己实验.
而且就算是实验出来一个可用的开发板列表, 能不能买的到, 是不是很贵都未知.

可以调试的板子的调试按钮状态

因为咱已经从官方文档中知道"Arduino Zero开发板"是支持在Arduino IDE中单步调试的, 且不需要外接硬件调试器.
我们选"Arduino Zero"看看调试按钮的状态.
在这里插入图片描述
可以看到调试按钮的信息是"Start Debugging", 只要下好断点, 就可以开心调试了.
当然, 如果接的板子不是选的板子(冒充是), 或者就没接实际的板子, 单步调试时, 会报错的.

单步调试前下断点

在想要下断点的行前面, 用鼠标左击一下, 看到红句号, 就下好断点了.
在这里插入图片描述

使用STM32 Arduino Library的NUCLEO-H723ZG之后的调试补充

调试快捷键

在这里插入图片描述
在这里插入图片描述
和调试按钮相对应的几个快捷键.
F5 - 开始调试, 停在第一个断点处; 继续调试跑起来
F11 - 单步步入
F10 - 单步步过
SHIFT + F11 - 单步步出(返回上一个函数)
断点的设置和取消 - 没实验出来, 可能哪个程序也在用F9的快捷键. 还是需要使用鼠标点击代码行前面的IDE区来设置和取消断点.
在这里插入图片描述

调试接口的设置

在这里插入图片描述

END

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值