之前有老铁问我做开发一般用到哪些软件工具?
其实嵌入式开发涉及到的工具软件非常多,我们不一定全部要安装。
下面盘点下我做单片机开发时,最刚需的软件,这些必须先安排上。
我分为三大类:开发环境、电路设计工具、串口调试工具。
每种类别,都有很多个工具可以选,不用全部安装,看我建议即可。
一、开发环境
1.Keil
这个是单片机开发者必备的工具,也是我职业生涯里用过最多的。
Keil μVision是一种基于Windows系统的单片机开发环境,广泛应用于ARM Cortex-M、8051等单片机的开发和调试。
它提供了集成的编译器、调试器和仿真器等工具,帮助开发者快速创建、编译和调试单片机程序。
Keil以其简单易用、功能强大和良好的兼容性而受到开发者的青睐。
2.IAR
这个需要再装,我们无际单片机项目特训营的STM8L系列项目,会到这个开发环境。
IAR Embedded Workbench是由IAR Systems开发的集成开发环境(IDE),支持多种单片机芯片和处理器架构,如ARM Cortex-M、RISC-V、AVR、8051等。
除了基本的代码编辑、编译、调试功能,还有性能分析,优化等功能,支持C、汇编、C++多种编程语言。
这个有些老工程师很喜欢用,我一般开发STM8单片机和TI蓝牙协议栈的时候会用,个人感觉没Keil顺手,用不熟的话,经常会有奇奇怪怪的问题,比如无法go to define....
编译出来的代码,会比Keil占用的内存空间更小一些。
3.STM32CubeIDE
堪称STM32单片机开发神器,让新手用STM32就像开挂一样。
不过我没装,哈哈,我一般喜欢用固件库来开发,用熟了。
STM32CubeIDE是ST公司推出的面向STM32单片机开发的综合性开发环境,支持Windows和Linux系统。
它提供了丰富的代码编写和调试工具,支持C、C++、Assembly等编程语言,并包含了丰富的示例代码和项目模板。
反正就一句话,让你有手就能把STM32外设用起来。
4.Arduino IDE
这个如果不玩Arduino的,可以不装。
Arduino IDE是一种开源的单片机编程工具,专门用于编写Arduino开发板上的程序。
一般做单片机开发很少用,很多使用者,是用于嵌入式应用方向的过渡。
5.Code Composer Studio (CCS)
用到再装。
这个可能大家见得不多,我第一次接触是开发TI蓝牙芯片CC2640的时候。
CCS是Texas Instruments推出的用于其单片机和微控制器开发的IDE,提供了强大的代码编写和调试工具,支持多种编程语言和操作系统。
6.Eclipse
用到再装。
Eclipse一般用于基于ARM架构的单片机开发,作为一个开源项目,对用户完全免费,这对于个人开发者和小型企业来说是一个很大的优势。
这个有些ARM内核的国产MCU特别喜欢用,我几年前做车载产品时用过一次。
可通过安装不同的插件来支持嵌入式软件开发,具有代码编辑、编译、调试等功能,支持C/C++等编程语言,适用于不同规模和复杂度的嵌入式项目。
虽然强大,但是搭建开发环境比较麻烦,如果单片机能支持Keil的情况下,我一般习惯用Keil
下面对这些做一个更直观的总结对比:
开发环境 | 优点 | 缺点 | 使用场景 |
Keil | 支持的单片机类型多,提供全面的调试和仿真功能,用户界面直观,搭建简单 | 高级功能可能需要付费,对新兴单片机支持可能稍显滞后 | 目前我用的最多,覆盖最广 |
IAR | 支持多种内核架构,编译器优化良好,提供详尽的调试和分析工具 | 使用没Keil顺手,学习曲线陡峭,授权费用较高 | 老工程师用的比较多,对代码优化性能要求高的汽车电子和工业自动化项目 |
STM32CubeIDE | 官方支持STM32系列,集成开发环境功能全面,能快速实现外设代码 | 主要针对STM32系列,对其他品牌单片机支持有限 | STM32系列单片机的开发,物联网和消费电子应用等等 |
Arduino IDE | 用户友好,社区支持庞大,适合快速原型开发 | 调试和性能分析功能有限,一般实际产品不用 | 教育领域、爱好者项目、创客、快速原型开发 |
Code Composer Studio (CCS) | 专为TI设备设计,提供强大的代码编辑和调试工具 | 主要针对TI设备,对其他品牌单片机支持有限 | TI微控制器和处理器的开发 |
Eclipse | 开源且跨平台,高度可扩展和灵活 | 需要额外设置和插件安装,新手上手难度较高 | 定制化开发环境的项目,开源硬件开发和教育用途 |
具体用哪个开发环境,通常不是我们能自主选择的,而是看单片机是否支持。
二、电路设计工具
我的启蒙电路设计工具,是Protel 99se,不过已经10年前了,现在基本没人用了,以下几个是目前国内用的比较多的。
以下工具,装哪个,可以根据自己的学习和工作来选择。
1.Altium Designer (AD)
这个我用的最多。
Altium Designer是由Altium公司开发的一款集成的电子产品开发系统软件,它提供了原理图设计、电路仿真、PCB绘制编辑、拓扑逻辑自动布线、信号完整性分析等一系列功能。AD软件在中国的使用率非常高,尤其受到高校和自学者的欢迎,因为它具有中文界面和相对简单的上手难度。
2.PADS
PADS(Personal Automated Design System)由MentorGraphics公司创建,包括原理图工具PADS Logic、PCB工具PADS Layout和自动布线工具PADS Route。PADS在中国的电子设计行业中应用广泛,特别是在消费电子行业。它以其强大的功能和稳定性著称,尽管其界面可能显得稍微老式。
3.Cadence
Cadence软件是全球EDA设计软件的巨头之一,提供ORCAD(原理图设计工具)和Allegro(PCB设计+仿真工具)。Cadence在中国的大型公司中使用较多,尤其适合复杂的电路设计和高密度PCB设计。它拥有强大的资源配置和仿真工具,但可能对新手来说上手难度较高。
4.嘉立创EDA
这个经常也会用,有网页版也有客户端,最爽的是有丰富的元件库,整合了立创商城的元器件目录,方便工程师在设计过程中进行元器件的选型和采购。
三、串口调试工具
以下3款,我用的最多,一般没特殊需求,只用SSCOM就够了,简单稳定。
1.SSCOM
特点:功能齐全且稳定,支持常见的串口参数设置和数据收发。
适用场景:适合长期使用串口工具的开发者进行通用串口通信调试。
2.Commix
这款我以前做PDU的时候用过,能自动帮你计算各种校验码,比如异或,总和,CRC16等,非常方便。
3.SecureCRT
特点:支持SSH、Telnet和rlogin协议的终端仿真程序,安全性高。
适用场景:适合需要安全远程连接和终端仿真的开发环境。
我的资料包里帮大家收集了部分工具,要的可找我安排。
最近很多粉丝问我单片机怎么学,我根据自己从业十年经验,累积耗时一个月,精心整理一份「单
片机最佳学习路径+单片机入门到高级教程+工具包」,全部无偿分享给铁粉!!!
除此以外,再含泪分享我压箱底的22个热门开源项目,包含源码+原理图+PCB+说明文档,让你迅速进阶成高手!
教程资料包和详细的学习路径可以看我下面这篇文章的开头。