📄 an jian lian xi.c
字号:
#include<reg51.h>
#include<absacc.h>
#define uchar unsigned char
#define COM8255 XBYTE[0X0003]
#define PA8255 XBYTE[0X0000]
#define PB8255 XBYTE[0X0001]
#define PC8255 XBYTE[0X0002]
uchar code tab[]={0x88,0xEB,0x4C,0x49,0x2B,0x19,0x18,0xCB,0x08,
0x09,0x0A,0x38,0x9C,0x68,0x1C,0x1E,0xFF};
uchar code tabHello[]={0x88,0xBC,0xBC,0x1C,0x2A,0xFF}; //HELLO字符;
void timer(uchar);
void KEY1(); //按K1,显示1
void KEY2(); //按K2,显示2
void KEY2KEY1(); //按K2和K1,显示3
void KEY3(); //按K3,显示4
void KEY3KEY1(); //按K3和K1,显示5
void KEY3KEY2(); //按K3和K2,显示6
void KEY3KEY2KEY1(); //按K3,K2,K1,显示7
uchar i,a;
sbit P1_2=P1^2;
sbit P1_3=P1^3;
sbit P1_4=P1^4;
/*******************************************************************/
void main(void)
{
uchar a;
SCON=0;
EA=1;
ES=1;
P1_2=1;
P1_3=1;
P1_4=0;
COM8255=0x82;
for(a=0;a<=5;a++) //显示Hello字样
{
SBUF=tabHello[a];
while(!TI)
TI=0;
}
for(;;)
{
KEY1();
KEY2();
KEY2KEY1();
KEY3();
KEY3KEY1();
KEY3KEY2();
KEY3KEY2KEY1();
}
}
/*************************************/
void timer(uchar t)
{
uchar i;
for(i=0;i<t;i++)
{
TMOD=0x01;
TH0=(65535-10000)/256;
TL0=(65535-10000)%256;
TR0=1;
while(! TF0);
TF0=0;
}
}
/****************************************/
/*void Hello()
{
uchar a;
for(a=0;a<=5;a++)
{
SBUF=tabHello[a];
while(!TI)
TI=0;
}
}*/
/***************************************/
void KEY1()
{
uchar i;
if(PB8255==0xfe) //判断键值
{
SBUF=tab[1];
while(!TI);
TI=0;
for(i=1;i<=5;i++)
{
SBUF=tab[16];
while(!TI);
TI=0;
}
timer(50);
}
}
/**************************************/
void KEY2()
{
uchar i;
if(PB8255==0xfd)
{
SBUF=tab[2];
while(!TI);
TI=0;
for(i=1;i<=5;i++)
{
SBUF=tab[16];
while(!TI);
TI=0;
}
timer(50);
}
}
/********************************************/
void KEY2KEY1()
{
uchar i;
if(PB8255==0xfc)
{
SBUF=tab[3];
while(!TI);
TI=0;
for(i=1;i<=5;i++)
{
SBUF=tab[16];
while(!TI);
TI=0;
}
timer(50);
}
}
/****************************************/
void KEY3()
{
uchar i;
if(PB8255==0xfb)
{
SBUF=tab[4];
while(!TI);
TI=0;
for(i=1;i<=5;i++)
{
SBUF=tab[16];
while(!TI);
TI=0;
}
timer(50);
}
}
/************************************/
void KEY3KEY1()
{
uchar i;
if(PB8255==0xfa)
{
SBUF=tab[5];
while(!TI);
TI=0;
for(i=1;i<=5;i++)
{
SBUF=tab[16];
while(!TI);
TI=0;
}
timer(50);
}
}
/****************************************/
void KEY3KEY2()
{
uchar i;
if(PB8255==0xf9)
{
SBUF=tab[6];
while(!TI);
TI=0;
for(i=1;i<=5;i++)
{
SBUF=tab[16];
while(!TI);
TI=0;
}
timer(50);
}
}
/*********************************/
void KEY3KEY2KEY1()
{
uchar i;
if(PB8255==0xf8)
{
SBUF=tab[7];
while(!TI);
TI=0;
for(i=1;i<=5;i++)
{
SBUF=tab[16];
while(!TI);
TI=0;
}
timer(50);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -