STM32 GPIO配置详解:点亮LED灯
创作时间:
作者:
@小白创作中心
STM32 GPIO配置详解:点亮LED灯
引用
CSDN
1.
https://m.blog.csdn.net/2401_84378523/article/details/145336070
本教程将详细介绍如何在STM32F407ZET6微控制器上配置GPIO以点亮LED灯。通过本文,你将学习到如何新建相关文件、初始化LED以及进行点灯操作的具体步骤和代码实现。
本次实验基于STM32F407ZET6微控制器,主要目标是通过配置GPIO来实现LED灯的点亮。
新建文件
首先需要创建两个文件:LED.c和LED.h,并将它们封装到Driver文件夹中。双击Driver文件夹,将LED.c添加进来。
在LED.c和main.c文件中引入头文件LED.h。
LED初始化
LED初始化本质上是对GPIO的初始化。在使用GPIO引脚时,都需要对其进行相应的配置。这里我们直接复制库函数中的相关代码。
定义结构体变量
GPIO_InitTypeDef GPIO_InitStructure;
配置时钟
需要开启GPIOG族的时钟,因为LED灯的引脚属于GPIOG组(根据电路原理图确定)。
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOG, ENABLE);
选择需要配置的引脚
根据电路原理图,找到LED1对应的引脚位置。通过搜索得知,LED1对应的是PG13引脚。
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13;
选择工作模式
设置为输出模式。
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;
选择输出模式
选择推挽输出模式。
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
选择输入模式
选择浮空输入模式。
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;
配置速度
设置切换速度为100MHz。
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;
GPIO初始化
使用初始化函数对GPIOG组的引脚进行初始化。
GPIO_Init(GPIOG, &GPIO_InitStructure);
点灯操作
根据电路图,当引脚输出低电平时,LED灯才会亮起。因此,我们需要将引脚配置为低电平输出。
在LED_Init函数中声明,并在main.c文件中调用该函数。
在main.c中使用GPIO_ResetBits函数将引脚置为低电平,从而点亮LED1灯。
完成上述步骤后,编译并下载程序,即可实现LED1灯的点亮。
资源包
相关资源包可在百度网盘下载:
链接: https://pan.baidu.com/s/1DZZ_kP7jXLYeisntS9PZzA?pwd=6ujf
提取码: 6ujf
热门推荐
【享艺】经典怀旧,英文歌曲《Yesterday Once More》欣赏
16年高考路:唐尚珺的选择与思考
自我疗愈!六个方法【学会自救】
银行推出六大贴心服务,让老年人办理业务更轻松
异动直击 | 李嘉诚旗下长和大涨超20%,拟向贝莱德财团出售巴拿马港口等
脸上长了肉疙瘩怎么去掉
正官制劫财的命格:是福是祸
2024视觉传达设计英国TOP院校解析&申请要求
杀死一只越冬蚊等于消灭一千只“蚊二代”!你以为冬天蚊子就没了?它们在憋大招……
BJT三级管饱和区的深入分析
DOTA 巫妖技能分析及装备选择推荐
卫生间防水补漏全攻略:从材料选择到施工维护
为什么不能自己保管档案
烧水壶功率一般都多少瓦?大功率与小功率各有哪些优劣?
审判检查人员:公正司法的守护者与执行者
停车场纠纷:消费者权益保护与市场规范的法律思考
无稽之谈的基础解释
掌握这些干货,选板不被忽悠
两栖登陆作战中的火力突击:从历史战例到未来展望
3万左右二手车排行榜
山西晋中王家大院:耗时300年建成,面积远超故宫,家族富过九代
《大话水浒》:以现代笔法改写一众人物命运
相约春天赏樱花,武汉东湖开通三大赏樱专线
太阳穴胀痛的解决方法有哪些
代购哪些商品更有市场?这些商品的市场前景如何?
昆明消防携手AI大模型,开启智慧消防新纪元
如何在PPT中实现图片的无损压缩?
氧化剂和还原剂口诀是什么
人身损害误工期护理期营养期评定规范怎么应用
机器学习:分类评估方法