IrDA红外通信在导航仪中的应用

2006-05-07 15:50:12来源: 电子技术应用

红外通信是一种低价的、适应性广的短距离无线通信技术。介绍IrDA的有关协议及实现方式,并给出了IrDA红外通信在导航仪中的应用设计实例。

并行接口

    导航仪是车载或手持的路径引导装置。要准确、快速、成功地实现路径引导,必须有大量的、并能不断更新的地理信息数据支持,这就要求它具有与其他设备通信并交换数据的功能。作为嵌入式设备的一员,可以选用的通信方案有:PCI总线,IrDA,USB,Ethernet,PC卡及一些传统的I/O。其中可以实现无线通信的只有IrDA。IrDA1.0支持最高115.2Kbps的通信速率,而IrDA1.1可以支持到4Mbps。

    无线通信的好处是可以去除设备对线缆和连接器的依赖,只要通信双方都支持IrDA协议,就能很快地建立通信链路,实现数据交换。

    现在市场上60%的笔记本电脑都支持红外传输,红外接口也成为几乎所有的掌上电脑的必配标准件。而现在生产的PC机主板上也大都预留了红外接口,只要选配合适的红外收发模块就能实现红外无线数据通信。可见,红外技术的迅速普及,使我们能够最终突破数字终端之间连线的限制。

1 IrDA及其通信协议简介

    红外数据协会(IrDA)是1993年6月成立的一个独立组织,它为短距离红外无线数据通信制定了一系列开放的标准。IrDA的目标是制定能以合理且较小的代价实现的标准和协议,以推进红外通信的发展。

    IrDA数据通信按发送速率分为三大类:SIR,MIR和FIR。串行红外(SIR)速率覆盖了RS-232端口通常所支持的速率(9600 b/s19.2 Kb/s38.4 Kb/s57.6 Kb/s115.2 Kb/s)。MIR指0.576 Mb/s和1.152 Mb/s的速率。高速红外(FIR)通常用于指4 Mb/s的速率,有时也用于指高于SIR的所有速率。

    在IrDA中,物理层、链路接入协议(IrLAP)和链路管理协议(IrLMP)是必需的三个协议层。除此之外,还有一些适用于特殊的应用模式的可选层。

    在基本的IrDA应用模式中,设备分为主设备和从设备。主设备探测它的可视范围,寻找从设备。然后从那些响应它的设备中选择一个,试图建立连接。在建立连接的过程中,两个设备彼此协调,按照它们共同的最高通信能力确定最后的通信速率。以上的“寻找”和“协调”过程都是在9.6Kb/s的波特率下进行的。

    IrDA数据通信工作在半双工模式,因为发射时,接收器会被它自己的发射器的光芒所屏蔽。通信的两个设备通过快速转向链路来模拟全双工通信,由主设备负责控制链路的时序。

    IrDA协议按层安排,应用程序的数据逐层下传,最终以光脉冲的形式发出。如图1所示,IrLAP和IrLMP是协议中物理层之外所需的两个软件层。在物理层上的第一层是链路接入协议IrLAP,它是HDLC(高级数据链路控制)协议的改编,以适应红外传输的要求。IrLAP层的功能是进行链路初始化、设备地址寻找和解决冲突、启动连接、数据交换、断开连接和链路关闭。IrLAP指定红外数据包的帧和字节结构,以及红外通信的错误检测方法。IrLAP之上的一层是链路管理协议,即IrLMP,它管理IrLAP所提供的链路连接中的链路功能和应用程序。它评估设备上的服务,并管理如数据速率、BOF的数量(帧的开始)、及连接换向时间等参数的协调,以及数据的纠错传输。

    IrDA物理层协议提出了对工作距离、工作角度(视角)光功率、数据速率和不同品牌设备互联时抗干扰能力的建议。

2 导航仪中IrDA红外通信的设计与实现

