Advanced Debugger for Arduino

Advanced Debugger for Arduino
复制标题

Arduino 高级调试器

DOI:
10.14569/ijacsa.2021.0120204
复制
发表时间:
2021
影响因子:
0.9
通讯作者:
V. Vasek
V. Vasek
中科院分区:
--
文献类型:
--
作者:
Jan Dolinay;Petr Dostálek;V. Vasek

文献摘要

被引文献

相似文献

本文介绍了我们的Arduino源代码级调试器的改进版本。调试器可用于使用GNU调试器GDB与Eclipse或Visual Studio Code作为可视化前端来调试Arduino程序。它支持调试器预期的所有功能,例如单步调试代码、设置断点或查看和修改变量。如果没有外部调试探针和对板的修改,这些功能对于流行的基于AVR的Arduino板是不可用的。利用所提出的调试器,仅需要向用户程序添加程序库并且可选地替换引导加载器。调试器可以加快程序开发速度,使Arduino平台更可用作控制各种实验设备或教学计算机编程的工具。本文重点介绍自2016年引入调试器以来我们在调试器中所做的新功能和改进。与旧版本相比,最重要的改进是支持将断点插入程序内存,允许调试而不影响被调试程序的速度,并将断点插入中断服务例程。进一步的增强功能包括通过调试器加载程序,以及新增对Arduino Mega板的支持。
This article describes improved version of our source-level debugger for Arduino. The debugger can be used to debug Arduino programs using GNU debugger GDB with Eclipse or Visual Studio Code as the visual front-end. It supports all the functionally expected from a debugger such as stepping through the code, setting breakpoints, or viewing and modifying variables. These features are otherwise not available for the popular AVR-based Arduino boards without an external debug probe and modification of the board. With the presented debugger it is only needed to add a program library to the user program and optionally replace the bootloader. The debugger can speed up program development and make the Arduino platform even more usable as a tool for controlling various experimental apparatus or teaching computer programming. The article focuses on the new features and improvements we made in the debugger since its introduction in 2016. The most important improvement over the old version is the support for inserting breakpoints into program memory which allows debugging without affecting the speed of the debugged program and inserting breakpoints into interrupt service routines. Further enhancements include loading the program via the debugger and newly added support for Arduino Mega boards.