用51单片机开发板做红外遥控收发实验过程中,遇到个问题,如下:
发送,用的是万能红外遥控;接收,就简单的用个红外接收管,数据端接单片机外部中断口,用1602显示收到的32 bits数据;
1. 不进行任何设置,直接按遥控上的键,不是“引导码,数据码,数据反码”的规范形式,以遥控按键1和2为例,显示如下:
1------- “00 FF FF FF”
2------- “01 FF FF FF ”
2. 偶尔发现遥控反面有个设置说明,该说明全文为“ 按住‘设置’键(约5秒)直至灯亮,再按‘电源’,电视出现静音符号后再按‘设置’完成 ”。
由于这是对单片机发送,不可能出现‘静音’标识,所以我就 “ 按住‘设置’键(约5秒)直至灯亮,再按‘电源’,再按‘设置’完成 ”
这样操作之后,再按遥控键,显示有了变化,变成了上面提到的规范形式,仍然以遥控按键1和2为例,显示如下:
1----------“0E 0E 00 FF”
2----------“0E 0E 01 FE”
然后,关掉单片机电源,重新下载程序到单片机,再发送数据,结果和2相同。似乎过程2就把红外遥控器和单片机板上的接收头匹配了。
我的疑问是: 1. 有这样一个“匹配”的过程吗?如果有,具体流程是怎样的?
2. 这个“0E0E”的引导码是怎么产生的?
求各位指教
|