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

📄 8279-8.txt

📁 8279键盘显示通用程序
💻 TXT
字号:
#include "reg52.h"
#include "absacc.h"
#define COM XBYTE[0x7fff]        /*命令/状态口*/
#define DAT XBYTE[0x3fff]        /*数据口*/
#define uchar unsigned char
#define uint unsigned int   
uchar j=0;
uchar code table[10]={0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
                     0x7f,0x6f,0x3f/*,0x77,0x7c,0x39,0x5e,0x79,0x71,0x73,0x76,0xff,0x00*/};
uchar code keytab[11]={0x00,0x01,0x02,0x08,0x09,0x0a,0x10,0x11,0x12,0x18,0x19/*,
                     0x1a,0x20,0x21,0x22,0x28,0x29,0x2a,0x30,0x31,0x32,0x38,0x39,0x3a*/};
uchar idata diss[8]={0,1,2,3,4,5,6,7};
sbit cflag=ACC^7;
uchar keyin();
uchar deky();
void serve();
//void serve0();

void clr();
void disp(uchar idata *d);
void Delay();
void main (void)
{
 COM=0xd1;             /*总清除命令*/
  do{ACC=COM;}
  while(cflag==1);      /*等待清除结束*/
  COM=0x00;COM=0x34;    /*键盘,显示方式,时钟分频*/
  COM=0x90;
 DAT=0x3f;
 //COM=0xd3;
 Delay();
  EA=1;EX1=1;EX0=1;INT1=1;

}

uchar keyin(void)       /*取键值函数*/
{
   uchar i;
   while(deky()==0);     /*无键按下等待*/
   COM=0x40;            /*读FIFO RAM命令*/
   i=DAT;i=i&0x3f; /*取键盘数据低6位*/
     return(i);           /*返回键值*/
}
uchar deky(void)        /*判断FIFO有键按下函数*/
{uchar k;
 k=COM;
 return(k&0x0f);        /*非0,有键按下*/
}

void serve()interrupt 1
{
uint i;
uchar sq,idata *j;
COM=0x40;
sq=keyin();
for(i=0;i<11;i++)
{if(sq==keytab[i])break;}
if(i==10)
{clr();}
else
{j=i;
while(1)
    {uint i;
	for(i=0;i<8;i++)
     {disp(diss);        /*显示缓冲区内容*/
      diss[i]=j;//keyin();    /*键盘输入到显示缓冲*/
     }
}
Delay();}
}

void disp(d)            /*显示函数*/
uchar idata *d;
{ uchar i;
   COM=0x90;            /*写显示RAM命令,地址自动加1*/
  for(i=0;i<8;i++)
  {  COM=i+0x80;
      DAT=table[*d];
     d++;
   }
}
/*void serve0()interrupt 0
{TMOD=0x11;
TH0=-10000/256;TL0=-10000%256;
TR0=1;
do{}
while(TF0!=1);
TF0=0;
}*/

void clr(void)
{COM=0xd1;
do{ACC=COM;}
while(cflag!=0);
j=0;
COM=0x90;
DAT=0x40;
}

void Delay() //DELAY FOR A MONENT
 { uint i; 
 for(i=0;i<200;i++ )
; } 

⌨️ 快捷键说明

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