红外遥控的干扰问题怎么处理呢?
我用遥控接收头接到单片机外中断,不按遥控器发现不时的进入中断,加了上拉电阻也不行,请问有什么办法没有啊? 试试在红外接收头电源和地端接大电容滤波 不要用外部中断,用定时中断! 加软件滤波,干扰脉冲宽度大于多少或小于多少则退出,具体值根据自己的红外编码定.接收红外码我的方法是先判断头码(你不要告诉我你的编码进而没有头码哦),若头码正确才接收数据码,接收数据码前每次都判断码宽,只有码宽在一定的范围内才认为是正确,否则退出,并重新接收头码. 同意楼上的 跟你用的接收头有很大的关系。建议多换几种。 以前也遇到过干扰问题,自己摸索的也采用了3楼的办法解决了。 接收头窗口前加红色滤光片,大多数接收头装在电器上都不是直接暴露在外面的,如果不加滤光片,接收头会很敏感,造成误码率高。如果使用外部中断触发,则会频繁触发中断。 谢谢楼上的各位,我觉得Cocal意见很好!反正不能让干扰引起中断是最好的,不过这个红色的滤光片到那里去搞呢? 如果做外壳的话,这个滤光片应该不成问题。在开发阶段,我的做法是---用不透明的胶带吧接收头窗口的大部分贴起来,只露出来一点,降低灵敏度,也可以暂时解决一下问题 :)
如果是DIY最终都没有外壳,那么任何红色的透明/半透明,甚至不透明纸张都可以起到过滤作用。 无线干扰也很大的
用屏蔽把接收头包起来,接地,用屏蔽线的铜网就可以,我试过的, 软件自动识别是红外码还是干扰。 加软件滤波,干扰脉冲宽度大于多少或小于多少则退出,具体值根据自己的红外编码定.接收红外码我的方法是先判断头码(你不要告诉我你的编码进而没有头码哦),若头码正确才接收数据码,接收数据码前每次都判断码宽,只有码宽在一定的范围内才认为是正确,否则退出,并重新接收头码.
用软件的方法比较灵活,外界光线干扰厉害的话,需要加紫色滤光片。 {:smile:}thas right 本人有八年的遥控器开发经验.
估计有两种可能:
1 你的周围有红外信号,不一定是遥控器按键,其实灯光、太阳光一样有红外光,人体也有红外。所以写接收机要考虑受干扰时能识别是错误信号。
2 你的接收电路有自激。由于红外接收头信号放大,很容易产生自激。一般电源有点波动就会产生。所以,接收头VCC串个100欧电阻,再并个47U电容,会好点。
有显波器的话量一下就知道是什么问题了。 当然,若是环境有红外光,加滤镜效果也很好。 用定时器去检测那个IO,不能用外部中断。
页:
[1]