我们从2011年坚守至今,只想做存粹的技术论坛。  由于网站在外面,点击附件后要很长世间才弹出下载,请耐心等待,勿重复点击不要用Edge和IE浏览器下载,否则提示不安全下载不了

 找回密码
 立即注册
搜索
查看: 1364|回复: 6

[技术讨论] 按键消抖

[复制链接]

该用户从未签到

16

主题

75

回帖

0

积分

1元学习Allegro(1期)

积分
0

终身成就奖

发表于 2019-9-30 18:19:44 | 显示全部楼层 |阅读模式
  #include <reg52.h>
sbit LED1 = P0^0;
sbit LED2 = P0^1;
sbit LED3 = P0^2;
sbit LED4 = P0^3;

sbit KEY1 = P2^0;
sbit KEY2 = P2^1;
sbit KEY3 = P2^2;
sbit KEY4 = P2^3;

void delay();
void main()
{
    bit keybuf = 1;  //按键值暂存,临时保存按键的扫描值
    bit backup = 1;  //按键值备份,保存前一次的扫描值


while (1)
    {
        keybuf = KEY4;            //把当前扫描值暂存
        if (keybuf != backup)     //当前值与前次值不相等说明此时按键有动作
        {
            delay();              //延时大约10ms
            if (keybuf == KEY4)   //判断扫描值有没有发生改变,即按键抖动
            {
                if (backup == 0)  //如果前次值为0,则说明当前是弹起动作
                {
                  
                    P0 =~P0;  //计数值显示到数码管上
                }
                backup = keybuf;  //更新备份为当前值,以备进行下次比较
            }
        }
    }
}
//软件延时函数,延时约10ms
void delay()
{
    unsigned int i = 1000;

    while (i--);
}
回复

使用道具 举报

  • TA的每日心情
    开心
    2024-9-7 09:00
  • 签到天数: 2 天

    [LV.1]初来乍到

    0

    主题

    4981

    回帖

    3456

    积分

    二级逆天

    积分
    3456

    终身成就奖社区居民优秀斑竹奖

    QQ
    发表于 2019-9-30 19:36:56 | 显示全部楼层
    回复

    使用道具 举报

    该用户从未签到

    1

    主题

    4703

    回帖

    5

    积分

    二级逆天

    积分
    5

    终身成就奖特殊贡献奖原创先锋奖优秀斑竹奖

    发表于 2019-10-1 08:27:33 | 显示全部楼层
    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    2024-6-14 16:03
  • 签到天数: 16 天

    [LV.4]偶尔看看III

    0

    主题

    1万

    回帖

    7618

    积分

    二级逆天

    积分
    7618

    终身成就奖特殊贡献奖原创先锋奖优秀斑竹奖

    QQ
    发表于 2019-10-1 16:25:15 | 显示全部楼层
    回复

    使用道具 举报

  • TA的每日心情
    开心
    昨天 08:23
  • 签到天数: 126 天

    [LV.7]常住居民III

    2

    主题

    8636

    回帖

    9972

    积分

    二级逆天

    积分
    9972

    社区居民终身成就奖特殊贡献奖原创先锋奖

    QQ
    发表于 2020-2-17 08:55:14 | 显示全部楼层
    回复

    使用道具 举报

    该用户从未签到

    1

    主题

    194

    回帖

    158

    积分

    二级逆天

    积分
    158

    社区居民终身成就奖

    QQ
    发表于 2020-2-17 18:04:01 | 显示全部楼层
    回复

    使用道具 举报

  • TA的每日心情
    开心
    昨天 08:23
  • 签到天数: 126 天

    [LV.7]常住居民III

    2

    主题

    8636

    回帖

    9972

    积分

    二级逆天

    积分
    9972

    社区居民终身成就奖特殊贡献奖原创先锋奖

    QQ
    发表于 2020-2-19 09:59:28 | 显示全部楼层
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    论坛开启做任务可以
    额外奖励金币快速赚
    积分升级了


    Copyright ©2011-2024 NTpcb.com All Right Reserved.  Powered by Discuz! (NTpcb)

    本站信息均由会员发表,不代表NTpcb立场,如侵犯了您的权利请发帖投诉

    平平安安
    TOP
    快速回复 返回顶部 返回列表