0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

详细盘点工程师嵌入式开发必备工具让工作事半功倍

lPCU_elecfans 来源:未知 作者:h1654155287.6125 2019-09-02 17:21 次阅读

嵌入式开发就是指在嵌入式操作系统下进行开发,一般常用的系统有μcos,vxworkslinuxandroid等。当然,对于嵌入式或单片机工程师的利器就是C语言C++汇编语言。那么有哪些好工具可以让工作事半功倍呢? 据著名单片机工程师鱼鹰Osprey介绍,首先我学习的是Qt,而要学习Qt就必须学C++,而学了Qt之后发现新公司采用linux开发单片机,涉及到Makefile,还用了GitLab管理代码,所以又简单学习了GitLab的操作,然后发现代码管理还要使用Git,所以花了几天时间学习Git的使用……

很多单片机开发的道友都是手握KEIL行走天下的,事实上在跳槽之前我就是如此,一个KEIL搞定一切,编辑、编译、下载、调试,全靠KEIL软件,也是我研究KEIL这么深的原因,因为只有你熟悉了工具,才能做到事半功倍。

接下来就给大家介绍几款嵌入式开发工具。下面这些工具,我认为你都应该花点时间学习一下,这是非常有用的工具,非常方便。

1、Source Insight

Source Insight是一个程序编辑器和代码浏览器,代码编辑器的经典之作。 Source Insight是一个面向项目开发的程序编辑器和代码浏览器,它拥有内置的对C/C++, C#Java等程序的分析。 Source Insight能分析你的源代码并在你工作的同时动态维护它自己的符号数据库,并自动为你显示有用的上下文信息

Source Insight不仅仅是一个强大的程序编辑器,它还能显示reference trees,class inheritance diagrams和call trees。Source Insight提供了最快速的对源代码的导航和任何程序编辑器的源信息。Source Insight提供了快速和革新的访问源代码和源信息的能力。与众多其它编辑器产品不同,Source Insight能在你编辑的同时分析你的源代码,为你提供实用的信息并立即进行分析。

鱼鹰对这个工具的评价是:我们知道KEIL查看函数或者符合定义时,要么右键查找定义,要么熟练的使用快捷键 F12 进行跳转,但无一例外的就是都需要额外的操作,但SourceInsight只要你把光标指向函数名,就会自动有一个小窗口显示函数体,看似只比KEIL少了一步,也只是多了一个窗口而已,但就是这点区别,就足以让鱼鹰安装了(事实上它也可以在设置后编译源码的,这个暂时没去研究过,不多说)。在看别人代码的时候,跳来跳去的正常不过了,而KEIL每次跳转都会跳转到新窗口,想回来,只能再切换窗口,如果跳转次数不多的话,那没什么,但是查看不熟悉的代码,你认为你不需要频繁跳转吗?所以鱼鹰认为,这个神器必须安装,特别是查看linux内核这种大型源码时,更是如此。而且它安装包也很小,不用太关心内存问题,你,值得拥有。

2、UltraEdit

UltraEdit 是一套功能强大的文本编辑器,可以编辑文本、十六进制、ASCII 码,完全可以取代记事本(如果电脑配置足够强大),内建英文单字检查、C++ 及 VB 指令突显,可同时编辑多个文件,而且即使开启很大的文件速度也不会慢。

UltraEdit 是 Windows 旗下一款流行的老牌文本/HEX 编辑器(非开源)。UltraEdit 正被移植到 Linux 平台。该移植名为 UEX,意即 UltraEdit forLinux。UEX具有原生的 Linux 外观,其界面、配置、热键等与 Windows 版并无二致。UltraEdit是一个49.95美元的共享软件,提供了友好界面的编程编辑器,支持语法高亮,代码折叠和宏,以及一大堆其他的功能,内置了对于HTML、PHP和JavaScript等语法的支持。UltraEdit代码折叠支持在所有 32 位Windows平台上进行 64 位文件处理(标准),Unicode 支持基于磁盘的文本编辑和大文件处理 - 支持超过 4GB 的文件,即使是数兆字节的文件也只占用极少的内存。

