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”烧录即可
热门推荐
改变你内心的对话如何改变你的生活:积极自我对话的魔力
背痛难忍?试试这些捶背技巧,让你告别酸痛!
滕王阁序:王勃的千古名篇究竟有多少字?
南京地铁发力!麒麟片区迎来新一轮建设热潮
重在战术演练!U21国足2比0伊朗国青,次回合锻炼价值更大
小番茄品种排名
帝王也深情,说说那些著名帝王的爱情故事
用这10个AI艺术灵感开启精彩世界探索之旅!你最喜欢哪一个?
孙惠柱丨莎式史剧与喜剧的美妙混搭
插混与油电混动区别, 你真的了解吗? 看完涨知识了!
每天锻炼呼吸功能,身体会有哪些变化?
2025年技工学校专业选择指南:热门专业与就业前景分析
单日票房破纪录,春节档的震撼才刚刚开始
域名进不去的几种可能
如何按规办理民生保险退保?这类民生保险退保有什么步骤?
企业如何构建AI知识库
一文详解:如何准确区分田螺与福寿螺
奶茶:如何选择与享受这一饮品?
申论写作,如何使论据紧密地论证论点?
周瑜诸葛亮司马懿,在正史中谁带兵打仗最厉害?别不信这才是历史
沪港高铁动卧列车首发,“对香港人方便,对去香港玩的人来说更方便”
揭开民国短剧的魅力:4部不可错过的好剧,证明你的眼光有多独特
2025本命年吉祥物佩戴指南:生肖、颜色、材质全方位解析
三聘六礼是什么
鼻屎该如何正确清理
航行“计划”不是“僵化”
三国志战略版吴枪阵容搭配攻略:战法选择与加点兵书详解
新能源充电桩遇故障?一步步教你轻松排查!
农文旅融合发展下的乡村振兴新案例——吉安十里芳菲钓源古村
计算机系统引起进程阻塞与唤醒的事件有哪些