红外遥控编码传输协议生产厂家对红外遥控的编码做了严格的规范,目前国内外主流的红外遥控编码传输协议有十多种,如NEC 、Philips RC-5 、Philips RC-6 、Philips RC-MM 、Philips RECS80 、 RCA 、X-Sat、ITT 、JVC、Sharp、Nokia NRC17 和 Sony SIRC 等。国内最常用的规范有两种:NEC 和 Sony SIRC 。这两种规范的调制方式分别为:PPM( 脉冲间隔调制 )和 PWM (脉冲宽度调制) 。谈到这两个概念,我需要具体讲解一下,因为我在网上查阅相关资料时甚是郁闷,好多说法相互矛盾。有说NEC 属于 PWM 的因为它的脉宽不同, PPM 的脉宽是固定的。而细心地朋友如果探究到NEC 的典型芯片的芯片手册时,会发现上面这种说法是错误的。比如UPD6121 这款红外远程控制芯片的调制方式为PPM。后来终于在一家国外的网站上找到了能够自圆其说的解释。个人认为比较正确,拿来和大家分享。要想认清红外遥控编码传输协议的具体内容,我想还是先捡其重点来讲一下,编码规范中最重要的当属调制这部分了。而主流的调制方式有两种分别为PPM 和 PWM ,当然其他还有好几种,这里先不讲解,免得糊涂了。本文就先介绍下PPM 和 PWM 的区别。PPM(Pulse Position Modulation ),其实更加准确的说法应该是PDM(Pulse Distance Modulation) 即脉冲间隔调制:上图为典型编码规范NEC 协议的调制图, 为 PPM 调制。可以看出不管是 “0”还是“1”,有高频调制波的地方(下文称其为脉冲)其宽度都是相同的位560us,而脉冲间的间隔则是不同的:“1”时为( 2.25ms-560us),“0”时为( 1.12ms-560us)。由此得来PPM 的称号。再来看下 PWM 的调制波形吧:显然可以看出, “1”的脉冲宽度为1.2ms,“0”的为 600us。而脉冲间隔不管是“0”还是“1”,均为 600us。从而 PPM 和 PWM 的两个概念认识清楚! 当然不同规范中PPM 和 PWM这两种调制方式的脉宽及脉冲间隔可能不同,上面两个图只是示例而已。红外遥控协议分析之:NEC协议NEC 协议 特点:8 位地址和 8 位命令,为提高可靠性,地址和命令都分别传输2 次,第 2 次为反码传输脉冲间隔调制:38kHz 载波频率每一位时间为1.12ms(0)或 2.25ms( 1)调制采用脉冲间隔时间调制每一位。每一个脉冲都是560uS 长度的 38kHz 载波脉冲,占空比为1/4 或 1/3(约 21 个周期)。逻辑 1: 2.25ms 逻辑 0:1.12ms 上图是 NEC 协议的一个典型脉冲发送图。此...