3、Git

Git(读音为/gɪt/。)是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。

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

5、GitHub

GitHub的大名无人不知无人不晓,从996、微软开源、锤子开源到小米开源都有它的身影。

GitHub是一个面向开源及私有软件项目的托管平台,因为只支持git 作为唯一的版本库格式进行托管,故名GitHub。

鱼鹰表示,GitHub是一个网站,不能算工具,这个网站应该都听说过,其实这个网站我还不怎么会使用,目前只是配合Git上传代码到上面而已,就不多说了。

那么为什么我要用它呢,因为很多时候,你的源码可能要传输到别的平台,有了它比较方便,比如说,window平台下开发的代码,上传到GitHub后,Ubuntu、树莓派等平台下都可以下载、上传,方便代码的同步。所以如果你不想花时间系统学习的话,把它当成一个网盘使用也是不错的呦。

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、Vs code

在开发中,有一个非常好用的工具,Visual Studio Code,简称VS code。

都不用我安利VS code,大家就会乖乖的去用,无数个大言不惭的攻城狮,都被VS code比德芙还丝滑的强大功能所折服。

VS code特点:开源,免费,自定义配置,集成git,智能提示强大,支持各种文件格式(html/jade/css/less/sass/xml),调试功能强大,各种方便的快捷键,强大的插件扩展。。。。

鱼鹰表示,这个听说是神器,具体多神我也不清楚,听说可以替代KEIL了,各位道友有兴趣的可以去研究一下,后期有时间了我也去试试,感受一下它的神威。

8、Beyond Compare

Beyond Compare是一套由Scooter Software推出的软件,主要用途是对比两个文件夹或者文件,并将差异以颜色标示。

Beyond Compare支持11种文件类型对比及功能,包括文件夹比较、文件夹合并、文件夹同步、文本比较、文本合并、表格比较、16进制比较、MP3比较、图片比较、注册表比较和版本比较,比较类型非常多。

9、HHD Software Device Monitoring Studio

HHD Software Device Monitoring Studio 是一款功能强大的设备监控软件,包括USB监控(USB Monitor)、串口监控(Serial Monitor)和网络监控(Network Monitor)三大模块功能。HHD Software Device Monitoring Studio 是在驱动层直接抓取数据包,反馈的数据包之间的时间间隔很准确。是开发者必备工具!

10、山外多功能调试助手

山外多功能调试助手是一款集成串口调试助手、摄像头调试、线性CCD调试、虚拟示波器、GSM调试助手、GPS定位系统、网络调试助手(TCP服务器、TCP客户端、UDP)等多种调试功能于一体的多功能助手。有了他,我们可以轻松应对各种嵌入式开发。

11、串口调试工具


比较好用的串口调试工具有SSCOM,MyDockligh,AccessPort;如果是调试AT的话,QCOM还是最好用的一款串口工具。

当然,之前嵌入式ARM也曾经报道过一款非常好用的串口助手“伏特加”——《为了爽快地调试硬件,我跟串口调试助手杠上了》

12、Wireshark

Wireshark(前称Ethereal)是一个网络封包分析软件。网络封包分析软件的功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料

Wireshark使用WinPCAP作为接口,直接与网卡进行数据报文交换。

在过去,网络封包分析软件是非常昂贵的,或是专门属于盈利用的软件。

Ethereal的出现改变了这一切。在GNUGPL通用许可证的保障范围底下,使用者可以以免费的代价取得软件与其源代码,并拥有针对其源代码修改及客制化的权利。Ethereal是目前全世界最广泛的网络封包分析软件之一。

强大的网络协议数据报文分析工具,也是深入学习各种网络协议必不可少的利器。

13、Socket工具


