volatile UINT8 Counter;
static UINT8 DatMax;
void IrProcess(void)
{
UINT8 i;
UINT8 j;
UINT8 tmpDat;
UINT8 resCheck;
bool TimeOutFlag;
if(RecvFlag == TRUE)
return;
if(!Irda)
{
Counter = 0;
TH1 = 6;
TL1 = 6;
TR1 = 1;
while(!Irda);
TR1 = 0;
//判断是否收到头
if(Counter < 4)
return;
Counter = 0;
TH1 = 6;
TL1 = 6;
TR1 = 1;
TimeOutFlag = false;
while(Irda)
{
//是否超时
if(Counter >= 40)
{
TR1 = 0;
return;
}
}
//接收数据
i = 0;
while(1)
{
for(j=0;j<8;j++)
{
TR1 = 0;
TH1 = 131;
TL1 = 131;
Counter = 0;
while(!Irda);
Counter = 0;