#include <reg51.h>
#include <intrins.h>
typedef unsigned int u16;
typedef unsigned char u8;
typedef unsigned char uchar;
u8 code smgduan[17]={0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};//ÏÔʾ1~FµÄÖµ
sbit wei1=P2^2;
sbit wei3=P2^3;
sbit wei4=P2^4;
sbit k1=P3^1;
sbit k2=P3^0;
sbit k3=P3^2;
sbit k4=P3^3;
sbit D1=P2^0;
sbit D2=P2^1;
sbit D3=P2^2;
sbit D4=P2^3;
sbit beep=P2^5;
uchar k;
uchar D;
uchar num;
void T0Int_s(void)
{
TMOD=0x11;
TH0=0x37; //??50ms????
TL0=0xb0;
ET0=1;
TR0=1;
EA=1;
}
void delay(u16 i)
{
while(--i);
}
void delays(u16 tm)
{
while(tm--)
{
delay(248);
delay(248);
}
}
void keypros1()
{
if(k1==0)
{
D1=~D1;
while(1)
{
beep=~beep;
delay(100);
if(k1!=0)
break;
}
}
}
void keypros2()
{
if(k2==0)
{
D2=~D2;
while(1)
{
beep=~beep;
delay(100);
if(k2!=0)
break;
}
}
}
void keypros3()
{
if(k3==0)
{
D3=~D3;
while(1)
{
beep=~beep;
delay(100);
if(k3!=0)
break;
}
}
}
void keypros4()
{
if(k4==0)
{
D4=~D4;
while(1)
{
beep=~beep;
delay(100);
if(k4!=0)
break;
}
}
}
void main()
{
if(k1==0)
{
delays(10);
keypros1();
T0Int_s();
while(1);
}
if(k2==0)
{
delays(10);
keypros2();
T0Int_s();
while(1);
}
if(k3==0)
{
delays(10);
keypros3();
T0Int_s();
while(1);
}
if(k4==0)
{
delays(10);
keypros4();
T0Int_s();
while(1);
}
}
|