红外nec码一般引导码是9ms高电平加4ms左右的低电平。那在学习子程序里面应该将这个高电平和低电平的时间记录下来才对。但我在一些资料上看到,别人的程序是只记录引导码低电平的时间,但并没有对高电平的时间进行记录。因此我不理解为什么不将高电平的时间也记录下来。我看了好几份资料,都是这样子的,没有对引导码的高电平时间进行处理,但对低电平却有。但是也有的资料是将引导码高低电平的时间都分别记录下来的。请了解的朋友帮帮忙解答一下,谢谢
while(remotein==1); //
等待遥控码输入
head=0;
这个部分是检测引导码高电平的输入的,那应该将引导码高电平持续的时间保存下来才对啊。但这里并没有进行这样的操作,然后引导码低电平部分却进行了计时。这是为什么呢?
以下的是学习子程序对引导码学习的部分
void intt0(void) interrupt 0
{
ET1=0;TR1=0;EX0=0;EA=0;
head=0;studylamp=1;lamp=0;
while(studykey==0); //
等待键释放
while(remotein==1); //
等待遥控码输入
head=0; //
读入起始位
while(remotein==0){_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_n
op_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_()
;head++;}
n=0;remdata=0x0000;
|