安装并使用STM32CubeMX软件及HAL库的安装
STM32CubeMX软件的安装
什么是STM32CubeMX?
STM32CubeMX是一款由ST公司为STM32系列单片机制作的一款软件。它可以快速建立工程、快速初始化外设等,大大提高了开发效率。
安装STM32CubeMX
一共需要用到两样东西:
1.STM32CubeMX
2.Java运行环境(Java Runtime Environment)
STM32CubeMX
在ST官网下载该软件
注册ST官方账号
下载STM32CubeMX软件
JRE(Java Runtime Environment)
STM32CubeMX软件基于Java环境运行,所以要安装JRE。
在Java官网下载Java
安装Java
安装成功
HAL库的安装
STM32共有三种开发方式,分别是直接配置寄存器、标准库、HAL库:
1.直接配置寄存器
直接配置寄存器即使用汇编语言直接操作寄存器来实现各种功能,更接近原理。但是STM32的寄存器数量很 大,使用这种开发方式的时候要经常查阅数据手册,效率很低。
2.标准库
这种方式是目前开发STM32最普遍的方式。ST公司为每款芯片都制作了一份库文件,在这些文件中一些常用 量、部分外设结构体变量等都被封装好,使用者只需配置结构体成员即可修改各种外设的寄存器,实现不同 的功能。
3.HAL库
HAL全称为Hardware Abstraction Layer,中文译为“硬件抽象层”。HAL库在标准库之后推出。和标准库相 似,但更为高效。引用网上一篇博客说的话“如果说标准库把实现功能 需要配置的寄存器集成了,那么 HAL库的一些函数甚至可以做到某些特定功能的集成”。标准库需要几句话实 现的功能,HAL库可能只需 一句话,HAL库的高效性可见一斑。同时,HAL库也很好地解决了程序移植的问 题,只要是相通的外设, 程序基本可以直接复制粘贴。
在线安装
打开STM32CubeMX软件,点击help->Manage embedded software packages,按照芯片型号选择相应的库,点击"Install Now"
安装完成
用STM32CubeMX建立工程
打开软件,点击File->New Project,在搜索框内输入芯片型号并选择(以STM32F103RC为例),进入如下界面
(滑动鼠标的滚轮可以缩放芯片)
点击芯片引脚可以看到该引脚不同的功能
假如要点亮一个LED灯,我们首先查看芯片原理图并找到LED灯对应的引脚,点击,设置为GPIO_Output,(假设LED灯的引脚是PC5),设置后引脚会变成绿色
点击Clock Configuation,进行时钟配置,将主频设为64MHz
系统预览,查看配置的各种外设和GPIO状态(GPIO output level:FPIO初始状态,这里是低电平,GPIO mode :推挽和漏极开路)
推挽:理解为高电平就输出高电平,低电平就输出低电平,不需要外部3.3V做上拉
漏极开路:理解为低电平时,把它接地,高电平时,把芯片管脚断掉,所以需要上拉个3.3V
工程管理(给工程取名字,IDE选择,存储位置等)
注意:存储目录不要有中文
进一步配置
Copy all used libraries into the project folder: 将HAL库中所有的.h和.c文件都复制到所建工程中
Copy only the necessary library files:只复制所需的.h和.c文件到所建工程中
Add necessary library files as reference in the toolchain project configuration file:不复制文件,直接从软件包存放位置导入.h和.c文件
最后点击GENERATE CODE创建工程
创建成功