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”烧录即可
热门推荐
探析婚礼中的传统礼仪:三拜九叩的深层法律内涵和现代适用
逆境中的希望:坚韧心态的培养与实践
2025佛山汽车报废更新补贴详解:最高可达2万元,你符合条件吗?
如何有效防止车窗玻璃的紫外线辐射?这种防晒措施对车内环境有何改善?
竞业协议如何影响员工的薪资
人工智能如何做出决策
白蛋白结合型紫杉醇:一种新型抗癌药物的临床应用
迪迦奥特曼里哪个奥特曼客串的
鼻窦炎手术费用详解:三种手术方式对比
家用电器功率表及查询方法全攻略
PPT制作必知:如何有效嵌入字体以保持一致性
税务注销简易程序:企业退出市场的新路径
西门子PLC与NPN、PNP传感器接线方式,超全讲解!
菲尼克斯太阳vs密尔沃基雄鹿:数据对比与赛事分析
大学生就业:签劳动合同的重要性与注意事项
激光切割机在多个领域广泛应用,它的优势何在?
新车临时牌照的有效期及法律规范
初中生怎么学习才能提高英语口语能力?
精神分裂怎么办
健身新手必读:如何科学补充蛋白质
婚后父母转账钱怎么明确属于个人
夫妻共同财产的范围与特征
苏州莲花岛景区攻略,含门票、交通指南、游玩路线、美食推荐
汽车减震器的常见故障与维修指南
拍摄计划表怎么用Excel写
软件生产技术三大文件要求
由IMAX版《哪吒2》逆袭看北京市巨幕影厅建设
加强品质管理体系:提升企业发展的产品质量
加油站「低成本增设电动汽车充电站」思路参考
如何在创业公司中建立灵活的工作环境