2.1 物理层协议的实现

    这一协议的设计保证了0~1m,0°~15°的轴线偏离角的无错通信。其中包括了调制、视角、光功率、数据速率和噪声去除的规范,以保证不同品牌和类型的设备之间的物理互连性。协议也考虑了周围的光照或其他IR噪声源的存在,以及参与IR通信的设备间的干扰。

    协议要求合理选择发射器的光强度和接收器的灵敏度,以保证链路能在0~1m的距离内工作。数据速率小于4 Mb/s时使用RZI(归零反转)调制,最大脉冲宽度是位周期的3/16;而4 Mb/s的数据速率使用4PPM(脉冲位置)调制。图1给出了IrDA物理层的方框图

    IrDA要求的RZI(反相归零)调制的编码效果如图2的IR帧数据所示。这一方案需要的编码/解码器可以集成在I/O芯片中,也可作为一个独立元件。

    4PPM调制如图3所示,两个数据位组合在一起,组成一个500ns的“数据码元组”。将这一码元组分为四个125ns的时隙,根据码元组的状态,在不同的时隙放置单脉冲。解调器在对输入位流的相位锁定后,就能根据脉冲在500ns周期中的位置来解出数据。

2.2 硬件电路的设计

    导航仪的核心MCU选用Intel公司的SA1110,它的串口2是特别为IrDA红外通信设计的,内部集成了支持SIR和FIR的两个独立编码/解码模块,能够与市场上IrDA兼容的LED收发器直接相连。

    红外收发器选用HP公司的HSDL-3600,它支持9.6kb/s~4Mb/s的数据传输速率,其典型链路传输距离可大于1.5m。通过管脚FIR_SEL能选择可以接收的数据速率。FIR_SEL设为低时,最高速率可达115.2kb/s;设为高时,最高速率可达4Mb/s。同时,它还有两个管脚MD0和MD1,用来选择发光功率。用户可以根据自己的需要设定,达到在短距离通信情况下省电的目的。从表1所示的收发器控制真值表中,可以清楚地看到功能选择的组合。

表1 收发器控制真值表

MD0 MD1 FIR_SEL 接收功能 发射功能
1 0 X 关闭 关闭
0 0 0 SIR 全距离
0 1 0 SIR 2/3距离
1 1 0 SIR 1/3距离
0 0 1 FIR 全距离
0 1 1 FIR 2/3距离
1 1 1 FIR 1/3距离

    图4是HSDL-3600的功能方框图,它给出了HSDL-3600的管脚说明及典型外围电路。其中CX1取0.47μF,CX2取6.8μF,R1取2.5Ω。在应用时,管脚TXD和RXD与SA1110的TXD2、RXD2分别直接相连。而SA1110的32位数据线中的三根通过锁存器接到MD0,MD1和FIR_SEL上,这样就能通过软件控制HSDL-3600的工作模式。

2.3 IrDA红外通信的数据流

    SA1110的红外通信端口(ICP)既支持SIR,也支持FIR。

    在SIR模式下,所有在TXD2/RXD2管脚和ICP的UART之间传送的串行数据都根据SIR IrDA标准调制/解调。逻辑0由一个3/16位宽或1.6μs宽的光脉冲代表(1.6μs是最高位速率115.2 Kbps的位宽的3/16)。0位的开始对应脉冲的上升沿。逻辑1由无光脉冲代表。字节首先从LSB开始发送。每帧由起始位、8位数据、停止位组成,无奇偶校验。

    而在FIR模式下,通信过程就复杂得多。所有在TXD2/RXD2管脚和ICP的HSSP(高速串行/并行)接口之间传送的串行数据,都是根据4PPM IrDA标准来调制/解制。编码时,把一个字节分为四个单独的码元组(2位一对),最低的码元组首先传送,但每个码元组不重新排序。这样,一个字节由四个“片”(每片500ns)组成,每个“片”分为四个时隙(每个时隙125ns)。

    ICP中用高速串行/并行(HSSP)接口来实现特殊的4Mb/s协议。4Mb/s的串行帧格式如表2所示。

表2 用于IrDA传送(4Mbps)的高速串行帧格式

引导标志 起始标志 地址 控制(可选) 数据 CRC-32 停止标志
 
