#include
#define uchar unsigned char
#define uint unsigned int
#define ulong unsigned long
sbit key1=P3^0;
sbit led=P3^4;
sbit in=P3^5;
sbit out=P3^3;
bit flang;
uchar D[24];
ulong DATA=0;//记录数据
void delay() //误差 0us延时101us
{
uchar a,b;
for(b=93;b>0;b--);
// for(a=5;a>0;a--);
}
void decode()
{
uchar j;
uint i;
/* i=0;
while(!in)
{
delay();
i++;
if(i>8800)
return;
} */
// if(i>7200)
// {
// led=1;
for(j=0;j<24;j++)
{
i=0;
while(!in) //判断低电平(窄的为1,宽的为0)
{
delay();
i++;
if(i>70)
return; //限时解码
}
if(i>20)D[j]=0;
else D[j]=1;
}
flang=1;
}
//}
void main()
{
led=0;
while(1)
{
decode();
if(flang==1)
{
flang=0;
if(D[20]==0)led=1;
if(D[21]==0)led=0;
if(D[22]==0)led=1;
if(D[23]==0)led=0;
}
}
}