嵌入式开发就是指在嵌入式操作系统下进行开发,一般常用的系统有μcos,vxworks,linux,android等。当然,对于嵌入式或单片机工程师的利器就是C语言、C++或汇编语言。那么有哪些好工具可以让工作事半功倍呢/p>
据著名单片机工程师鱼鹰Osprey介绍,首先我学习的是Qt,而要学习Qt就必须学C++,而学了Qt之后发现新公司采用linux开发单片机,涉及到Makefile,还用了GitLab管理代码,所以又简单学习了GitLab的操作,然后发现代码管理还要使用Git,所以花了几天时间学习Git的使用……
接下来就给大家介绍几款嵌入式开发工具。下面这些工具,我认为你都应该花点时间学习一下,这是非常有用的工具,非常方便。
1、Source Insight
Source Insight能分析你的源代码并在你工作的同时动态维护它自己的符 数据库,并自动为你显示有用的上下文信息。
鱼鹰对这个工具的评价是:我们知道KEIL查看函数或者符合定义时,要么右键查找定义,要么熟练的使用快捷键 F12 进行跳转,但无一例外的就是都需要额外的操作,但SourceInsight只要你把光标指向函数名,就会自动有一个小窗口显示函数体,看似只比KEIL少了一步,也只是多了一个窗口而已,但就是这点区别,就足以让鱼鹰安装了(事实上它也可以在设置后编译源码的,这个暂时没去研究过,不多说)。在看别人代码的时候,跳来跳去的正常不过了,而KEIL每次跳转都会跳转到新窗口,想回来,只能再切换窗口,如果跳转次数不多的话,那没什么,但是查看不熟悉的代码,你认为你不需要频繁跳转吗以鱼鹰认为,这个神器必须安装,特别是查看linux内核这种大型源码时,更是如此。而且它安装包也很小,不用太关心内存问题,你,值得拥有。
3、Git
Git(读音为/g/。)是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。
Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。
Git是目前世界上最先进的分布式版本控制系统(没有之一)。
Git有什么特点单来说就是:高端大气上档次!
但是当你不停的更新、不停的修改代码的时候,你就会发现,这个复制粘贴的方式效率很低,也很难把控:你会发现你的文件夹变得越来越多,也越来越不知道每一个文件和其他文件有什么不同了,时间久了,你根本不知道改动到底在哪。
但是Git不一样,你能看到文件只有当前使用的一份,历史改动全部被Git给隐藏了,所以你会看到你的源码文件明明只有几K,但你回到上级目录查看这个文件属性时,你会发现可能有几百M内容,那么多出来的文件是什么是你以前的历史文件了,都隐藏在.git文件夹中。
而你要查看这些历史只要几条命令就行,也很容易就能回到你需要的版本中,就如乘坐时光机,轻松来往于过去与未来。
还有它可以很方便的查看版本的差异,让你再也不用使用专门的工具查看各个文件的不同了。
而且Git是采用本地管理的,不需要 络,非常方便。
学习Git基本使用方法只需要花个一两天时间学习就够了,但是却能免除你今后开发生涯的复制、粘贴操作了,鱼鹰觉得这是非常值得做的一件事。
Git教程:https://www.liaoxuefeng.com/wiki/896043488029600
据某工程师分享,git版本管理的客户端自己使用比较多的是msysGit。msysGit提供gui与bash两种视图:
4、TortoiseSVN
ortoiseSVN 是 Subversion 版本控制系统的一个免费开源客户端,可以超越时间的管理文件和目录。
开源的可视化的集中式代码版本管理。相关于git的优点是(1)提交 是一个累加的数值,便于识别;(2)本地硬盘空间占用少。
下载地址:https://tortoisesvn.net/downloads.html
使用教程:https://www.runoob.com/svn/tortoisesvn-intro.html
6、Qtcreator
Qt Creator是跨平台的 Qt IDE, Qt Creator 是 Qt 被 Nokia 收购后推出的一款新的轻量级集成开发环境(IDE)。此 IDE 能够跨平台运行,支持的系统包括 Linux(32 位及 64 位)、Mac OS X 以及 Windows。根据官方描述,Qt Creator 的设计目标是使开发人员能够利用 Qt 这个应用程序框架更加快速及轻易的完成开发任务。
鱼鹰表示,这个软件和Qt有啥关系我也不清楚,咱也不敢说,咱也不敢问,只是下了一个安装包安装在Ubuntu下学习C++和Qt而已,事实上它也可以编译单片机代码(前提是有Makefile和交叉编译器)。
那么为啥要聊它呢,因为Qt在嵌入式用途广泛,如果说你写的上位机既想在Windows运行,也想在linux下运行,那么Qt是不错的选择,因为这个 称是一次编写,到处编译的,所以优势还是很大的,而且采用的是C++语言,如果C语言学习的好,C++入门非常快的。
7、Vscode
在开发中,有一个非常好用的工具,Visual Studio Code,简称VS code。
都不用我安利VS code,大家就会乖乖的去用,无数个大言不惭的攻城狮,都被VS code比德芙还丝滑的强大功能所折服。
VS vode特点:开源,免费,自定义配置,集成git,智能提示强大,支持各种文件格式(html/jade/css/less/sass/xml),调试功能强大,各种方便的快捷键,强大的插件扩展。。。。
鱼鹰表示,这个听说是神器,具体多神我也不清楚,听说可以替代KEIL了,各位道友有兴趣的可以去研究一下,后期有时间了我也去试试,感受一下它的神威。
8、Beyond Compare
Beyond Compare是一套由Scooter Software推出的软件,主要用途是对比两个文件夹或者文件,并将差异以颜色标示。
Beyond Compare支持11种文件类型对比及功能,包括文件夹比较、文件夹合并、文件夹同步、文本比较、文本合并、表格比较、16进制比较、MP3比较、图片比较、注册表比较和版本比较,比较类型非常多。
10、山外多功能调试助手
山外多功能调试助手是一款集成串口调试助手、摄像头调试、线性CCD调试、虚拟示波器、GSM调试助手、GPS定位系统、 络调试助手(TCP服务器、TCP客户端、UDP)等多种调试功能于一体的多功能助手。有了他,我们可以轻松应对各种嵌入式开发。
13、Socket工具推荐IPoP和TCPUDPDbg。
14、SSHSecureShellClient强大远程安全远程登录工具。如果使用虚拟器的方式开发Android等Linux系统,建议使用该工具,避免在图形界面操作Linux系统,减少PC的负载。XShell也有不少工程师在用,本人没有用过。
15、MQTT调试工具Sever端推荐mosquitto,客户端推荐paho。
Eclipse Paho:是Eclipse提供的一个访问MQTT服务器的一种开源客户端库。
Eclipse目前提供十种不同语言平台的客户端类库,对于Java平台而言和MQTT服务器交互的开源框架还有很多, 例如:Eclipse Paho Java、 Xenqtt、 MeQanTT、 Fusesource mqtt -client、 moquette 等等…
但是, 根据GIthub上使用次数来讲Eclipse Paho无疑是主流, 就个人使用而已, Eclipse Paho集成非常方便、简单。
16、MobaXterm
远程连接终极工具,提供了主流的远程工具(SSH, X11, RDP, VNC, FTP, MOSH, …)与Unix commands (bash, ls, cat, sed, grep, awk, rsync, …)。
18、文件夹管理器total commander
Total Commander 是一款应用于 Windows 平台的文件管理器 ,它包含两个并排的窗口,这种设计可以让用户方便地对不同位置的“文件或文件夹”进行操作,例如复制、移动、删除、比较等,相对 Windows 资源管理器而言方便很多,极大地提高了文件操作的效率,被广大软件爱好者亲切地简称为:TC 。
它拥有文件快速预览、快速搜索、多标签、文件比较、批量重命名、FTP 客户端等诸多实用的功能,并可通过大量的插件进行个性化配置。
20、文件搜索Everything
Everything速度最快的文件搜索软件,可以瞬间搜索到你需要的文件。
参考资料:
【1】鱼鹰Osprey . 《介绍几款好用的工具 | 嵌入式开发必备 》【2】佚名 . 《嵌入式开发常用工具(windows)》【3】佚名 . 《介绍几款嵌入式开发工具,或许能用上!》【4】归云十九少 . 《嵌入式软件开发工具集锦》【5】百度百科相关词条
-END-
哪些是你最常用的工具呢迎留言分享
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!