引导标志   ㄧ1000ㄧ0000ㄧ1010ㄧ0000ㄧ---重复16次
起始标志   ㄧ0000ㄧ1100ㄧ0000ㄧ1100ㄧ0110ㄧ0000ㄧ0110ㄧ0000ㄧ
停止标志   ㄧ0000ㄧ1100ㄧ0000ㄧ1100ㄧ0000ㄧ0110ㄧ0000ㄧ0110ㄧ

    引导标志用于接收同步,接收开始时,使用一个串行移位寄存器从RXD2管脚接收四个4PPM片,一次锁存并解码这些片。如果这些片不能解码为正确的引导标志,时隙计数延迟1,并重复以上过程,直到辨认出引导标志,则标志时隙计数器同步。引导标志最少重复16次,在空闲时(无发送数据)不断重复。所以在16个引导标志传送完后的任何时候,都可能接收到起始标志。

    接收到8片长的起始标志后,将它与标准编码比较。如果起始标志的任一部分和标准编码不一样,则告知一个帧错误,并且再一次开始寻找帧引导标志。一旦正确的起始标志被验证,接下来的每组4片就被解码为一个数据字节,并放入5字节的临时FIFO寄存器中。当临时FIFO被填满后,数据值便被一个接一个地推入接收FIFO。

    一帧的第一个数据字节是8位的地址区,它是在一对多通信时用来指定接收器的。最多允许255个独立地址(00000000~11111110)。11111111为通用地址,用于对所有站广播信息。接收地址匹配可以激活或禁止。如果接收地址匹配激活,收到的地址将和地址匹配值比较,如果两个值相等或输入地址是通用地址,所有的数据字节,包括地址字节,都将存储在接收FIFO中。如果值不相符,则不把任何数据存储到接收FIFO,并忽略帧的余下部分,开始寻找下一个引导标志。

    一帧的第二个数据字节可能包括一个可选的由用户定义的8位控制区,它必须由软件解码,因为在HSSP中它被视为普通的数据。

    一帧可以包含不大于2047字节的任何数量的多个8位数据(包括地址和控制字节)。HSSP不限制一帧的大小,但选择数据长度时,应考虑到CRC校验的能力。一般数据长度不超过CRC校验能检测到传输中所有错误时的最大数据量。

    HSSP使用已确定的32位循环冗余校验(CRC)来检测传送中发生的位错误。CRC数值的计算使用地址、控制和数据区,其生成多项式为:

    CRC(x)=x32+x26+x23+x22+x16+x12+x11+x10+x+x+x+x+x+x+1

    CRC数值不放在接收FIFO中,而是放入5字节的临时FIFO中,并与接收时计算出的CRC数值进行比较。

    如果数据区中接收到两个不含脉冲(是0000)的片,则开始寻找停止标志。一旦停止标志被确认,放入接收FIFO的最后一个字节被标志为帧的最后字节。

3 前景与展望

    随着红外通信技术的发展,其通信速率也将不断提高,在2001年IrDA将推出16Mbps的甚高速红外(VFIR)标准。IrDA红外通信的作用距离也从1m扩展到几十m,但距离的扩展是以功耗的增加为代价的。

    对于象导航仪这样的小型设备,IrDA红外通信不失为一种方便、快捷的与主机交换数据的实现方案。随着IrDA协议在PC机、打印机、扫描仪、数字相机、局域网(LAN)接入设备、寻呼机、蜂窝电话、医疗设施等设备上的实现,无处不在的数字化连接即将成为现实。

关键字:红外  通信  导航  导航仪

编辑: 引用地址:http://www.eeworld.com.cn/wltx/RFID/200605/2350.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部
红外
通信
导航
导航仪

小广播

独家专题更多

富士通铁电随机存储器FRAM主题展馆
富士通铁电随机存储器FRAM主题展馆
馆内包含了 纵览FRAM、独立FRAM存储器专区、FRAM内置LSI专区三大部分内容。 
走,跟Molex一起去看《中国电子消费品趋势》!
走,跟Molex一起去看《中国电子消费品趋势》!
 
带你走进LED王国——Microchip LED应用专题
带你走进LED王国——Microchip LED应用专题
 
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved