while (!RemPin); //等待高电平Р TH0=0;Р TL0=0; Р TR0=1;Р while (RemPin) //等待低电平Р if (TF0==1) goto RemExit; //超时就退出Р TR0=0;Р temp=TH0;Р temp=((temp<<8)+TL0);Р // /*Р if (temp>400 && temp<600)Р {Р receive[i]=receive[i]<<1;Р receive[i]=receive[i]+1; //保存 1Р }Р else if (temp>100 && temp<234)Р {Р receive[i]=receive[i]<<1; //保存0Р }Р else goto RemExit;Р }Р temp=0;//在这里设置一个断点,运行到这里后看看receive里的三个字节数据就是解码的结果Р RemExit:Р {Р TR0=0;Р EA=1;Р RemPin=1;Р TF0=0;Р return; Р } Р}Р///*Рmain()Р{Р RemPin=1;Р EA=1;Р IT0=1; //设定INT0的触发方式为脉冲负边沿触发Р EX0=1; //打开INT0中断请求Р TMOD=0x01;Р while (1); Р //RemPin=1;Р}