一种遥控器解码的方法技术

技术编号:11859477 阅读:53 留言:0更新日期:2015-08-12 09:50
本发明专利技术公开了一种遥控器解码的方法,包括如下步骤:S1、给上拉电阻R1加5V电压;S2、按下遥控器按键,实时发送红外数据,所述红外接收管接收并实时检测红外数据,得到遥控器码;S3、MCU收到所述遥控器码后,通过引脚P10产生下降沿中断,同时,所述MCU中的定时器开始计时,所述定时器在每次下降沿中断时,记录中断点的时间;当计时结束后,取每相邻两个下降沿中断点的时间差,再得出头码和数据码以及数据码中的0位和1位;以及S4、所述MCU持续检测到高电平,确定遥控码发送结束,解码结束。本发明专利技术无需外接解码器,MCU自行解码,降低了成本,提高解码准确率,提高工作效率。

【技术实现步骤摘要】

本专利技术涉及遥控
,尤其涉及。
技术介绍
目前,对遥控器解码较为常用的方法是使用示波器接收其波形,通过其波形进行 解码分析。这样需要拥有设备示波器的同时,还需要人为对示波器上的波形进行严谨分析, 特别当解码数据较多时,不但花费较大精力和人力,而且还需要使用高精度示波器,成本 高,误差大,费时。
技术实现思路
本专利技术的目的是提供,降低成本,提高解码准确率,提高效 率。 本专利技术的技术方案是,该方法采用的硬件装置包括红外接 收管、通过电阻R2串联所述红外接收管的MCU以及同时连接所述红外接收管和电阻R2的 上拉电阻R1,所述方法包括如下步骤: 51、 给上拉电阻Rl加5V电压; 52、 按下遥控器按键,实时发送红外数据,所述红外接收管接收并实时检测红外数据, 得到遥控器码; 53、 MCU收到所述遥控器码后,通过引脚Pltl产生下降沿中断,同时,所述MCU中的定时 器开始计时,所述定时器在每次下降沿中断时,记录中断点的时间;当计时结束后,取每相 邻两个下降沿中断点的时间差,再得出头码和数据码以及数据码中的0位和1位;以及 54、 所述MCU持续检测到高电平,确定遥控码发送结束,解码结束。 遥控器上每按一次键,引脚Pltl通过检测,会得到一个遥控器码,该遥控器码分为 头码和数据码,头码在前,数据码在后,所述数据码中有很多数据位,每个数据位只能是0 位或1位;遥控器上每按一次键,接收端MCU中的引脚P ltl会产生至少3个下降沿中断,定时 器在每个下降沿中断时间点记录一次时间。通过取每相邻两个下降沿中断点的时间差,可 以算出头码的时间长度,数据码中的每个数据位的类型以及每个数据位的持续时间,最后 实现完全解码。无需外接解码器,MCU自行解码,降低了成本,提高解码准确率,提高工作效 率。 进一步地,所述步骤S3包括如下步骤: 5301、 引脚Pltl设置为下降沿中断方式,当没有按键按下时,引脚P 1(|检测到高电平,当 有按键按下时,引脚Pltl开始产生下降沿中断,并检测到跳变的电平,同时启动定时器计时; 然后,如果没有新的下降沿中断产生,引脚P ltl检测到高电平,如果有新的下降沿中断产生, MCU将第二次中断点的时间减去第一次中断点的时间,得到头码的数值Ts,然后清除所述计 数值Ts; 5302、 如果没有新的下降沿中断产生,引脚Pltl检测到高电平;如果有新的下降沿中断 产生,从第三次下降沿中断开始,用后一次中断点的时间减去前一次中断点的时间,就得出 相邻的前后两次下降沿中断的时间差,即数据码中一个数据位的计数值τη,η多1,取正整 数; 5303、 通过做相邻的前后两次下降沿中断的时间差,得出所述数据码中所有数据位的 计数值,并确定每个数据位是〇位还是1位;以及 5304、 当引脚Pltl经过设定时间后,没有再收到新的下降沿时,清掉计数值Tn,关闭定时 器,本次解码结束。 进一步地,MCU得到的数据码中的所有计数位的计数值分为数据位0和数据位1, 计数值较大的为数据位1,计数值较小的为数据位〇 ;数据位1的计数值满足公式: A*0. 9〈= Ta〈= Α*1· 1 式中,A表示数据位1的设定值,Ta表示数据位1的检测值; 数据位0的计数值满足公式: B*0. 9〈= Tb〈= Β*1· 1 式中,B表示数据位0的设定值,Tb表示数据位0的检测值。 进一步地,A 为 2. 24ms,B 为 I. 1ms。 进一步地,札为 4kQ,1?2为 IkQ。 进一步地,步骤S304中的设定时间为100ms。 有益效果:本技术方案无需外接解码器,MCU自行解码,降低了成本,提高解码准 确率,提高工作效率。【附图说明】 图1是本专利技术一种实施例的工作流程图; 图2是本专利技术另一种实施例的连接关系示意图; 图3是本专利技术另一种实施例的电平信号图。【具体实施方式】 下面结合附图,对本专利技术的较优的实施例作进一步的详细说明: 参见图1至3, ,该方法采用的硬件装置包括红外接收管、通过 电阻R2串联所述红外接收管的MCU以及同时连接所述红外接收管和电阻R2的上拉电阻 R1,该上拉电阻札的阻值为4k Ω,电阻R 2的阻值为Ik Ω,所述方法包括如下步骤: 51、 给上拉电阻Rl加5V电压; 52、 按下遥控器按键,实时发送红外数据,所述红外接收管接收并实时检测红外数据, 得到遥控器码; 53、 MCU收到所述遥控器码后,通过引脚Pltl产生下降沿中断,同时,所述MCU中的定时 器开始计时,所述定时器在每次下降沿中断时,记录中断点的时间;当计时结束后,取每相 邻两个下降沿中断点的时间差,再得出头码和数据码以及数据码中的0位和1位;以及 54、 所述MCU持续检测到高电平,确定遥控码发送结束,解码结束。 遥控器上每按一次键,引脚Pltl通过检测,会得到一个遥控器码,该遥控器码分为 头码和数据码,头码在前,数据码在后,所述数据码中有很多数据位,每个数据位只能是0 位或1位;遥控器上每按一次键,接收端MCU中的引脚Pltl会产生至少3个下降沿中断,定时 器在每个下降沿中断时间点记录一次时间。通过取每相邻两个下降沿中断点的时间差,可 以算出头码的时间长度,数据码中的每个数据位的类型以及每个数据位的持续时间,最后 实现完全解码。无需外接解码器,MCU自行解码,降低了成本,提高解码准确率,提高工作效 率。 参见图1,所述步骤S3包括如下步骤: 5301、 引脚Pltl设置为下降沿中断方式,当没有按键按下时,引脚P 1(|检测到高电平,当 有按键按下时,引脚Pltl开始产生下降沿中断,并检测到跳变的电平,同时启动定时器计时; 然后,如果没有新的下降沿中断产生,引脚P ltl检测到高电平,如果有新的下降沿中断产生, MCU将第二次中断点的时间减去第一次中断点的时间,得到头码的计数值Ts,然后清除所述 计数值T s; 5302、 如果没有新的下降沿中断产生,引脚Pltl检测到高电平;如果有新的下降沿中断 产生,从第三次下降沿中断开始,用后一次中断点的时间减去前一次中断点的时间,就得出 相邻的前后两次下降沿中断的时间差,即数据码中一个数据位的计数值Τ η,η多1,取正整 数; 5303、 通过做相邻的前后两次下降沿中断的时间差,得出所述数据码中所有数据位的 计数值,并确定每个数据位是〇位还是1位;以及 5304、 当引脚Pltl经过设定时间后,没有再收到新的下降沿时,清掉计数值Tn,关闭定时 器,本次解码结束。 MCU得到的数据码中的所有计数位的计数值分为数据位0和数据位1,计数值较大 的为数据位1,计数值较小的为数据位〇 ;数据位1的计数值满足公式: A*0. 9〈= Ta〈= Α*1· 1 式中,A表示数据位1的设定值,Ta表示数据位1的检测值; 数据位0的计数值满足公式: B*0. 9〈= Tb〈= Β*1· 1 式中,B表示数据位0的设定值,Tb表示数据位0的检测值。 优选地,A 为 2. 24ms,B 为 I. lms。 具体实施过程中,设定值与检测值见下表: 优选地,步骤S304中的设定时间为100ms。【主权项】1. ,该方法采用的硬件装置包括红外接收管、通过电阻R2串联 所述红外接收管的MCU以及同时连接所述红本文档来自技高网...

【技术保护点】
一种遥控器解码的方法,该方法采用的硬件装置包括红外接收管、通过电阻R2串联所述红外接收管的MCU以及同时连接所述红外接收管和电阻R2的上拉电阻R1,其特征在于,所述方法包括如下步骤:S1、给上拉电阻R1加5V电压;S2、按下遥控器按键,实时发送红外数据,所述红外接收管接收并实时检测红外数据,得到遥控器码; S3、MCU收到所述遥控器码后,通过引脚P10产生下降沿中断,同时,所述MCU中的定时器开始计时,所述定时器在每次下降沿中断时,记录中断点的时间;当计时结束后,取每相邻两个下降沿中断点的时间差,再得出头码和数据码以及数据码中的0位和1位;以及S4、所述MCU持续检测到高电平,确定遥控码发送结束,解码结束。

【技术特征摘要】

【专利技术属性】
技术研发人员:柯忠乘陈志杰
申请(专利权)人:深圳市振邦智能科技有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1