找回密码
 注册
关于网站域名变更的通知
查看: 443|回复: 1
打印 上一主题 下一主题

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

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-7-22 00:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
本帖最后由 Taio 于 2019-7-22 13:58 编辑 & p' }. B3 _: A% `

" S7 ~$ P! _1 _
IrDA红外通信在导航仪中的应用

8 y! A5 T" P0 R, V/ |9 {摘要:IrDA红外通信是一种低价的、适应性广的短距离无线通信技术。介绍IrDA的有关协议及实现方式,并给出了IrDA红外通信在导航仪中的应用设计实例。( G: |! p; ]5 k: g/ F/ n  \
    关键词:红外数据协会(IrDA)  红外通信  高速红外  4PPM调制  高速串行/并行接口0 d0 O5 t# P% s) K6 a7 @. i2 }
    导航仪是车载或手持的路径引导装置。要准确、快速、成功地实现路径引导,必须有大量的、并能不断更新的地理信息数据支持,这就要求它具有与其他设备通信并交换数据的功能。作为嵌入式设备的一员,可以选用的通信方案有:PCI总线,IrDA,USB,Ethernet,PC卡及一些传统的I/O。其中可以实现无线通信的只有IrDA。IrDA1.0支持较高115.2Kbps的通信速率,而IrDA1.1可以支持到4Mbps。& i$ b1 K/ y  S, F# w) s5 _4 z
    无线通信的好处是可以去除设备对线缆和连接器的依赖,只要通信双方都支持IrDA协议,就能很快地建立通信链路,实现数据交换。4 c2 C: r( T' A
    现在市场上60%的笔记本电脑都支持红外传输,红外接口也成为几乎所有的掌上电脑的必配标准件。而现在生产的PC机主板上也大都预留了红外接口,只要选配合适的红外收发模块就能实现红外无线数据通信。可见,红外技术的迅速普及,使我们能够最终突破数字终端之间连线的限制。
' \% T8 ^/ A+ i# H6 J4 d1 IrDA及其通信协议简介
* e7 G7 \8 h8 c" n* H& Q: S    红外数据协会(IrDA)是1993年6月成立的一个独立组织,它为短距离红外无线数据通信制定了一系列开放的标准。IrDA的目标是制定能以合理且较小的代价实现的标准和协议,以推进红外通信的发展。; ?7 \6 @9 q9 X, {5 m& p% Z
    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的所有速率。
+ G; @$ }" ^4 l1 I% I( B* e    在IrDA中,物理层、链路接入协议(IrLAP)和链路管理协议(IrLMP)是必需的三个协议层。除此之外,还有一些适用于特殊的应用模式的可选层。& {% r  b; j/ O' F8 O: m
    在基本的IrDA应用模式中,设备分为主设备和从设备。主设备探测它的可视范围,寻找从设备。然后从那些响应它的设备中选择一个,试图建立连接。在建立连接的过程中,两个设备彼此协调,按照它们共同的较高通信能力确定较后的通信速率。以上的“寻找”和“协调”过程都是在9.6Kb/s的波特率下进行的。
