1
仿真器调试
图来源于 JTAG-Tutorial文档,仅供学习参考
2
终端调试
" 终端 "说白了就是一种人机交互接口,可以看成信息的输入与输出,一些朋友会说:我只用仿真器调试,不想用终端;仿真器调试又何尝不是一种终端的表现形式呢?只是说终端的相应功能已经嵌入到了你的集成开发环境IDE中,RAM数据和程序运行指针的修改都是用户数据的输入,而RAM数据的显示等等都是数据的输出。
但是对于我们平时调试的需求,并不需要像仿真器调试这么强大,主要是一些关键数据的显示和一些命令的发送,一般的MCU项目都会有预留一定的通信接口,所以直接定义一套统一的调试通信协议并开发一些调试上位机那将会对MCU的调试效率大大提高,而且也方便以后移植到其他项目中使用。
当然如果项目中原本就带有触摸屏或者按键+屏,也可以直接在这套终端上开发一些调试界面和功能,这样就不需要太依赖笔记本电脑什么的,至于调试功能是否灵活就看技术功底了。
很多朋友对开发上位机有点恐惧,人原本就对陌生的事物充满着恐惧!进行调试上位机开发其实只要具备一些基础的应用程序开发知识就能够在较快的时间里面掌握,当然如果你想把界面、特效、功能等等做得更加的秀,那就得有比较专业的知识和经验了!
好吧,你不想沾一点点应用程序的边,或者暂时没有太多的精力研究这一块,那我推荐你用研究一下终端,比如前面跟大家推荐的一款全能终端 :
很多朋友把这种类型的终端与串口调试助手混为一谈,这是不对的,终端功能一般比串口调试助手强点,像Linux这样命令行系统,几乎一切的操作均可以在终端上完成。
比如在终端中让输出的信息带有颜色,从而可把打印的日志信息进行分级输出,以便信息的筛选;还能够使用转义字符来实现动态显示、排版等功能,比如类似于命令行"Top"的实现效果。
最后给大家推荐一个强大的嵌入式shell -- letter shell 3.0
letter shell 3.0是一个C语言编写的,可以嵌入在程序中的嵌入式shell,主要面向嵌入式设备,以C语言函数为运行单位,可以通过命令行调用,运行程序中的函数。
开源链接:https://github.com/NevermindZZT/letter-shell