STM32能被这么多开发者认可,它的强大生态系统起了关键作用。本文围绕STM32生态各软件工具进行相关描述,其中包含一些技术细节。
一、STM32生态系统总预览STM32提供了全套开发工具,以及开发所需的软件包,下面看一张图,从全局来了解STM32生态系统工具和软件:
主要分为两大类:1.软件工具:即左边部分的STM32CubeMX、 CubeIDE、 CubeProgrammer、 CubeMontor等。
2.嵌入式软件包:STM32CubeMCU Packages 和 扩展软件包CubeExpansions.
STM32Cube生态系统几个特点:
免费自由使用;
接口一致,方便移植
可裁剪、可扩展
易使用和理解
节约开发时间和成本
······
(当然,这是我自己总结的特点,其实还有很多,欢迎补充)
下面进一步详细描述各工具和软件包的内容。
二、STM32CubeMXSTM32CubeMX早在2014年就推出了,但早期的STM32CubeMX和HAL相对现在Bug更多,使用也不方便。再加上用户习惯了标准外设库,所以早期推出STM32CubeMX时,用户并不买账。
因此,为了推广STM32CubeMX,以及让更多用户使用STM32CubeMX,ST在14、15年逐渐停止了对各MCU标准外设库的更新和维护,让用户转向了HAL和LL库。
STM32CubeMX是一个图形化的软件配置工具,使用图形向导可以生成STM32初始化代码工程。
STM32CubeMX特性:
1.直观的选择 STM32 微控制器(MCU)和微处理器(MPU)。
2.丰富易用的图形化界面:
-自动解决配置冲突
-具有参数约束动态验证的外设和中间件功能模式
-时钟树与配置的动态验证
-功耗预测
3.生成初始化代码工程,包含:EWARM、 MDK-ARM、 TureSTUDIO、 SW4STM32等。
4.针对部分MPU生成Linux设备树。
5.可独立运行在Windows、Linux和macOS上使用&#