打印

还是建议认真看下老Hot的**

[复制链接]
楼主: czha1
手机看帖
扫描二维码
随时随地手机跟帖
81
我是这样判断的,
先判断按键是否有输入信号。有信号输入就进入按键循环判断高低电平状态。
然后使用两个变量,a,b。
a用作延时循环判断按键次数的计数,假如设定为连续循环判断10次,就让程序连续判断按键10次。
b用作统计按键状态计数,连续判断10次确认有9次就作为有效的输入信号。

使用特权

评论回复
82
中国微电脑网| | 2015-5-11 18:50 | 只看该作者
                                  if(!AUTO)                                 //检测自动键  aa=926;
                                 {                                                  //按下自动键进入条件判断语句
                                  for(;k<=16;)            /*2014 12 06小于等于16循环*/
                                  {
                                     if(!AUTO)             /*检测自动按键为低电平?*/
                                    {                     /*循环检测 */
                                    k++;
                                   j++;
                                    delay(500);                          //2014 12 06 300修改为500
                                   }
                                    else if(~!AUTO)       /*检测自动按键为高电平?*/
                                   {
                                   k=0;                  /*寄存器复位*/   
                                   j=0;                                 //输出标志归零
                                   }   
                                  }
                                   if(j>=15)                         //2014 12 06 5修改为15
                                   {
                                   Testing=1;                         /*检测运行按键循环标志*/
                                   xszd();                          //显示自动
                                   k=0;
                                   semiauto=1;                          //半自动运行标志 自动1运行继续循环
                                   val6=0;                                 //实际值归零
                                    valb=val6;
                                    datachange();                 /*实际波值百 十 个三位分离*/
                                    display0();                   //实际值显示
                                   manu=1;                                 //自动循环        运行标志置1
                                   autorun();                         //        调用自动循环运行子程序
                                   }
                                  }                                     //

使用特权

评论回复
83
小分子| | 2016-8-16 07:22 | 只看该作者
周炎33 发表于 2014-7-18 18:50
我也用了延时来去抖,可是效果不好,按键按下去有时还是会多跳一下,请问怎么准确的去抖啊,保证按键按一下 ...

按键等待。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则