姓名:王建伟 19020100374
转载自:https://zhuanlan.zhihu.com/p/324793923
【嵌牛导读】:时间进入2020年年底,越来越多的开发者不再满足于高级语言和WEB前后端开发,逐渐开始把玩各类MCU,MPU,FPGA等硬件产品,同时这些嵌入式开发的门槛也随着互联网的发展渐渐降低,更好地吸引了众多开发者的加入。毫无疑问,那些软硬结合、能解决实际生产生活需求的小项目,总是更能引发人们的好奇心和学习欲望。
今天我们就来谈谈当前最流行的几种STM32家族MCU的开发方案,主要向新人朋友们介绍几种集成开发环境,对于大佬们来说,如果您还在使用破解版的KEIL开发项目,不妨试试我下面提到的另外几种IDE,或许会有更好的开发体验。
【嵌牛鼻子】:Keil5
【嵌牛提问】:当前STM32几种最流行的开发环境
【嵌牛正文】:
最正统,最经典的嵌入式MCU开发环境。
价格/跨平台 ★
收费。国内由米尔科技代理授权,但似乎不面向个人开发者分发授权。我曾经致电米尔科技的销售人员,对方直接要求我提供公司信息,我说我只是个人开发者,想用KEIL进行STM32的开发,对方光明正大地让我用破解注册机,我担心我提供公司信息后,被对方猛查,或者发律师函,这不就暴露了么,果断挂断电话。所以到最后我都没弄明白收费的KEIL,单用户一年到底要支付多少钱,对KEIL的好感度骤降,不断萌生寻找新的替代品的想法。
跨平台方面,仅限Windows,不支持MAC OS和Linux。
开发库 ★★★★★
无论是51还是ARM Cortex M0-7,KEIL都有着不错的支持。在51下,KEIL甚至提供RTX-51的RTOS;在ARM下,KEIL的pack manage提供丰富的开发库,无论是STM32的HAL/LL库,还是标准库,无论是FreeRTOS还是RT-Thread Nano,都可以方便地下载使用。
配色和插件支持 ★★
KEIL没有设置代码配色方案的UI支持,所有的配色方案在/UV4/global.prop文件中定义,可以自行设计配色方案。这里分享一份我自用的global.prop,下载后覆盖源文件后,重启KEIL就是下面这种配色,是我喜欢的sublime风格。
KEIL提供简单的插件机制,可以手动下载插件置入安装路径下的TOOLS文件夹启用插件,我经常使用的是CoolFormat的代码格式化插件,可以将代码格式化成我习惯的JAVA/C++高级语言样式,而不用忍受大量陈年C代码中花括号换行的眩晕感。不管怎么说,没有UI界面对主题和插件的支持,只能算是勉强能用。
代码关联和自动提示 ★★★
在KEIL-51中,KEIL几乎不提供任何代码提示功能,但可以使用Go to Definition功能查看变量和函数的定义。
在KEIL-ARM中,KEIL的代码提示功能做得不错,输入三个字符以上就可以得到不错的代码提示,调用函数时的参数类型提示也可以。
有一个问题:在用户录入过程中,一旦取消提示,比如意外地失去了焦点,又或者按下ESC,临时干了点别的事情,代码提示就此无法继续,无论在原来的代码后面输入什么,都不会再次触发代码提示,只能删除这一行所有已输入的字符,重新录入,以此再次激活代码提示。所以,代码提示和追踪功能KEIL只能算是刚刚及格。
调试能力 ★★★★★
KEIL的debug能力很强,基于JTAG和STLINK都可以方便地对设备进行在线仿真调试;在手上没有设备时,甚至还可以离线模拟仿真,通过类似于示波器的界面观察模拟出来的电平信号。在调试时,可以方便地观察CPU寄存器、内存数据、变量数据、当前栈数据等信息,用户也可以直接输入内存地址观察内存数据。
KEIL 总体评分64分