- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
红外遥控器信号采集及压缩
红外遥控器信号采集及压缩 【摘 要】现代家庭生活中,由于红外遥控器数量不断增加,人们产生了对集成型红外遥控器的需求。本文提出了红外遥控器信号采集及压缩的方案,该方案以STM32F103RB微控制器为核心,使用HS0038作为采集模块。经测试,该设计能可靠采集各种红外遥控器的信号,具有较低的误码率,而且能对采集到的信号数据进行压缩,压缩比平均可达到28%。 【关键词】红外遥控器 ;STM32F103RB ;HS0038 ;信号采集 ;数据压缩 一、引言 红外通信作为一种短距离、可靠的无线控制方式,在家电领域已被广泛应用。但由于存在多种红外遥控器编码方式,且各种编码方式间互不兼容,致使家中红外遥控器的数量随着电器设备的数量与日剧增。为此,研究红外遥控器信号(下文简称红外信号)的采集及压缩的方法,为最终实现红外遥控器的集成奠定基础,具有一定的研究意义。 二、红外遥控器的编码分析 由于不同的电器设备生产厂家采用不同的编码方式,导致不同电器设备的红外遥控器不能相互替代。为此,在大量收集各种红外信号的基础上,对其进行了细致的分析,得出以下几个结论: (1)调制方式以脉宽调制为主:红外遥控器编码存在的调制方式有脉宽调制,相位调制,脉冲位置调制,但大部分都采用脉宽调制方式。(2)载波频率不固定:不同遥控器的载波频率不同,最低可达36KHz,最高可达42KHz,但大多数载波频率在38KHz左右。(3)通讯协议组成迥异:每种协议都是在地址码与控制码的基础上添加引导码、结束码、控制码反码或地址反码。(4)发送方式不同:发送方式的不同体现在发送的次数上,有一次发送一帧、一次发送两帧或一次发送多帧。 三、红外遥控器采集硬件设计 设计需要采集红外信号,并将所得到的信号数据编码保存起来,为此设计了由STM32F103RB微控器、红外采集电路、存储器等构建的硬件平台进行测试。 (一) STM32F103RB微控器 STM32F103RB是意法半导体公司推出的STM32F103xx中等容量增强型系列中的一款微控器。该系列微控器整合了工作频率为72MHz的高性能ARM CortexTM-M3内核。该系列微控器的节电模式适用于低功耗的应用设计[1]。 凭借STM32F103RB任意边沿捕捉功能的16位定时器以及高速的处理能力,能精确采集红外信号的电平时长,快速处理采集到的数据;低功耗特性降低了对电源的要求。 (二)红外采集电路 红外信号的载波频率基本集中在38KHz,因此采集电路使用HS0038一体化红外接收头。HS0038是一款体积小、内置IC、抗干扰能力强、可低压工作的红外接收头。当HS0038接收到38KHz红外遥控器信号脉冲时,将输出低电平;当HS0038未接收到38KHz红外遥控器信号脉冲时,将输出高电平。 (三)储存器 将各种红外信号进行采集,并集中在一个遥控器中,需要大容量、具有掉电保存功能、可低电压工作的存储器,设计选用AT24c128作为存储器。AT24c128是Atmel推出的高速、128Kb的2线串行EEPROM,拥有商业和工业应用中所必须的低功耗和低电压的特性,工作电压范围为1.7V~5.5V[2],能满足设计的功能要求。 四、红外信号处理的软件设计 红外信号处理的软件设计主要包括信号采集、信号数据压缩。信号采集使用微控器中的定时捕捉模式,因此系统启动后,需完成对系统初始化;当检测到红外信号输入时,微控器便进行捕捉采集;完成采集后,若采集的红外信号异常,数据不被保存;若采集的红外信号正常,数据被压缩并保存。软件设计的流程图如图1所示。 (一)红外遥控器信号采集 红外遥控器信号采集是通过记录红外遥控器信号电平时长实现的。这种方式可以在红外遥控器信号编码方式未知的情况下,将红外遥控器信号完全复制。根据采样定理,为了更好地还原信号,将微控器内16位定时器的工作频率设定在1MHz,并设置为输入捕捉工作模式。 逻辑分析仪采集某NEC红外信号波形如图2所示。微控器采集到的该红外信号数据(下文称信号数据)如表1所示。 图2 红外信号波形 表1 红外信号电平时长数据 该组数据共有71个,每个数据占2字节的存储空间,共需142字节,其中N为奇数的数据为低电平时长,N为偶数的数据为高电平时长。 (二) 索引表压缩 信号数据需要占用大量存储空间,且数据具有规律性,可对信号数据进行压缩。由于红外遥控器信号电平时长的种类有限,故采用索引表的方式。表1中的数据经索引表压缩后数据如表2所示,所需的存储空间降到85个字节。 表2 建立索引表后的数据 (三) 数据编码 根据高电平索引个数少于6个、低电平索引个数少于4个的特点,使用一个字节的第3~4位存放低电
文档评论(0)