一、写在前面
之前开发STM32,大家常见的就是使用寄存器、或者标准外设库进行开发。
但是,从15、16年开始,ST逐渐停止了对标准外设库的更新和维护,转向了HAL和LL库。
·SPL:Standard Peripheral Library标准外设库
·HAL:Hardware Abstraction Layer硬件抽象层库
·LL:Low-layer底层库
我写STM32CubeMX系列教程有两个原因:
1.停止标准库更新,使用STM32CubeMX配置HAL/LL库是主流;
2.网上关于STM32CubeMX的教程相对凌乱,没有系统的进行讲解。
该系列教程会从基础开始写起,以及结合实例代码详细讲述。后面实例我计划另开分支,比如针对F1系列就开一个关于F1分支的教程。
二、关于STM32CubeMX
STM32CubeMX是一个图形化的软件配置工具,使用图形向导可以生成STM32初始化代码工程。
STM32CubeMX这个工具是ST目前重点打造的工具,目的就是为了方便开发者,节约时间,提高开发效率
官方地址:https://www.st.com/stm32cubemx
STM32CubeMX特性:
1.直观的选择 STM32 微控制器(MCU)和微处理器(MPU)。
2.丰富易用的图形化界面: -自动解决配置冲突 -具有参数约束动态验证的外设和中间件功能模式 -时钟树与配置的动态验证 -功耗预测
3.生成初始化代码工程,包含:EWARM、 MDK-ARM、 TureSTUDIO、 SW4STM32等。
4.针对部分MPU生成Linux设备树。
5.可独立运行在Windows、Linux和macOS上使用,或作为 Eclipse 插件使用。
当然,以上特性来自官网,初学者需要自己安装使用之后才会逐渐了解它,下面给一段关于STM32CubeMX V5的视频介绍:
STM32CubeMX_V5.0介绍_腾讯视频
三、STM32Cube子集介绍
上面介绍了STM32CubeMX,其实STM32CubeMX是STM32Cube的一个子集,因为STM32Cube包含多项内容。
一张图了解STM32Cube:
3.1 软件开发工具
一套用户友好的软件开发工具,涵盖从概念到实现的项目开发的所有阶段。 STM32CubeMX:一个图形化的软件配置工具,可以自动生成C使用图形向导初始化代码(也是该教程的重要工具)。
STM32CubeProgrammer(STM32CubeProg):图形化和命令行版本的编程工具。
STM32CubeMonitor-Power(STM32CubeMonPwr):一种用于测量和帮助的监控工具优化单片机的功耗。
3.2 STM32Cube™ 软件包
STM32Cube HAL:一套针对特定系列MCU的硬件抽象层(HAL),如STM32Cube_FW_G0。确保整个STM32组合的可移植性。
STM32Cube LL:一套针对MCU底层的库,确保最佳的性能。
中间件组件:如RTOS, USB, TCP/IP。
例程:所有嵌入式软件实用程序与全套外设应用的例程。
更多相关内容可参看我微信公众号『strongerHuang』分享的一篇文章: STM32Cube到底包含哪些工具?
本文就介绍到这里,更多重要信息请进入官网查看:https://www.st.com/stm32cubemx
『本文转载自网络,版权归原作者所有,如有侵权请联系删除』