推荐IPoP和TCPUDPDbg。

14、SSHSecureShellClient


强大远程安全远程登录工具。如果使用虚拟器的方式开发Android等Linux系统,建议使用该工

具,避免在图形界面操作Linux系统,减少PC的负载。XShell也有不少工程师在用,本人没有用过。

15、MQTT调试工具


Sever端推荐mosquitto,客户端推荐paho。

Mosquitto是用C语言实现了MQTT(Message Queueing Telemetry
Transport)协议的Broker,EMQ君在本文对MQTT协议不做过多的赘述,关于 MQTT 协议的介绍读者可以阅读EMQ的MQTT协议介绍。本文重点介绍mosquito客户端的使用。

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, ...)。

17、SecureCRT

SecureCRT是一款支持SSH(SSH1和SSH2)的终端仿真程序,同时支持Telnet和rlogin协议。小巧好用,从没换过。

18、文件夹管理器total commander

Total Commander 是一款应用于 Windows 平台的文件管理器 ,它包含两个并排的窗口,这种设计可以让用户方便地对不同位置的“文件或文件夹”进行操作,例如复制、移动、删除、比较等,相对 Windows 资源管理器而言方便很多,极大地提高了文件操作的效率,被广大软件爱好者亲切地简称为:TC 。

它拥有文件快速预览、快速搜索、多标签、文件比较、批量重命名、FTP 客户端等诸多实用的功能,并可通过大量的插件进行个性化配置。

19、网络抓包软件wireshark

Wireshark(前称Ethereal)是一个网络封包分析软件。

20、文件搜索Everything

Everything速度最快的文件搜索软件,可以瞬间搜索到你需要的文件。

21、文本编辑器notepad++

Notepad++是一套为自由软件的纯文本编辑器,支持众多程序语言,比如C++、C#、Java等主流程序语言;支持HTML、XML、ASP,Perl、Python、JavaScript等网页/脚本语言。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    5068

    文章

    19008

    浏览量

    302914
  • 开发
    +关注

    关注

    0

    文章

    366

    浏览量

    40804
  • 调试软件
    +关注

    关注

    1

    文章

    24

    浏览量

    18755

原文标题:有哪些工具可以让嵌入式开发事半功倍?详细盘点工程师必备工具

