找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 11648|回复: 7
打印 上一主题 下一主题
收起左侧

基于51单片机NEC 红外遥控解码

  [复制链接]
跳转到指定楼层
楼主
ID:65608 发表于 2014-9-15 03:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
大家好,我是陈滨。说到红外遥控,大家都使用过了,目前红外遥控器有两种格式,一种是飞利浦格式,一种是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.好了,大家如果对这个有兴趣,可以加我QQ  具体keilc51源码请到
http://www.51hei.com/mcu/184.html 这里去下载

评分

参与人数 1黑币 +1 收起 理由
新手小苏 + 1

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏3 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:34185 发表于 2014-11-30 07:09 | 只看该作者
真是不错的资料
回复

使用道具 举报

板凳
ID:34185 发表于 2014-12-3 18:06 | 只看该作者
很有用谢谢学习了!!!
回复

使用道具 举报

地板
ID:69860 发表于 2014-12-6 10:18 | 只看该作者

谢谢楼主,下载学习学习。
回复

使用道具 举报

5#
ID:95047 发表于 2015-12-25 21:16 | 只看该作者
真心不错
回复

使用道具 举报

6#
ID:78363 发表于 2015-12-26 16:57 | 只看该作者
赞一下楼主!!!!
回复

使用道具 举报

7#
ID:79544 发表于 2015-12-26 17:30 | 只看该作者
遗憾的是,是用汇编写的程序,看不懂
回复

使用道具 举报

8#
ID:74784 发表于 2020-6-13 22:07 | 只看该作者
我正需要汇编的解码代码呢。
谢谢楼主!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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