STM32 HAL库开发入门:GPIO控制LED
创作时间:
作者:
@小白创作中心
STM32 HAL库开发入门:GPIO控制LED
引用
CSDN
1.
https://m.blog.csdn.net/qq_45217381/article/details/145584685
本文是一篇关于STM32 HAL库开发的入门教程,主要介绍了使用STM32 CubeIDE和Proteus进行GPIO开发的基本步骤。文章内容包括新建工程、配置时钟、配置GPIO、编写代码以及下载程序等环节,详细描述了按键控制LED的实现过程,并配有相应的图片说明。
一、新建工程
打开开发软件,左上角“文件”—“新建”—“STM32 Project”
选择芯片型号,我们这里使用的是STM32F103C6T6A,可以直接搜索
配置好工程名称,点击完成
二、配置时钟
找到“System Core”—“RCC”
配置HSE时钟
找到时钟树配置,将主频设置为72MHz,按下“Enter”键会自动配置好全部内容
三、配置GPIO
3.1 LED引脚配置
LED引脚为PC13,配置成输出模式,找到PC13引脚,选择“GPIO_Output”
在左侧配置好初始电平、输出速度,可以自定义一个引脚标签
3.2 按键引脚配置
按键需要配置成输入模式,我们硬件电路中按键一端接IO,另一端接GND,所以配置按键引脚为上拉输入模式,按键引脚选择PB7
四、其他配置
为了增加代码的可读性,我们配置自动生成代码时生成单独的.c和.h文件,配置步骤如下
另外需要Debug的话还需要配置一下这里
五、代码
5.1 生成代码
上面的内容全部配置完成后我们点击“项目”,选择“Generate Code”自动生成代码
5.2 配置生成.hex文件
点击“项目”—“属性”
5.3 LED状态翻转
我们先来测试一下LED状态翻转
while (1)
{
HAL_GPIO_TogglePin(LED_GPIO_Port,LED_Pin);
HAL_Delay(500);
/* USER CODE END WHILE */
/* USER CODE BEGIN 3 */
}
/* USER CODE END 3 */
编写完成后点击构建,这里博主使用Proteus仿真了一下,用实物的小伙伴可以直接烧录到板子里,后面介绍如何烧录,测试效果如下
5.4 按键控制LED
我们写一段按键检测程序,在检测到按键按下时翻转LED状态
/* USER CODE BEGIN WHILE */
while (1)
{
// 按键按下
if (HAL_GPIO_ReadPin(KEY_GPIO_Port,KEY_Pin) == 0)
{
// 延时消抖
HAL_Delay(10);
if (HAL_GPIO_ReadPin(KEY_GPIO_Port,KEY_Pin) == 0)
{
// 松手检测
while (!HAL_GPIO_ReadPin(KEY_GPIO_Port,KEY_Pin));
// 翻转LED状态
HAL_GPIO_TogglePin(LED_GPIO_Port,LED_Pin);
}
}
/* USER CODE END WHILE */
/* USER CODE BEGIN 3 */
}
/* USER CODE END 3 */
测试效果如下
六、下载程序
打开“STM32 ST-LINK Utility”,先连接板子
之后点击下载,选择.hex文件,点击“start”烧录即可
热门推荐
macOS「时间机器」备份和恢复指南
身份证照片实现“自主拍照”,河南公安推出便民新举措
如何利用碎片时间学习:10个实用建议
Excel中如何实现按照0.5取整的多种方法
二十四节气的来历:从古代智慧到现代生活
金台观晋 | 4000年前,山西先民如何断定冬至日,二十四节气起源于襄汾?
支票有效期怎么算
海南岛4月旅游攻略:热门景点、特色活动及旅游地点推荐
蓄电池内阻过大的影响及降低方法
电池电压内阻测试设备:精准测量,赋能电池健康管理
欠条与借条在法律上有什么区别
借条和欠条诉讼时效及书写规范详解
数学建模与素养提升
我国消费电子行业:市场规模不断增长 但资本热度逐年下降
项目需求表模板管理指南:从收集到追踪的完整流程
QQ实名认证全解析:保护您的数字身份与网络安全
如何让演讲层次分明
台前县消防救援大队:科学管理,守护消防员心理健康
实操示例:通过AI不断优化论文大纲逻辑结构
敦煌文化“潮”出圈 旅游“热”不停
如何在 GitHub 下载某个程序的特定版本(代码)
住在这几区才算「真正的京都人」!日本京都市11区特色
介绍
掌纹与命运:是巧合还是必然?
如何评估去澳洲留学的性价比
如何进行资产转移
提升供应链库存管理效率的关键策略
新手练车指南:选择合适的练车地点和熟悉车辆操作
毛驴与马的杂交:驴骡的奇特之路与科学揭秘
驴马杂交品种:马骡与驴骡的特征与区别
电视机外壳发黄怎么办?清洁方法和美化建议全攻略