第一节按键的基本知识
按键的最基本的知识就是消抖,它分为软件消抖和硬件消抖。其中,软件消抖流程为:当检测到按键按下时,启动一个延时,持续一段时间(通常几毫秒);在延时结束后,再次读取按键状态;如果按键仍然处于按下状态,那么可以确定按键的状态为按下;否则,可以确定按键的状态为释放;软件消抖通过延时等待按键电平的稳定来避免误触发。如下图:

硬件的消抖方案有很多种:在按键引脚与微控制器之间添加外部电路元件,如电容、电阻或Schmitt触发器等,这些电路元件可以滤除按键的电气噪音,提供更稳定的电平信号。
蓝桥杯物联网开发板并没有在硬件上处理,所以只能通过软件的方式来消抖。
第二节硬件解读

从图中我们可以看出,按键的引脚连接到PC14,所以我们只需要读取PC14的电平就可以了。当按键被按下,按键的1,4和2,3导通,按键的1,4接地,导致R12也接地,所以PC14也就是低电平。由此我们知道,当按键按下时,PC14为低电平;反之为高电平。
第三节 CubeMX配置
第一步:配置PC14为输入,并配置上拉(下图4处)和标签(下图5处)。

第二步:配置LD5,如下图:记得将初始化电平设置为高电平(下图5处),这样最开始LD5是熄灭状态。

第四节 MDK代码

结合上图,可以看出需要20ms的消抖时间。所以MDK代码如下:

第五章 实验现象
注意:
1,下载程序的时候,请选择A开发板。
现象:按下USER,LD5翻转一次。
来源:撞上电子微信公众号
版权:东莞市东城墨竹公子电子工作室
日期:2023.06.06
-
led
+关注
关注
243文章
24440浏览量
687535 -
控制
+关注
关注
5文章
1031浏览量
125079
发布评论请先 登录
【瑞萨RA6E2】 配置Keil开发环境+使用按键控制LED+串口/调试器烧录程序
小马智行第七代自动驾驶车辆上线运营
【EASY EAI Nano-TB(RV1126B)开发板试用】+LED闪烁效果及按键控制
京微齐力入选第七批专精特新“小巨人”企业
【RA4M2-SENSOR】+按键控制LED灯
【「DeepSeek 核心技术揭秘」阅读体验】--全书概览
ZX8002D LED触摸调光集成芯片数据手册
小马智行第七代自动驾驶车辆广深开跑
第六章 GPIO输入——按键检测

第七章独立按键控制LED
评论