大公司的秘密武器:单片机软件开发工具揭秘

发表时间: 2022-10-29 08:00

前序

单片机的软件开发使用语言包括C,C++,microPython。我的理解更为专业级的开发必须是C或者C++,使用C语言的较多。microPython适合业余DIY创手,主要是由于microPython或者是Python是脚本语言,它的开发使用必须基于前人的开发基础之上,才能使用。前人使用C语言开发出一定的代码固件,包括Python解释器与片上资源基本驱动先烧录到芯片上,然后才能使用microPython进行二次开发控制,主要优点是方便二次开发的快速成型。

工欲善其事,必先利其器

本文说的重点是开发工具的使用,和具体开发语言无关,也不仅仅局限于单片机的开发语言。

开发工具可分为专用工具和辅助设计工具。

专用工具主要指:IDE集成开发环境,如常用的keil。当然不同的芯片厂家可能会提供不同的开发环境。

辅助设计工具是这次说的重点。主要指代码编辑查看工具,代码版本管理工具

  • 代码编辑查看工具:Source Insight;VScode(Visual Studio Code)


vscode


source Insight


  • 代码版本管理工具:SVN;Git


git 下载


git 安装


本文也不主要讲这些工具具体怎么安装与使用,因为这些信息在网络上很容易搜到,在这里仅做个引路人。

代码编辑查看工具

这些辅助工具在进行大工程代码开发时,如基于一定协议栈如蓝牙SDK协议栈,Zigbee协议栈进行二次开发时,本身协议栈的内容就很多,在ide环境中不方便跟踪维护查看。

一般辅助配合开发过程,在source Insight,或者VScode中进行代码的编辑开发,一定功能逻辑或者整体编码开发完,再在芯片厂家提供的ide集成开发环境中,或者提供的一定交叉编译环境中进行编译与调试。

代码版本管理工具

我所了解在很多小公司中,一个项目的代码开发完全一个人负责,代码的归档后期维护也大多通过简单的拷贝。优点是简单高效,缺点是不利于过程管控,后期修改维护不方便。如基于稳定版本1.0的代码,有了新需求,新需求的实现仅仅简单修改即可生成稳定的V1.1版本,但在修改过程中不小心代码的输出别的地方被改动了,功能测试时没有测试到。版本管理工具就可以解决这些问题。

版本管理工具优点简单总结:

  1. 每次代码的提交都会自动跟踪修改点。
  2. 代码开发的过程管理简单明了,方便管理维护不同版本的功能差异。
  3. 不同的类似功能项目,可以基于整体基础工程代码上,建立不同的项目分支。便于类似项目代码区分维护。

最后

有不对的地方,欢迎大家指正。另外各位同行你们还使用哪些辅助设计工具!