文章出处:【微信号:elecfans,微信公众号:电子发烧友网】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    高薪聘请嵌入式开发工程师

    招聘启示江苏省连云港市某上市公司因生产业务扩展需要,现需高薪聘请嵌入式开发工程师。招聘条件:1. 有多年从事嵌入式开发工作的经验; 2. 硕士及以上学历优先, 本科学历但能力优秀者同
    发表于 12-03 21:37

    诚聘嵌入式开发工程师

    猎头职位:嵌入式开发工程师【北京】1、负责产品的硬件和软件设计,包括原理图设计、PCB设计以、嵌入式程序的设计及开发。任职资格:1、嵌入式
    发表于 04-01 10:48

    嵌入式开发工程师

    无锡锡山,招嵌入式开发工程师一位,STM32嵌入式物联网通讯设备开发,有意向留下联系方式
    发表于 03-01 19:46

    嵌入式开发分为哪4类工程师 嵌入式开发具备哪些技能

    `现在嵌入式工程师的岗位很多,通用要求都大致相同,无非就是各种精通,但是个个岗位所需要的技能却大不一样,了解了嵌入式开发的结构可能就好理解些了。  嵌入式开发分为哪4类
    发表于 03-02 11:44

    【微信精选】有哪些工具可以嵌入式开发事半功倍详细盘点工程师必备工具

    工具可以工作事半功倍呢?据著名单片机工程师鱼鹰Osprey介绍,首先我学习的是Qt,而要学习Qt就必须学C++,而学了Qt之后发现新公司采用linux
    发表于 08-20 10:29

    怎样才能成为一个优秀的嵌入式开发工程师

    引言嵌入式开发有着悠久的历史,随着物联网和端级AI 1的兴起,我们迎来了嵌入式开发新的风潮。相应的岗位空缺不断涌现,技术人才也变得越发珍贵。然而,嵌入式开发工程师较为全面的要求又
    发表于 08-23 07:10

    如何才能让自己成为一名嵌入式开发工程师

    成为一名优秀的嵌入式开发工程师有哪些要求?随着国内嵌入式行业的迅速崛起,嵌入式人才严重紧缺,企业对嵌入式人才更是求贤若渴。尽管是在就业难的今
    发表于 11-08 07:40

    嵌入式开发工程师必备的几个工具

    用的工具有很多,真正写代码的时候,也不会有人选择vim,因为它的编码效率实在是低,就跟记事本一样,每个字符都要自己去敲。所以这篇文章就跟大家推荐一些嵌入式开发工程师必备的几个
    发表于 11-08 06:16

    有哪些好工具可以嵌入式开发工作事半功倍

    请问一下有哪些好工具可以嵌入式开发工作事半功倍呢?
    发表于 11-11 07:24

    优秀嵌入式开发工程师修炼秘籍

    优秀嵌入式开发工程师修炼秘籍 嵌入式人才紧缺,如何才能让自己成为一名优秀的嵌入式开发工程师?成为一名优秀的
    发表于 09-08 17:56 744次阅读

    如何快速熟练掌握嵌入式开发嵌入式开发工程师需要做哪些事情

    怎样才能快速熟练掌握嵌入式开发呢?成熟的嵌入式开发工程师需要做哪些事情?是很多新手朋友想要了解的,那么今天我们来简单的介绍一下
    发表于 05-09 18:17 8次下载
    如何快速熟练掌握<b class='flag-5'>嵌入式开发</b><b class='flag-5'>嵌入式开发</b><b class='flag-5'>工程师</b>需要做哪些事情

    嵌入式开发资料免费分享

    嵌入式开发资料免费分享嵌入式工程师经验分享:如何学习嵌入式开发截取文档部分学习嵌入式工程师经验分
    发表于 10-21 11:07 47次下载
    <b class='flag-5'>嵌入式开发</b>资料免费分享

    学习嵌入式开发怎么样?嵌入式开发工程师的职责有哪些?

    小编在之前的文章里面就有提到,嵌入式系统工程师是从事嵌入式系统开发工作的人员,具备OS底层、应用层开发
    发表于 11-02 20:36 20次下载
    学习<b class='flag-5'>嵌入式开发</b>怎么样?<b class='flag-5'>嵌入式开发</b><b class='flag-5'>工程师</b>的职责有哪些?

    成为一名优秀的嵌入式开发工程师有哪些要求?

    成为一名优秀的嵌入式开发工程师有哪些要求?随着国内嵌入式行业的迅速崛起,嵌入式人才严重紧缺,企业对嵌入式人才更是求贤若渴。尽管是在就业难的今
    发表于 11-02 20:36 23次下载
    成为一名优秀的<b class='flag-5'>嵌入式开发</b><b class='flag-5'>工程师</b>有哪些要求?

    哪些工具可以嵌入式开发事半功倍详细盘点嵌入式工程师必备工具

    用的工具有很多,真正写代码的时候,也不会有人选择vim,因为它的编码效率实在是低,就跟记事本一样,每个字符都要自己去敲。所以这篇文章就跟大家推荐一些嵌入式开发工程师必备的几个
    发表于 11-03 11:21 11次下载
    哪些<b class='flag-5'>工具</b>可以<b class='flag-5'>让</b><b class='flag-5'>嵌入式开发</b><b class='flag-5'>事半功倍</b>?<b class='flag-5'>详细</b><b class='flag-5'>盘点</b><b class='flag-5'>嵌入式</b><b class='flag-5'>工程师</b><b class='flag-5'>必备</b><b class='flag-5'>工具</b>!