红外遥控器的解码

2020-01-22 12:01发布

红外遥控器的解码
实测距离10米时不会错误或需要重复按遥控器 (*^__^*) ……


接收头 (原文件名:接收头.jpg.jpg)


正确解码 (原文件名:20110103426.jpg)
第一行显示的是:地址码+地址码+操作码+操作码反码  接受数据正确时第二行显示OK  旁边的数字是连_发次数


错误解码 (原文件名:20110103427.jpg)
第一行显示的是:地址码+地址码+操作码+操作码反码  接受数据错误时第二行显示error  旁边的数字是连_发次数


51开发板配的万能遥控器 (原文件名:20110103428.jpg)
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
98条回答
hmzwm
2020-01-27 01:49
在下面的外部中断1服务子程序中那个“如果超时”下面的那句话,我去掉后调试通过,程序运行正常。

******************************************************************/
/* 外部中断1函数,下降沿触发*/
void EX1_Int(void) interrupt 2 using 0
{ static unsigned char m=0;

T0_CNT_bk=T0_CNT; //备份时间计数值,即前一个下降沿到本下降沿的时间间隔
T0_CNT=0x00;    //清空时间计数值
  
if(TimeOut)     //如果超时
{// TL0=TIMER0_COUNT;   //初始化定时器0    -0x1f(31)
TimeOut=0;    //清除超时标志
m=0;    //复位数据位
T0_CNT=0x00;    //清空时间计数值
Guide=0;           //清除引导标志
Continuous=0;      //清除连_发标志
}
...

一周热门 更多>