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、按下按键按照二进制的形式显示

数据运算符

逻辑语句

相关推荐
电子工程师-C51几秒前
基于51单片机的红外防盗及万年历仿真
单片机·嵌入式硬件·51单片机
Camellia031117 分钟前
嵌入式学习--江协stm32day5
stm32·嵌入式硬件·学习
keke1023 分钟前
PLC入门【1】PLC的简单介绍(教学软件:FX-TRN-BEG-C)
嵌入式硬件
keke101 小时前
PLC入门【2】PLC的接线
嵌入式硬件
江山如画,佳人北望5 小时前
stm32-c8t6实现语音识别(LD3320)
stm32·单片机·嵌入式硬件
baowxz5 小时前
航芯MCU使用IAR+Jlink调试
单片机·嵌入式硬件
wangxinwei20005 小时前
stm32_LAN8720驱动
stm32·单片机·嵌入式硬件
大叔带刺6 小时前
AUTOSAR实战教程--DoIP_01_配置项解释
单片机·嵌入式硬件
小胖同学~6 小时前
Linux--vsFTP配置篇
stm32·单片机·嵌入式硬件
小智学长 | 嵌入式7 小时前
SOC-ESP32S3部分:36-适配自己的板卡
单片机·物联网·esp32