[资料贡献] CPLD初学者教程-红外操作

[复制链接]
查看2400 | 回复2 | 2013-11-20 11:11:21 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区

您需要 登录 才可以下载或查看,没有账号?立即注册

×
红外线遥控是目前使用广泛的一种通信和遥控手段。在继彩电、录像机之后,在录音机、音响设备、空凋机以及玩具等其它小型电器装置上也大量采用红外线遥控。同时,工业设备中,在高压、辐射、有毒气体、粉尘等环境下,采用红外线遥控不仅完全可靠而且能有效地隔离电气干扰。我们的开发板上装配了一个集成的红外接收头,可接收遥控器的红外信号,通过CPLD/FPGA编程来进行解码。

红外编码格式常有两种,NEC和RC5。一般家庭用的DVDVCD、音响都使用NEC这种编码方式,我们这里讲解一下一下NEC格式的特征:1.使用38k载波频率。 2.引导码间隔是9ms+4.5ms。3.使用16位用户码。 4. 使用8为数据代码和8位取反的数据代码。 5.红外接头周期是108ms
经解调后的红外信号以脉宽为0.565ms、间隔0.56ms、周期为1.125ms的组合表示二进制的“0”,以脉宽为0.565ms、间隔1.685ms、周期为2.25ms的组合表示二进制的“1。如下图。(以接收端的信号波形进行讲解,发射端的波形要进行反向)
file:///C:/Windows/system32/config/SYSTEM~1/AppData/Local/Temp/msohtml1/01/clip_image002.gif

红外遥控器发出的编码是32位的,其中前16位为系统码(又称用户码),能区别不同的红外遥控设备,防止不同机种遥控码互相干扰。后16位为8位的数据码和8位的数据补码用于核对数据是否接收正确。
file:///C:/Windows/system32/config/SYSTEM~1/AppData/Local/Temp/msohtml1/01/clip_image004.gif
在每次编码信号送出之前,会有一段引导码,包括9ms的低电平和4.5ms的高电平。
file:///C:/Windows/system32/config/SYSTEM~1/AppData/Local/Temp/msohtml1/01/clip_image006.jpg

在我们的开发板上装配了一个一体化的红外接收头,能完成从红外线接收到输出与TTL电平信号兼容的所有工作,封装尺寸如下图所示。
file:///C:/Windows/system32/config/SYSTEM~1/AppData/Local/Temp/msohtml1/01/clip_image008.jpg

随开发板一起配装的还有一个红外遥控器(在使用标配的红外遥控器前,需要先抽掉底部的电源隔离塑料片,这样遥控器内电池才能上电进行工作。在平常不用时,可将该塑料片插入,这样可延长内部电池的使用寿命)NEC的编码格式,用户码位00FF,键位码如下图所示。
file:///C:/Windows/system32/config/SYSTEM~1/AppData/Local/Temp/msohtml1/01/clip_image010.jpg

比如:按下“0”键后,红外信号经红外接收头处理后,FPGA/CPLD接收到的编码如下(16进制)00 FF 16 E9

IRDA.rar

2 KB, 下载次数: 0, 下载积分: 金币 -1 枚

请输入描述

回复

使用道具 举报

hua2999 | 2013-11-20 11:12:18 | 显示全部楼层
还有两部分源码

gen_divd.rar

1 KB, 下载次数: 0, 下载积分: 金币 -1 枚

uart_x.rar

1 KB, 下载次数: 0, 下载积分: 金币 -1 枚

回复

使用道具 举报

ahljj | 2015-12-25 08:00:45 | 显示全部楼层
回复

使用道具 举报

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

本版积分规则