跳转到主内容
Knowledgebase
Home
Renesas Electronics China - Knowledgebase

怎样接收和解释遥控代码?

最新更新:2011年10月 06日

Question:

怎样接收和解释遥控代码?

Answer:

为了解释收到的遥控信号,使用信号脉冲沿测量每个信号周期的长度。
由于从红外遥控前置放大器输出的数据是负逻辑数据,如下描述,这些信号为负逻辑输入信号。

头码段
由于头码有一个9 ms的ON周期,所以使用脉冲沿触发中断功能或程序驱动轮询功能检测输入信号的下降沿(A),然后就可以测量出该下降沿和下一个上升沿之间的周期。
同时,定时器的捕捉功能也可以用于检测输入信号的上升沿(B),并测量脉冲沿之间的周期。
作为一个防止操作错误的措施,用这种方法测量的周期可以判断他们是否处于头码信号正常的范围内,也可以确定在遥控设备的电池电源很低能否接收。

在其它格式中,头码的ON周期约为8.5 ms,这样当试图只检测周期和头码时,必须使用不少于8.7 ms的周期。要检测整个帧时使用更小的值。

下面描述下一个下降沿(C)是如何被检测的。测量以下两种类型的周期(见下图),不小于3.4 ms(4.5 ms与2.25 ms之间的中点)的周期是标准周期,用于区分正常头码和重复的头码。
当代码为重复代码时,接下来检测的是帧间隔。

头码周期

(2) 客户代码和数据代码段
检测完头码后,接着检测客户代码和数据代码。
尽管必须检测ON和OFF周期,以确保准确,仍然可以通过检测直至下一个下降沿的周期(1位周期)简单地判断数据值(0或1)。
由于这种判断将2.25 ms作为数据值"1",而1.125 ms作为数据值"0",最简单的方法就是用中点值区分这些数据。

但是,由于特别长的间隔会被解释为采用不同格式发送的数据,因此在检测时应当使用有限的值。
在这种情况下,准确检测32位信号是很重要的。
一旦检测到32位信号,紧接着就检测帧间隔。

(3) 帧间隔
尽管检测帧间隔最准确的方法是检测总共108 ms的帧周期,但也可以简单地检测数据长度是否超过32位来实现。
一旦接收到32位数据,接着就应该对客户代码、数据代码和取反的数据代码进行检测。
Suitable Products
  • 这篇文章对您有帮助吗?