3回答

1收藏

[资料] 基于msp430的红外遥控的编码与解码实现(附源代码)

TI TI 4023 人阅读 | 3 人回复 | 2012-08-24

//编解码波形(NEC)
//________________         __  __   __
//                |        | | | |  |
//                |        | | | |  |
//                |        | | | |  |
//                |        | | | |  |
//                |        | | | |  |.....................................
//                |        | | | |  |
//                |        | | | |  |
//                |________| |_| |__|   "0"高:0.56ms+低:0.565ms=1.125ms
//|<-    9ms    ->|<-4.5ms>|"0"| "1"|   "1"高:0.56ms+低:1.69ms =2.25ms
//|<-  引导码   ->|<-起始码|<-8位地址->|<-8位地址->|8位数据->|<-数据反码->|

//占用资源:TB CCR0中断 CCR4 CCR5中断  CCR0赋值为1125 时钟1MHz
//红外输出端P2.0 32768Hz
//P2.1为红外输入端口

此编码为常见的红外遥控编码,可以完成红外遥控或红外数据的传输

主要算法:
编码: 用3278Hz频率(P2.0第二功能输出ACLK)驱动红外二极管发送数据(应为38KHz 红外接收头要求,我用的是近距离模拟的,考虑到定时器资源宝贵,暂用32K代替,经验证近距离可以完成传输,使用是可以改为由TA的P1.2输出,稍微改下程序即可:初始化TA,让P1.2口输出38K的pwm波,宏定义中的BIT_0/1改为P1.2口的第二功能开关即可)
发送时先由TB的CCR0的中断控制时间完成9ms的红外发射和4.5ms的停止  然后用CCR0和CCR4的中断完成数据的发送

解码:CCR5定时没450ms中断一次对数据进行检测发现低电平进入数据帧判断 若引导码和起始码正确则进入数据接收逻辑,完成数据段接收


红外遥控源代码.rar (2.04 KB, 下载次数: 46)

分享到:
回复

使用道具 举报

回答|共 3 个

倒序浏览

沙发

fengye5340-272571

发表于 2012-8-24 20:46:35 | 只看该作者

顶一下,资料很好!
板凳

小菜儿

发表于 2012-8-24 22:14:15 | 只看该作者

fengye5340 发表于 2012-8-24 20:46
顶一下,资料很好!

多谢!!!
地板

好剑者

发表于 2013-7-19 21:28:53 | 只看该作者

请问怎么将数据用红外发射头发射出去?
您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条