前言:
眼前各位老铁们对“stm32按键控制小灯”大概比较关怀,我们都需要知道一些“stm32按键控制小灯”的相关知识。那么小编在网络上网罗了一些有关“stm32按键控制小灯””的相关文章,希望小伙伴们能喜欢,兄弟们一起来学习一下吧!在前面一章中介绍了STM32CubeMX开发环境的搭建,今天利用搭建好的开发环境点亮一盏LED灯,也是最基本的学习使用STM32CubeMX新建一个工程,熟悉整个工程的创建、编译代码、下载到开发板的全过程。
第一节 STM32CubeMx 新建项目
(1)点击菜单 File->New Project,新建项目如出现服务器的软件更新等,选择 Cancel。
出现芯片选择界面,根据需求选择,这里选择野火指南者的芯片 STM32F103VET6,LQFP100,100 引脚的芯片,点击 start project。
(2)时钟源的配置
根据原理图选择时钟在 CubeMX 中配置选择时钟,外部高速时钟
时钟配置,点击 Clock Configuration,输入外部 8MHz,HCLK 72MHz。
(3)GPIO 配置
点 LED 灯
以 LED-G 绿灯为例,配置 LED 引脚 PB0,低速,输出模式,上下拉,LED 为 LED-G;
(4) 项目配置
项目配置,如下图所示,添加项目名称,可以选择项目生成的位置,工具链选择(这里使用 MDK),堆栈设置,HAL 库的位置选择。
(5)Code Generator 的设置
(6)代码生成
配置到这儿,cubeMX 已经完成了时钟配置,GPIO 配置。使用 MDK 打开项目就可以控制
LED 了,可以可出 cubeMX 主要完成代码初始化配置。
第二节 MDK 项目编写应用代码
(1) 对于 cubeMX 生成的代码可以从图中看出,软件已经帮我们完成了基本的初始化,我们只需要在 main.c while(1)主函数中添加我们的应用代码,不像标准库一样手动地添加外设初始化、时钟初始化的配置代码。
现在我们需要操作 GPIO 来控制 LED 的灯的亮 or 灭。GPIO 的操作函数有很多,在
stm32f1xxhalgpio.h 中查找。
我们在 main.c 的主函数中 while(1)循环中加入控制 LED 灯的代码,如下图所示:
HALDelay()是毫秒延迟函数,参数 3000 是 3s。使用 HALGPIO_WritePin() 写入 RESET 和 SET控制写 1 和写 0。
(2)编译程序
编译程序没有出错,配置编译器进行程序下载。
第三节 看效果如何
可以看出 LED-绿色的灯美三秒闪烁一下。
标签: #stm32按键控制小灯