hanfei08131106的笔记 https://bbs.21ic.com/?628143 [收藏] [复制] [RSS]

日志

自己总结的一些东西单片机初学

已有 1174 次阅读2010-6-19 08:02 |系统分类:单片机| 按键, 去抖动

1、  按键判断:


        (1)、首先判断是否按下:if(KEY_INT0==0) { ; } //判断按键是否按下,当读取I/O引脚电平为0时,表示有键按下


       2)、再次延时一段时间判断:Key_Delay(10000);//延时一段时间,目的是去取按键的抖动


                                         if(KEY_INT0==0){ ; }//再读取I/O引脚电平为0时,表示此时为一个有效的键按下


       3)、在第二个if语句中执行按键的内容while(KEY_INT0==0);//等待按键识放


 


2、当只有一个按键,根据按键标志ID)来分配不同数值时的任务(case语句):


         if(KEY==0)//判断按键是否按下


        {


          Delay(10);//去抖动


          if(KEY==0)//再判断是否真得按下


            {


              ID++;//状态加1


              if(ID==4)ID=0;//加到4回到初始状态


              while(KEY==0);//等待按键释放


              LED=0xff;


            }


        }


      switch(ID)//根据ID状态来闪烁不同的发光二极管


        {


          case 0:、、、、、、、、、


               、、、、、、、、、、


               break;


路过

鸡蛋

鲜花

握手

雷人

评论 (0 个评论)