3 S" ]; \: O, D" N    IrDA数据通信工作在半双工模式,因为发射时,接收器会被它自己的发射器的光芒所屏蔽。通信的两个设备通过快速转向链路来模拟全双工通信,由主设备负责控制链路的时序。
" `1 }7 T) ?. E2 @* O$ H    IrDA协议按层安排,应用程序的数据逐层下传,最终以光脉冲的形式发出。如图1所示,
+ I% f5 U+ n; u8 q2 L, j. Y
, T; t5 \2 X' r3 ]6 b2 }- F  Y# G: L# U
IrLAP和IrLMP是协议中物理层之外所需的两个软件层。在物理层上的一层是链路接入协议IrLAP ,它是HDLC(高级数据链路控制)协议的改编,以适应红外传输的要求。IrLAP层的功能是进行链路初始化、设备地址寻找和解决冲突、启动连接、数据交换、断开连接和链路关闭。IrLAP指定红外数据包的帧和字节结构,以及红外通信的错误检测方法。IrLAP之上的一层是链路管理协议,即IrLMP,它管理IrLAP所提供的链路连接中的链路功能和应用程序。它评估设备上的服务,并管理如数据速率、BOF的数量(帧的开始)、及连接换向时间等参数的协调,以及数据的纠错传输。
: [- S( U+ _* p  z9 v8 b" U    IrDA物理层协议提出了对工作距离、工作角度(视角)光功率、数据速率和不同品牌设备互联时抗干扰能力的建议。
/ a# |% c0 D3 Q1 F5 [2 c2 导航仪中IrDA红外通信的设计与实现& }, g- X7 t; ~+ V' a
2.1 物理层协议的实现/ q) `+ a1 s, m
    这一协议的设计保证了0~1m,0°~15°的轴线偏离角的无错通信。其中包括了调制、视角、光功率、数据速率和噪声去除的规范,以保证不同品牌和类型的设备之间的物理互连性。协议也考虑了周围的光照或其他IR噪声源的存在,以及参与IR通信的设备间的干扰。
* O2 E) f/ L. }# D    协议要求合理选择发射器的光强度和接收器的灵敏度,以保证链路能在0~1m的距离内工作。数据速率小于4 Mb/s时使用RZI(归零反转)调制,较大脉冲宽度是位周期的3/16;而4 Mb/s的数据速率使用4PPM(脉冲位置)调制。图1给出了IrDA物理层的方框图。7 p, Y# w3 W$ M
    IrDA要求的RZI(反相归零)调制的编码效果如图2的IR帧数据所示。这一方案需要的编码/解码器可以集成在I/O芯片中,也可作为一个独立元件。
$ h8 i* D0 r, b7 x) ~& b+ ~1 c' N

  J% n4 J3 c9 q5 ?& G' B, e3 O( J9 Z# m/ P3 [/ u) A
    4PPM调制如图3所示,两个数据位组合在一起,组成一个500ns的“数据码元组”。将这一码元组分为四个125ns的时隙,根据码元组的状态,在不同的时隙放置单脉冲。解调器在对输入位流的相位锁定后,就能根据脉冲在500ns周期中的位置来解出数据。
; S- y' {; Y$ x) H, s' q5 N2.2 硬件电路的设计5 Z9 x7 S+ I3 z
    导航仪的核心MCU选用Intel公司的SA1110,它的串口2是特别为IrDA红外通信设计的,内部集成了支持SIR和FIR的两个独立编码/解码模块,能够与市场上IrDA兼容的LED收发器直接相连。$ N# c, W2 R( g- K' t/ G4 N3 o
    红外收发器选用HP公司的HSDL-3600,它支持9.6kb/s~4Mb/s的数据传输速率,其典型链路传输距离可大于1.5m。通过管脚FIR_SEL能选择可以接收的数据速率。FIR_SEL设为低时,较高速率可达115.2kb/s;设为高时,较高速率可达4Mb/s。同时,它还有两个管脚MD0和MD1,用来选择发光功率。用户可以根据自己的需要设定,达到在短距离通信情况下省电的目的。从表1所示的收发器控制真值表中,可以清楚地看到功能选择的组合。0 k: E5 b0 q9 p
9 S" T0 S+ x, ?6 u, x- M& ^
表1 收发器控制真值表
( A5 m2 Y- g$ n' O4 @; x+ D2 G9 C
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距离

+ _+ t7 D/ C4 S6 ~3 [9 c$ H" K/ x    图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的工作模式。- R4 n4 e/ ^# w- c

! z4 B5 @7 Y) ?+ r9 k) m; j9 F. p( M7 x( L% S! `* l1 ^" M

" W) o; @6 j3 I; E* q) o; q& F; c% c9 z2.3 IrDA红外通信的数据流
/ n. e# ~! o9 }5 J- ^    SA1110的红外通信端口(ICP)既支持SIR,也支持FIR。
% b. y1 t; E) W    在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位数据、停止位组成,无奇偶校验。" P/ ?. l' C3 W7 M6 c# c4 x
    而在FIR模式下,通信过程就复杂得多。所有在TXD2/RXD2管脚和ICP的HSSP(高速串行/并行)接口之间传送的串行数据,都是根据4PPM IrDA标准来调制/解制。编码时,把一个字节分为四个单独的码元组(2位一对),最低的码元组首先传送,但每个码元组不重新排序。这样,一个字节由四个“片”(每片500ns)组成,每个“片”分为四个时隙(每个时隙125ns)。
