【本文写作时还没有STM32CubeIDE,ST公司在2019年4月推出STM32CubeIDE 1.0.0,是基于TrueSTUDIO开发的,且TrueSTUDIO不再更新。新的开发建议使用STM32CubeIDE】
用于STM32开发的IDE有很多,ST公司的网站上足足列出了19个,其中,常用的商业版软件有:
- MDK-ARM-STM32
- IAR-EWARM
这两个商业版软件虽然好用,但终究是商业版软件。免费或评估版的软件要么有器件型号限制,要么有程序容量限制。
免费的STM32开发IDE有很多,基本上都是基于Eclipse+GNU GCC的。
网上有教程介绍如何手工用Eclipse + GNU GCC搭建STM32开发环境的,但是过程比较麻烦,而且因为版本的差异,各个教程的内容有差异,本人做了多次尝试都没有配置成功。
现在STMicroelectronics公司主推HAL+STM32CubeMX的开发方式,STM32CubeMX软件可以可视化地进行芯片资源和管脚配置,并且生成项目所有源程序。目前,STM32CubeMX导出项目支持的IDE或工具链如下图
图中可见免费的IDE只有TrueSTUDIO和SW4STM32这两种,这两种IDE都是基于Eclipse的,安装程序集成了完整的STM32开发需要的各种插件,无需自己做额外的配置。
本人实际安装了这两种软件,并用STM32CubeMX生成一个简单的GPIO控制LED的项目,用开发板进行了测试,发现
- SW4STM32的Debug很有问题,很简单的程序在DEBUG时就出现死的情况,而相同功能的程序在MDK和TrueSTUDIO里没有问题。
-
TrueSTUDIO能和STM32CubeMX很好的融合,程序编译、下载和调试都没有问题。
最关键的是:出品TrueSTUDIO的Atollic公司现在被STMicroelectronics收购了。
Atollic官网首页显示如下。
TrueSTUDIO现在完全免费了,STMicroelectronics公司将来必定大力发展自己的IDE工具TrueSTUDIO,STM32CubeMX对TrueSTUDIO的支持也必定是没问题的。这样的情况下,其他基于Eclipse+GCC的免费IDE对于TrueSTUDIO就没有什么优势了。
System Workbench(即SW4STM32)是AC6公司开发的,与STMicroelectronics联合维护的Open STM32 Community社区提供的一个免费工具,算不得是STMicroelectronics官方的开发工具。
另外还有一个免费的开发工具是CooCox的CoIDE,这是在ST官网上列出的IDE里排在第一位置的,也是基于Eclipse+GCC的。除了一个IDE环境,还有用于器件可视化配置的CoSmart,类似于STM32CubeMX(但是目前CoSmart不支持STM32系列器件,只支持Holtek、Nuvoton的器件)。CooCox的系列工具功能虽然比较全面,但是STM32CubeMX导出项目不支持CoIDE,在开发效率上显然不如STM32CubeMX支持的几种IDE。
因为是要针对一个STM32F4的开发板开发一些教学实例,经过各种测试比较,最终选择TrueSTUDIO作为STM32开发工具。