⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 qudou.c

📁 通信工程系专业综合设计C51单片机的键盘去抖程序,
💻 C
字号:
#include <reg51.h>
unsigned char xdata *shuma1;
unsigned char xdata *shuma2;
unsigned char xdata *xiaoshudian;
unsigned char xdata dujianzhi1 _at_ 0xc000;
unsigned char xdata dujianzhi2 _at_ 0xd000;
unsigned char xdata dujian1;
unsigned char xdata dujian2;
unsigned char xdata xiangjian1;
unsigned char xdata jian1;
unsigned char xdata jian2;
unsigned char xdata xiangjian2;
unsigned char xdata dujian;
unsigned char xdata zancun1;
unsigned char xdata jishu1;
unsigned char xdata jishu2;
unsigned char xdata xianshi;
sbit p3_5=P3^5;
void delay1()
{unsigned char xdata i;
i=0;
for(i=0;i<200;i++)
{
for(i=0;i<200;i++)
{;}
}
}
void delay2()
{unsigned char xdata a;
a=0;
for(a=0;a<200;a++)
{;}
}
void dingshi() interrupt 1 using 0
{TH0=0xb1;
 TL0=0xe0;
 jishu1++;
 jishu2++;
}
void xuan1()
{
 do
 {dujian1=dujianzhi1;
 zancun1=dujian1;
 delay2();
 dujian2=dujianzhi1;
 xiangjian1=zancun1-dujian2;
 }
 while(xiangjian1!=0);
 delay1();
do
 {dujian2=dujianzhi1;
  xiangjian1=zancun1-dujian2;
 } 
  while(xiangjian1==0);
switch(zancun1)
  {case 0x7f:xianshi=0x10;break;
   case 0xbf:xianshi=0x61;break;
   case 0xdf:xianshi=0x94;break;
  }
  *shuma1=xianshi;
}
void xuan2()
{
 do
 {dujian1=dujianzhi2;
 zancun1=dujian1;
 delay2();
 dujian2=dujianzhi1;
 xiangjian1=zancun1-dujian2;
 }
 while(xiangjian1!=0);
 delay1();
do
 {dujian2=dujianzhi2;
  xiangjian1=zancun1-dujian2;
 } 
  while(xiangjian1==0);
switch(zancun1)
  {case 0xf7:xianshi=0x40;break;
   case 0x7f:xianshi=0x90;break;
   case 0xfb:xianshi=0x52;break;
  }
  *shuma1=xianshi;
}
void anjian()
{unsigned char xdata xuanze1;
 unsigned char xdata xuanze2;
 dujian1=0;
 dujian1=dujianzhi1;
 if(dujian1!=0)
 {xuan1();
 }
 xuan2();
}
void main()
{
p3_5=0;
jishu1=0;
jishu2=0;
xianshi=0;
//TMOD=0x01;
//TH0=0xb1;
//TL0=0xe0;
//EA=1;
//ET0=1;
//TR0=1;
shuma1=0x9000;
shuma2=0xa000;
xiaoshudian=0x8000;
*xiaoshudian=0xff;
while(1)
{
anjian();
}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -