当前位置:首页 > 编程笔记 > 正文
已解决

独立按键去抖动

来自网友在路上 178878提问 提问时间:2023-11-22 20:56:45阅读次数: 78

最佳答案 问答题库788位专家为你答疑解惑

/*-----------------------------------------------
  内容:切换到独立按键模式,通过按键在数码管显示对应的数字
------------------------------------------------*/
#include<reg52.h> //包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义
sbit key1=P3^0;   //定义按键位置
sbit key2=P3^1;
sbit key3=P3^2;
sbit key4=P3^3;
/*------------------------------------------------
                    延时子程序
------------------------------------------------*/
void delay(unsigned int cnt)
{
 while(--cnt);
}
/*------------------------------------------------
                    主函数
------------------------------------------------*/
main()
{
 

 P2=0x00;
 while(1)
      { 
      if(!key1)
         {  //按下相应的按键,数码管显示相应的码值
         delay(1000);
         if(!key1)
           {
           P0=0x06;//数码管显示"1"
            }
         }
      if(!key2)
         {  //按下相应的按键,数码管显示相应的码值
         delay(1000);//去抖动
         if(!key2)   //检测按键确实按下,进行按键处理
           {
           P0=0x5B;//数码管显示"2"
           //这里可以添加按键按下所需要的操作,如数据加减乘除,蜂鸣器等设备开关
            }
          }
      if(!key3)
         {  //按下相应的按键,数码管显示相应的码值
         delay(1000);
         if(!key3)
           {
           P0=0x4F;//数码管显示"3"
           }
          }
      if(!key4)
         {  //按下相应的按键,数码管显示相应的码值
         delay(1000);
         if(!key4)
           {
           P0=0x66;//数码管显示"4"
            }
         }
      }
}


 

查看全文

99%的人还看了

猜你感兴趣

版权申明

本文"独立按键去抖动":http://eshow365.cn/6-41969-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!