用手机红外遥控APP代替遥控器,完成战舰V3的红外遥控实验

2019-07-20 22:21发布

   最近在学习原子哥的红外遥控实验,有一块战舰V3开发板,但是遥控器没有。平时比较常用手机的万能遥控器APP遥控电视和空调,于是想能否用手机的红外功能来实现手机遥控开发板,经过实践证明是可以。
  上网查阅得知,一般的红外电视遥控器使用的是 NEC 协议(手机虚拟出来的某品牌遥控器和该品牌的遥控器协议相同),和原子哥的红外遥控实验用的协议是一样的,因此可以直接使用原子哥的代码。
编码协议是一样的,接下来就要知道手机发出的红外线的识别码REMOTE_ID。
   方法一是不检验识别码,注释掉这部分代码,这样不论识别码是什么,只要通信协议一样都能用。将代码烧录到板子里,用手机遥控器发送指令,的确可以接收到信号,只是键值不匹配。

  方法二是在串口调试助手或LCD显示出地址码,从而找出识别码。结果有点意想不到,打印出的地址码t1和地址反码t2的反码(u8)~t2不相等,不知为什么,于是就不用这种方法了。


最后一步就是找出手机遥控器的键值。逐一按手机遥控器上的按键,然后记录下相应的键值,最后修改 case后面的值和语句,重新编译烧入到开发板就可以了。
总结有三步:
1编码协议相同NEC
2找出识别码或注释掉检查识别码部分的代码
3键值


   


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。