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

📄 按键发送.txt

📁 学习89C51/S51/S52/C52好的基础程序
💻 TXT
字号:
#include<reg52.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
#define shuju P0
#define bus P1
//#define lcdbus P3
void delayms(int i)
{
int j;
for(j=0;j<i;j++)
{;}
}
void chushi()
{
  TMOD=0x20;
  SCON=0x50;
  TH1=0xfA;
  TL1=0xfA;
  PCON=0x80;
  TR1=1;
  EA=1;
  ES=0;
  RI=0;
  TI=0;
}
void display(uchar i)
{
SBUF=i;
while(!TI);
TI=0;
}
void jianpan()
{  
   uchar a;
   uchar k;
   bus=0xff;
   bus=0xef;      //扫描第一行
   delayms(6000);
   a=bus;
   a=a&0x0f;
   if(a!=0x0f)
  {
   delayms(2000);
    if(a!=0x0f)
   {
     switch(a)
    {
     case 0x0e:
          k=0x01;

          break;
     case 0x0d:
          k=0x02;
   
          break;
     case 0x0b:
          k=0x03;
         
          break;
     case 0x07:
          k=0x04;
       
          break;
    }
      display(k);
     while(a!=0x0f)
     {
	  bus=0x0f;
	  delayms(2000);
	  a=bus;	  
      //a=a&0x0f;
     }
   }
   }  
    bus=0xdf;        //扫描第二行
   // lcdbus=0xff;
    delayms(6000);
    a=bus;
    a=a&0x0f;
    if(a!=0x0f)
    {
     delayms(2000);
     if(a!=0x0f)
     {
     switch(a)
     {
      case 0x0e:
           k=0x05;
         //  shuju=0x05;
           break; 
      case 0x0d:
           k=0x06;
          // shuju=0x06;
           break;
      case 0x0b:
           k=0x07;
           shuju=0x07;
           break;
      case 0x07:
           k=0x08;
         //  shuju=0x08;
           break;
     }
     display(k);
     while(a!=0x0f)
      {
       bus=0x0f;
	   delayms(2000);
       a=bus;
	   
      }
     }  
    }     
    bus=0xbf;        //扫描第3行

	delayms(6000);
    a=bus;
    a=a&0x0f;
    if(a!=0x0f)
    {
     delayms(2000);
     if(a!=0x0f)
     {
     switch(a)
     {
      case 0x0e:
           k=0x09;
          
           break; 
      case 0x0d:
           k=0x0a;
           
           break;
      case 0x0b:
          k=0x0b;
           //k=58;
        //   jia();
           break;
      case 0x07:
           k=0x0c;
      //     jian();
           break;
     }
     display(k);
     while(a!=0x0f)
      {
      bus=0x0f;
	   delayms(2000);
       a=bus;
	 
      }
     }  
    }     
     bus=0x7f;        //扫描第4行
	 delayms(6000);
    a=bus;
    a=a&0x0f;
    if(a!=0x0f)
    {
     delayms(2000);
     if(a!=0x0f)
     {
     switch(a)
     {
      case 0x0e:
           k=0x0d;
     //      jia();
      //    shuju=0x13;
           break; 
      case 0x0d:
           k=0x0e;
           //jian();
        //   shuju=0x14;
           break;
      case 0x0b:
           k=0x0f;
           //cheng();
        //   shuju=0x50;
           break;
      case 0x07:
           k=0x00;
           //chu();
           //shuju=0x16;
           break;
     }
     display(k);
      //a=lcdbus;
     // a=a&0x0f; 
     while(a!=0x0f)
      {
       bus=0x0f;
	   delayms(2000);
       a=bus;	   
      }
     }  
    }     
 } 
void main()
{
chushi();
while(1)
{
jianpan();
}
}

⌨️ 快捷键说明

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