一乐电子

一乐电子百科

 找回密码
 请使用微信账号登录和注册会员

QQ登录

只需一步,快速开始

快捷登录

手机号码,快捷登录

搜索
查看: 8490|回复: 29
收起左侧

[其他综合] 自己写的红外遥控解码高效新程序

[复制链接]
发表于 2014-2-3 17:59 | 显示全部楼层 |阅读模式
大家好,我是陈滨。说到红外遥控,大家都使用过了,目前红外遥控器有两种格式,一种是飞利浦格式,一种是NEC格式,当然,牛逼的SONY也有自己的格式,这个不属于地球的厂家我就不说了啊,呵呵...但是使用最多的还是NEC格式,还是日本鬼子的,哎!如果可以,我希望是飞利浦的,因为我们依赖日本的技术方面太多了。说到题外话了,但是 希望每个中国人都要自己努力,希望我们的下一代能开发各种比日本更加先进的技术。嗯!下面开始讲解如何利用51单片机这个功能很弱的单片机进行红外解码。如果你对这个熟悉,那么你可以使用任何一个NEC格式的遥控对你家里的任何一切东西进行遥控,你的风扇,你的抽油烟机,甚至你的日光灯,通通都可以!红外线遥控由于成本低廉,抗干扰能力好,目前广泛使用在各种家用电器上。红外线遥控NEC协议是这样的,它是一个9ms的高电平和一个4.5ms的低电平作为接收的引导码,然后以一个560us的高电平和一个560us的低电平表示位0,以一个560us的高电平和一个1.685ms的低电平表示位1,前16位是用户码,后16位是按键码,每个16位分别是8位正码和8位反码,这样设计就是为了区分不同的设备以及抗干扰。当用户按下遥控某个按键时,遥控内部的编码器就会发送一组108ms组成的数据码,如果按住不放,接下来是9ms和2.5ms的连发码。下面是时序图,本人自己画的,画得不好看,不要见笑啊:
实际上,我们接收头收到的信号电平是跟遥控相反的,比如遥控发的是1,我们收到的实际上0,利用这个原理,为我们的51单片机解码提供好条件 。网上很多人大多利用中断和定时器中断来解码,甚至更笨的采用延时,这样的做法占用单片机资源是很严重的,而且程序很长,难懂。本人经过研究,发现51单片机其实有一个功能很好用,就是门控方式,利用单片机门控方式,在进入中断时自动关闭定时器,通过读取计数值就可以得知电平的宽度,从而识别0和1.这样的方法占用单片机资源少,效率高,准确性可靠。
下面是本人自己制作的一个遥控解码器:
上面一个收到的是用户码和反码, 下面是按键码和反码 。大家发现规律没有?正码和反码刚加在一起刚好是15.好了,下面是部分程序,其实本人发过这个解码器,不过那个程序存在问题,今天才刚改正。


遥控时序.jpg
用.jpg
键.jpg
捕获.JPG
发表于 2014-2-3 18:26 | 显示全部楼层
LZ,把完整程序放上来分享一下呀,点个赞意义不大。
发表于 2014-2-3 18:29 | 显示全部楼层
哎,神马NEC,神马骚尼,都算是通用的了,唯独梦幻的码恶心,DM800的码现在没有一个自学习遥控器能学的了的,好在我的手机能学习了,但我估计依靠的是比MCU强大得多的CPU和内存学习的。
发表于 2014-2-3 18:56 | 显示全部楼层
以前做过中断方式的。这两天想用STC15F104E做一个遥控开关,可这款MCU的中断有问题,现在正在研究做个任意IO口的,还没成功。
发表于 2014-2-3 19:00 | 显示全部楼层
ain365 发表于 2014-2-3 18:56
以前做过中断方式的。这两天想用STC15F104E做一个遥控开关,可这款MCU的中断有问题,现在正在研究做个任意I ...

A版本的外部中断有问题,B版本以上的就修正了
发表于 2014-2-3 19:15 | 显示全部楼层
对于单片机,
中断捕捉+状态机=高效解码

我对解码不感兴趣,对“学习”还行,欢迎交流 未命名.JPG

发表于 2014-2-3 20:58 | 显示全部楼层
用输入计数器中断啊,判断输入上升沿,下降沿。然后扔进数组。几乎不占用单片机运算。

接收到数据中断才占用单片机运算。
发表于 2014-2-3 21:15 | 显示全部楼层
楼上几位能不能都发个程序学习一下,
发表于 2014-2-3 22:05 | 显示全部楼层
我也用中断,支持LZ开源。
发表于 2014-2-4 07:13 | 显示全部楼层
支持楼上,望各大虾发个完整程序和电路方便我辈抄袭
听说把本站有此功能,为了支持站长,求打赏,哈哈

本版积分规则

QQ|一淘宝店|手机版|商店|电子DIY套件|一乐电子 ( 粤ICP备09076165号 ) 公安备案粤公网安备 44522102000183号

GMT+8, 2024-3-29 18:11 , Processed in 0.063296 second(s), 47 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表