普中51单片机独立按键原理及源代码

本文介绍了51单片机独立按键存在的抖动问题及其原因,重点讲述了通过软件方法消除抖动的原理。当按键按下时,电路导通导致P3^1口电平拉低,通过检测电平变化来判断按键状态。同时,提供了1毫秒延时函数的代码实现,以确保稳定可靠的按键检测。
摘要由CSDN通过智能技术生成

 由于按键是机械弹性按键,具有弹性,在毫秒级别的时间下:按键后有短暂的抖动

转载自江科大自协化51单片机入门教程

 如果按键一次用力较轻,按键里的小金属片可能会多次抖动,使得LED闪烁多次

即轻微按一次,小概率出现多次LED闪烁

消除毫秒级别下的抖动有两种方法:

①硬件消除抖动,成本较高

②软件消除抖动,低成本,可修改。

所以采用软件消除抖动的方法:

原理图如下:

以K1为例:

K1左接P31,而P31与P31 TXD连接,所以P3^1口是与k1开关连接的,当k1按键按下时电路就导通了,因为k1右边接了GND,所以P3^1这个io口的输出电平就被拉低变0电平了。(而P31IO口电平能被拉低是因为P3口是准双向io口)

故可以通过P3^1的io口电平获得按键的状态:

P3_1==0(

  • 3
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值