前言
汇总单片机开发常用的软件工具,旨在为其他同行带来便利。本人阅历有限,如果有更好更常用的工具,欢迎推荐。还有一些日常使用的工具可以去看我另一篇常用工具软件
1.总线抓取工具
Bus Hound
Bus Hound是是由美国perisoft公司研制的一款超级软件总线协议分析器,它是一种专用于PC机各种总线数据包监视和控制的开发工具软件,其名“hound”的中文意思为“猎犬”,即指其能敏锐地感知到总线的丝毫变化。主要可用于捕捉来自设备的协议包和输入输出操作。
我这里用来抓取串口数据。在不知道这个工具的情况下,我都是格外在板子上飞线,另外接一个串口助手去捕获数据,有了他,我发现了新世界的大门。也是因为这个工具,让我产生了汇总嵌入式调试工具的想法,方便后来人做开发
2.串口调试工具
SSCOM
网上串口工具很多很多,sscom是我比较常用的,可能有的朋友觉得广告什么的很厌烦,我也尝试用过其他简洁的串口工具,但这么多年用下来,还是觉得这是最稳定的,功能也比较齐全。我把我常用的功能框选了出来。说个题外话,如果C++基础好的话,可以去Github搜索serial tool,有一位朋友自己开源了一个串口调试助手,如果想自己定制一个串口调试助手,不妨借鉴一下。
3. 终端仿真工具
putty,secureCRT
Linux上我一般用这两个,网上有很多比这两个更好用的终端调试工具,比如正点原子的开发板学习视频就用的不一样。我在这方面很业余,看在轻便的份上,用的比较多,如果有机会再单独罗列Linux相关的开发工具吧。
4.modbus协议调试工具
Modscan,MThings
新电脑还没安装,以后再补充截图吧。
Modbus,好像只能作为主机,好久没用,记不住了。
MThings,由ID:揪住小尾巴 推荐,软件介绍上来说,支持模拟主机和模拟从机两种方式,支持MODBUS-RTU、MODBUS-ASCII、MODBUS-TCP。功能还是很强大的
2022.1.10更新,添加MThings
5.单片机数据交互调试工具
segger Viewer
如果你串口资源很紧张,这可以是你很好的一个选择(也是好久没用,粗略截个图占坑)。通过jlink连接(我一般使用swd接口)后,函数内调用打印函数,将数据打印到该窗口,也可以通过该工具将数据发送到单片机内。如果想要更好的类似RTthread命令行的体验,可以移植lettershell的代码,进行更好的调试交互,欢迎移步到我的另一篇博文关于 lettershell的移植
6.代码分析工具
Source Monitor
用于分析代码的复杂度和深度等,不局限于C语言,如果想对自己的代码质量进行审视,这也是个不错的选择。我想,应该也有更好的类似的工具,这里我只用过这个,就抛砖引玉吧。
7.网络调试工具
网络调试助手,Wireshark
网络调试助手应该都用过,可以简单的收发网络数据
Wireshark,应该是最常用的网络抓包工具了,软件的使用都有一本很厚的书
8.版本控制工具
TortoiseSVN,TortoiseGIT
svn和git,人尽皆知。上述两个是我比较常用的工具。git对于老江湖来说,应该不屑于使用软件去操作,而是潇洒使用命令行吧
9.代码编辑工具(2023.10.25)
VSCode
我比较喜欢用的一款软件,插件比较丰富,快捷键也特别好用。暗色对眼睛应该也会友好很多,罗列几个我常用的快捷键
a.多选:按住alt,点击想要选择的位置
b.任意位置另起新行(后面内容不会到下一行去):ctr+回车
c.搜索文件:ctr+p
d.对搜索的内容进行多选,批量改名常用:ctr+shift+l
e:纵向选择,批量改名常用:alt+shift
SourceInsight
老工程师都比较喜欢用,非常强大。特别是阅读linux代码,好像都喜欢用。我用过3.5的,但是不太习惯,现在有4.0版本,但是没精力去体验了
10.单片机代码调试工具(2023.10.25)
Ozone
一般直接用MDK或者IAR直接进调试。这里推荐一个专门的调试工具Ozone(Segger官网下载),也是我最常用的软件,调试基本选他,主要有以下理由
a.那俩软件有的调试功能它基本都有
b.载入十分迅速(这是我最喜欢的点),支持自动重载
c.对寄存器的描述更加详细
d.界面对于调试来说更友好
使用前需要做一些准备工作。主要是选择调试文件(.axf),选择外设文件(.svd)
缺点也有
GBK文件支持不够友好,注释会变成乱码。
不知道是不是操作不对,偶尔抽风。
英语很差的话,软件的熟悉过程很痛苦
11.MQTT调试工具
MQTTBox
工具可能还有很多。这里提供一个测试地址
host:public.cloud.shiftr.io
name:public
pwd:public
我也不知道这资源的出处,对于方便大家调试的资源,要心怀感恩,不用的时候建议点击一下主界面的connect断开连接,减少资源浪费。