STM32CubeMx入门教程

1. STM32CubeMx简介

      STM32CubeMX 是意法半导体推出的图形化配置工具, 通过傻瓜化的操作便能实现相关配置, 最终能够生成 C 语言代码, 支持多种工具链, 比如 MDK、 IARFor ARM、 TrueStudio 等。

STM32CubeMx主要特征

      1.直观的 STM32 微控制器和微处理器选择

      2.丰富易用的图形用户界面, 可配置

      3.具有自动解决冲突的引脚排列

      4.外设和中间层功能模式与参数约束的动态验证 Arm®Cortex®-M 核心

      5.具有动态验证配置的时钟树

      6.带有估计功耗结果的电源序列

      7.初始化 C 代码生成项目,符合 IAR™,Keil®和 GCC 编译,运行 ARM ®的Cortex ® -M 核心

      8.Arm®Cortex®a core (STM32 微处理器)部分 Linux 设备树的生成

      9.可作为独立软件运行在 Windows®、 Linux®和 macOS®(macOS 是苹果公司在美国和其他国家注册的商标)操作系统上, 或通过 Eclipse 插件。

  • STM32CUbeMx安装教程

1.准备相关软件,②③可自行到ST官网下载即可。①直接百度下载。

STM32CubeMx入门教程_HAL库

2.安装软件运行环境①,以管理员方式运行。

STM32CubeMx入门教程_HAL库_02

STM32CubeMx入门教程_STM32CubeMx_03

STM32CubeMx入门教程_HAL库_04

3.开始安装

STM32CubeMx入门教程_STM32CubeMx_05

STM32CubeMx入门教程_STM32_06

STM32CubeMx入门教程_图形化_07

STM32CubeMx入门教程_图形化_08

4.安装STM32CubeMx代码图形化操作软件。

STM32CubeMx入门教程_STM32_09

STM32CubeMx入门教程_STM32_10

STM32CubeMx入门教程_图形化_11

STM32CubeMx入门教程_STM32CubeMx_12

STM32CubeMx入门教程_STM32CubeMx_13

STM32CubeMx入门教程_STM32CubeMx_14

STM32CubeMx入门教程_图形化_15

  •  安装芯片库

1.安装需要的芯片库,找到STM32CubeMX软件打开。

STM32CubeMx入门教程_HAL库_16

      在电脑联网状态下,在我们选择新建工程时若没有你需要的芯片库软件会自动安装,也可以选择手动安装。

STM32CubeMx入门教程_HAL库_17

​3.有网络的情况下安装芯片库

STM32CubeMx入门教程_HAL库_18

4 本地安装

STM32CubeMx入门教程_STM32_19

5 开始安装

STM32CubeMx入门教程_STM32CubeMx_20

STM32CubeMx入门教程_STM32_21

 2.STM32CubeMx配置实例

​1 找到STM32CubeMX软件打开,我们这里通过芯片型号新建工程。

STM32CubeMx入门教程_STM32CubeMx_22

STM32CubeMx入门教程_HAL库_23

2.以MCU型号方式创建工程,直接搜索芯片芯片型号:STM32F103C8T6

STM32CubeMx入门教程_STM32_24

3 查找到MCU型号后直接双击进入配置界面

STM32CubeMx入门教程_STM32_25

配置界面如下:

STM32CubeMx入门教程_图形化_26

4 接下来我们进行LED控制的相关配置,配置LED我们可以分三个步骤进行:(1).开时钟,(2).配置GPIO引脚,(3).引脚电平控制(上下拉操作)。

STM32CubeMx入门教程_HAL库_27

(1).配置时钟时我们选择HSE(外部高速时钟)

STM32CubeMx入门教程_HAL库_28

      (2)GPIO口配置:我们使用的开发板上的LED灯是有4个,分别接在PB6,PB7,PB8,PB9上,配置为输出模式,配置完成如下,开发板LED引脚接线示意图:

STM32CubeMx入门教程_STM32CubeMx_29

引脚配置:

STM32CubeMx入门教程_图形化_30

      (3).引脚工作模式配置,我们这里是对LED灯进行配置,LED灯为低电平驱动,为了保证板子一上店是LED灯不会自动亮,所以我们设置引脚初始化后电平为高电平。

STM32CubeMx入门教程_HAL库_31

      ​5.对LED的引脚配置我们已经就此结束,接下来我们是对时钟树的配置,时钟树的配置直接关系到我们板子的工作主频。具体的时钟树频率的倍频和分频设置可以参考《STM32中文参考手册_V10》,这里就不再做详细介绍。

STM32CubeMx入门教程_HAL库_32

6 生成工程参数配置

STM32CubeMx入门教程_HAL库_33

STM32CubeMx入门教程_HAL库_34

7 生成代码,打开工程

STM32CubeMx入门教程_STM32_35

8.主函数如下

STM32CubeMx入门教程_HAL库_36

STM32CubeMx入门教程_图形化_37