红外调制和单片机编程方法

来源:互联网 发布:阿里云是paas吗 编辑:程序博客网 时间:2024/06/04 17:46

第一部分:    认识红外调制

生产厂家对红外遥控的编码做了严格的规范,目前国内外主流的红外遥控编码传输协议有十多种,如NEC、Philips RC-5、Philips RC-6、Philips RC-MM、Philips RECS80(对philips抓狂了)、 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)即脉冲间隔调制(脉冲宽度不变,都是560us;脉冲间隔改变)

   

上图为典型编码规范NEC协议的调制图,为PPM调制。可以看出不管是“0”还是“1”,有高频调制波的地方(下文称其为脉冲)其宽度都是相同的位560us(38KHz调制波,占空比常用1/3,因为据说占空比越大红外传输过程中能量损失越多,传输距离越近),而脉冲间的间隔则是不同的:“1”时为(2.25ms-560us),“0”时为(1.12ms-560us)。由此得来PPM的称号。

再来看下PWM的调制波形吧(脉冲间隔不变,都是600us;脉冲宽度改变)

显然可以看出,“1”的脉冲宽度为1.2ms,“0”的为600us。而脉冲间隔不管是“0”还是“1”,均为600us。从而PPM和PWM的两个概念认识清楚!当然不同规范中PPM和PWM这两种调制方式的脉宽及脉冲间隔可能不同,上面两个图只是示例而已。

第二部分:单片机设计方法

在红外抄表等电路中,要用到38kHz载波来实现串口通讯,其串口就是普通的UART。笔者总结出6种调制电路供网友们参考。

1、基于三态门的标准的调制方式:当UART_TX为低电平时,38kHz信号可以通过三态门。

2、基于或门的调制方式:上图中,实际是当UART_TX和38kHz都为低电平时点亮红外发射管,是个逻辑或的关系。也可以用或门来实现,如下图:

 

3、基于或非门的调制方式:当然也可以用或非门来实现,只是改用高电平点亮红外发射管,如下图:

4、基于三态门的又一种标准的调制方式:调制要求的是基频信号有效时,让高频信号通过,其实高频信号的高电平或低电平点亮红外发射管都是可以的,下图是用的高电平点亮红外发射管:

5、既然第1种方式实际实现了个逻辑或的关系,则输入的2个信号互换也是可以的。

6、当2个信号的驱动能力够强时,不用额外的芯片也能实现红外调制,如下图:

原创粉丝点击