跳到主要内容

2.2 STM32编程初步使用:以LED的闪烁为例

STM32CubeMx生成模板工程文件到keil5的使用,此示例独立于具体的硬件套件,旨在帮助初学者更容易地理解和上手。

1)打开STM32CubeMx,点击ACCESS TO MCU SELECTOR。

alt text
图2.2.1 打开STM32CubeMx,选择MCU

2)在搜索框输入跟开发板匹配的芯片型号,这里选择为 STM32G031G8,最后点击Start Project。

alt text
图2.2.2 选择STM32G031G8,创建新工程

3)这里我们选择控制一个灯。我们查看开发板模块的原理图,原理图相关资料的链接如下:https://www.eetree.cn/project/detail/32 ,得知在该小模块上,芯片控制LED的引脚为PB8。

alt text
图2.2.3 开发板模块原理图

4)在STM32CubeMX的Pinout & Configuration上对PB8进行如下设置,①点击PB8,选择为GPIO_Output模式;②点击System core 的GPIO,点击Use Label,在下方弹出的的Use Label输入如LED,这样就方便我们在编程的时候查找和使用该引脚。

alt text
图2.2.4 对PB8进行设置

alt text
图2.2.5 选择为GPIO_Output模式

alt text
图2.2.6 创建快捷标签

5)时钟配置。修改HCLK为64MHz。

alt text
图2.2.7 修改HCLK为64MHz

6)在Project Manager下,输入项目的名字,选择工程文件的地址,Toolchain/IDE为MDK-ARM。

alt text
图2.2.8 创建新工程步骤1

在项目比较大的时候,可以选择勾选 Generate peripheral initialization as...,此处不勾选。

alt text
图2.2.9 创建新工程步骤2

7)这里默认为Hal库开发,可选择LL库开发。我们以HAL库为例。(HAL库占用的FLASH资源较多,LL库比较精简)

alt text
图2.2.10 创建新工程步骤3

8)点击右上角,生成工程。

alt text
图2.2.11 生成新工程

弹出查看工程的方式,这里我们点击 Open Project,Keil5自动打开该工程。

alt text
图2.2.12 打开新工程

alt text
图2.2.13 工程打开界面

9)在maic.c文件的while(1)中修改代码。 ①找到HAL库的GPIO的函数:HAL_GPIO_TogglePin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin);复制得到LED_keil/Application/User/Core/main.c的while(1)内。

alt text
图2.2.14 在main.c文件中的while(1)中修改代码 ②在main.h文件获取LED的相关引脚定义,对①的函数进行相应的修改。

alt text
图2.2.15 获取LED相关引脚定义,修改相应函数 ③寻找并添加相应的延时函数,如下图所示。

alt text
图2.2.16 添加延时函数

④根据下图方式,勾选生成Hex文件。

alt text
图2.2.17 生成Hex文件

⑤点击右上角进行编译,在控制台打印: 0 Error(s), 0 Warning(s).表示编译成功。固件下载到单片机上在本文的第三小结进行讲解。

alt text
图2.2.18 编译成功