TL0=0;
TR0=0;//t0开始计时 }
//延时
void delay(uchar i) {
uchar j,k; for(j=i;j>0;j--)
for(k=125;k>0;k--); }
//外部中断解码程序_外部中断0 void intersvr1(void) interrupt 2 using 1 {
LED=1; TR0=1;
Tc=TH0*256+TL0;//提取中断时间间隔时长 TH0=0;
TL0=0; //定时中断重新置零 if((Tc>Imin)&&(Tc if(Tc>Inum1&&Tc Im[m/8]=Im[m/8]>>1|0x80; m++; } if(Tc>Inum2&&Tc Im[m/8]=Im[m/8]>>1; m++; //取码 } if(m==32) { m=0; f=0; if(Im[2]==~Im[3]) { IrOK=1; TR0=0; } else IrOK=0; //取码完成后判断读码是否正确 } //准备读下一码 } } 36