; L- u* S, A3 a; v    ICP中用高速串行/并行(HSSP)接口来实现特殊的4Mb/s协议。4Mb/s的串行帧格式如表2所示。
+ s; k* k" K0 a) X/ i! G3 X' g& ], c" C' _3 w# z
表2 用于IrDA传送(4Mbps)的高速串行帧格式
3 G2 q6 {: R" N+ T- ~( l
引导标志 起始标志
地址
控制(可选)
数据
CRC-32
停止标志
 
引导标志   ㄧ1000ㄧ0000ㄧ1010ㄧ0000ㄧ---重复16次6 ?5 c& g8 x9 G2 a2 a2 r
起始标志   ㄧ0000ㄧ1100ㄧ0000ㄧ1100ㄧ0110ㄧ0000ㄧ0110ㄧ0000ㄧ
% {$ B/ s6 ~% f停止标志   ㄧ0000ㄧ1100ㄧ0000ㄧ1100ㄧ0000ㄧ0110ㄧ0000ㄧ0110ㄧ

" n: O4 Q2 d7 c2 o- J2 N    引导标志用于接收同步,接收开始时,使用一个串行移位寄存器从RXD2管脚接收四个4PPM片,一次锁存并解码这些片。如果这些片不能解码为正确的引导标志,时隙计数延迟1,并重复以上过程,直到辨认出引导标志,则标志时隙计数器同步。引导标志最少重复16次,在空闲时(无发送数据)不断重复。所以在16个引导标志传送完后的任何时候,都可能接收到起始标志。
4 C0 C0 R1 T6 j1 f0 K2 S1 M8 j3 _    接收到8片长的起始标志后,将它与标准编码比较。如果起始标志的任一部分和标准编码不一样,则告知一个帧错误,并且再一次开始寻找帧引导标志。一旦正确的起始标志被验证,接下来的每组4片就被解码为一个数据字节,并放入5字节的临时FIFO寄存器中。当临时FIFO被填满后,数据值便被一个接一个地推入接收FIFO。
, [9 }& [/ E* Z3 x
& `. }* }" d! Y# O( \' c* d% `2 h
7 ^. T2 W$ A9 G/ F, M0 Q0 m7 Z' H! j6 V$ o* T
    一帧的一个数据字节是8位的地址区,它是在一对多通信时用来指定接收器的。最多允许255个独立地址(00000000~11111110)。11111111为通用地址,用于对所有站广播信息。接收地址匹配可以激活或禁止。如果接收地址匹配激活,收到的地址将和地址匹配值比较,如果两个值相等或输入地址是通用地址,所有的数据字节,包括地址字节,都将存储在接收FIFO中。如果值不相符,则不把任何数据存储到接收FIFO,并忽略帧的余下部分,开始寻找下一个引导标志。
( C* y# i9 j" m8 T7 C    一帧的第二个数据字节可能包括一个可选的由用户定义的8位控制区,它必须由软件解码,因为在HSSP中它被视为普通的数据。6 D9 q- H2 v4 N2 C8 P
    一帧可以包含不大于2047字节的任何数量的多个8位数据(包括地址和控制字节)。HSSP不限制一帧的大小,但选择数据长度时,应考虑到CRC校验的能力。一般数据长度不超过CRC校验能检测到传输中所有错误时的较大数据量。, S; i* }' \# R8 P
    HSSP使用已确定的32位循环冗余校验(CRC)来检测传送中发生的位错误。CRC数值的计算使用地址、控制和数据区,其生成多项式为:, I' @/ n! ]- @! W! f) f" d3 D3 M
    CRC(x)=x32+x26+x23+x22+x16+x12+x11+x10+x8+x7+x5+x4+x2+x+1
" c9 K0 U; C! J    CRC数值不放在接收FIFO中,而是放入5字节的临时FIFO中,并与接收时计算出的CRC数值进行比较。
* \9 J* g$ |  {/ s6 P% p, H    如果数据区中接收到两个不含脉冲(是0000)的片,则开始寻找停止标志。一旦停止标志被确认,放入接收FIFO的较后一个字节被标志为帧的较后字节。% p+ U) Z: L5 I* K. k' p5 T* j) _6 L
3 前景与展望
! }# V0 y, H" |& @4 ^  @+ b    随着红外通信技术的发展,其通信速率也将不断提高,在2001年IrDA将推出16Mbps的甚高速红外(VFIR)标准。IrDA红外通信的作用距离也从1m扩展到几十m,但距离的扩展是以功耗的增加为代价的。
7 K. F- }! O0 a0 O* r+ z    对于象导航仪这样的小型设备,IrDA红外通信不失为一种方便、快捷的与主机交换数据的实现方案。随着IrDA协议在PC机、打印机、扫描仪、数字相机、局域网(LAN)接入设备、寻呼机、蜂窝电话、医疗设施等设备上的实现,无处不在的数字化连接即将成为现实。) [/ z7 s: D) M6 C

) G: \) _! U. n- N  ]  t2 L$ q. l0 W7 h! Q) b# A1 j6 |9 H! v

该用户从未签到

2#
发表于 2019-7-22 17:47 | 只看该作者
研究一下,谢谢分享
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-7-19 18:31 , Processed in 0.109375 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表