你如何调试在Arduino硬件上运行的Arduino代码?

36 debugging arduino

有没有办法设置源级断点,在实际硬件上运行代码,并能够检查变量并继续?

Vis*_*cro 31

Microsoft Visual Studio 2015社区版(免费)的Visual Micro插件为Arduino提供USB调试器.它允许您完全按照您的描述进行操作.(不要忘记在IDE安装期间单击以安装C++)

调试器支持串行,RF,蓝牙和一些Wi-Fi.它允许在Arduino运行时监视或更新变量的值.包括图表和数据/引脚可视化以及监视,跟踪,中断.

在此输入图像描述

新闻:2016年1月还包括为Arduino Zero发布GDB调试器.与串行/蓝牙调试器一样,GDB版本支持ino/cpp源代码,但另外支持Arduino核心和库的调试.它支持许多功能,例如:跳过,跳出,步指令或源代码行,内存,寄存器,本地,监视,实时表达式和堆栈跟踪.


Jef*_*eff 24

在Arduino上设置"源断点"的方法是添加一个串行输出,以将要查看的值发送到串行监视器.

准备好后,下一步是转移到WinAVR,AVR Studio和Atmel JTAG Mark II或Atmel Dragon.

这些程序和设备将允许您创建C代码并单步执行代码并监视变量和寄存器.JTAG设备可以单步执行C代码或编译器创建的汇编代码.

预先警告高级嵌入式C编程仍然非常靠近机器,您必须小心单步执行中断例程,定时器例程和其他低级例程,因为很多时候它会阻止代码正常运行.

  • 有三种选择,使用AVR Studio和JTAG设备升级您的开发环境,使用具有多个串行端口的Arduino mega或使用软件串行库. (2认同)