51单片机——按键控制

1、按键介绍

轻触按键:相当于是一种电子开关,按下时开关接通,松开时开关断开,实现原理是通过轻触按键内部的金属弹片受力弹动来实现接通和断开。

2、按键的抖动

对于机械开关,当机械触点断开、闭合时,由于机械触点的弹性作用,一个开关在闭合时不会马上稳定地接通,在断开时也不会一下子断开,所以在开关闭合及断开的瞬间会伴随一连串的抖动。

3、按键原理图

首先查看按键原理图,发现按键一个引脚接GND,一个引脚接MCU。MCU接出来的引脚默认都是高电平,一般情况下表示正极。

4、优化寄存器按字节操作改成按位操作

利用头文件<REGX52.H>里面的按位操作变量来实现

5、按键控制LED点亮和熄灭

通过按键K2来控制LED的亮灭,当按键按下时,按键形成通路,一段接GND,一端接MCU的P31引脚,MCU输出为高电平,通过GND下拉为低电平即0,当检测到按键状态为0时,此时LED点亮。

6、按键抖动优化

因为按键弹片是金属薄片,按下和弹起时会随着惯性上下起伏。根据金属薄片的特性,我们选择不在金属薄片抖动的时间去采集按键状态,通过延时函数来避开抖动时间。

每次采集按键状态时,延时20ms。

7、按下按键按照二进制的形式显示

数据运算符

逻辑语句

相关推荐
leo__5203 小时前
STM32 MAX30102 心率血氧测量代码
stm32·单片机·嵌入式硬件
金色光环7 小时前
【DSP学习】DSP28335 点亮LED
嵌入式硬件·学习·dsp开发
yuan199977 小时前
STM32 IAP 电量计源码
stm32·单片机·嵌入式硬件
学不懂飞行器8 小时前
从小白到国奖:全国大学生电子设计竞赛(电赛)高质量备赛全攻略
stm32·单片机·嵌入式硬件
高翔·权衡之境8 小时前
缓存一致性——多核系统的默契之约
驱动开发·嵌入式硬件·安全·缓存·系统安全·信息与通信
念恒1230610 小时前
STM(GPIO)上篇
stm32·单片机·嵌入式硬件
时空自由民.10 小时前
嵌入式MCU+RTOS软件框架设计方案
单片机·嵌入式硬件
嵌入式-老费14 小时前
esp32开发与应用(esp-idf开发)
嵌入式硬件
念恒1230614 小时前
STM32---新建工程
linux·stm32·嵌入式硬件
振南的单片机世界14 小时前
全双工vs半双工vs单工:电话、对讲机、广播
stm32·单片机·嵌入式硬件