当前位置:文档之家› 蓝牙数据传输技术知识~~

蓝牙数据传输技术知识~~

数据传输之前一定要建立连接
ACL包

可以传递用户的数据,共定义了七种类型, 其中六种有CRC码并可以重传
链路数目


主设备与从设备将物理通道内的时隙进行最充分的利用 后,能够同时建立许多ACL链路与SCO链路。主设备与 各个从设备间最多只有一条ACL链路,但是可以有多条 SCO链路。 主设备与从设备间最多可以支持3条SCO链路、或是主 设备与3个从设备各建立起一条SCO链路等。 在建立或是关闭SCO链路时,依赖于先建立起一条ACL 链路来传递控制信号。 建立ACL链路比建立SCO链路容易,通常若主设备与从 设备无法互相连接时,大部分的情况都是因为无法建立 起SCO链路。
数据传输之前一定要建立连接

SCO包

SCO包不使用CRC校验,并且不需要重发,没 有有效载荷头,一般用在传送同步(语音)信号

HV1包使用1/3 FEC纠错,支持高质量语音 HV2包使用2/3 FEC纠错,支持中等质量的语音
传输

HV3包不使用FEC纠错,支持高速语音传输
ACL链路


无连接的异步传输(Asynchronous ConnectionLess,ACL)链路属于包交换的异步传输类型。

在本实验中,对一个物理链路用一个16位的
ACL_Handle无符号整数句柄进行标识。
数据传输实验指定了两个特殊的句柄:

Loopback (0x0000)指向本机的自环链路。目
的物理地址为0x00 00 00 00 00 01

BroadCast (0x00FF)广播到网络的每台主机。
目的物理地址为0xFF FF FF FF FF FF 数据传输之前一定要建立连接

多数数据链路)以允许在同一台主机上的两个应用进行
通信。

在实际的TCP/IP协议中,127.0.0.1这个IP地址分
配给自环接口,命名为localhost。自环接口的IP
数据报不能出现在任何的网络的物理链路之上。
数据传输之前一定要建立连接
自环与广播
扫描或查询扫描状态,也可以进入寻呼或查询状


如果主设备知道一个设备的地址,就采用寻呼建 立连接;如果地址未知,就采用查询建立连接
数据传输之前一定要建立连接
连接过程
一般而言,主设备与从设备经过中间状态建立连 接的过程如下: 步骤1~3:主设备进入查询状态,周围的从 设备已经将查询扫描状态打开(EnabIe),从设 备会随时接收来自主设备发出的查询信号。查 询信号是含有查询访问码的ID包。 步骤4~5:从设备收到主设备的查询信号后,进 入查询回应状态,返回FHS包告知主设备有关 自己的BD_ADDR地址、内部时序、设各种类 、以及多长时间后进入呼叫扫描状态等数据。 所以当查询状态结束后,主设备已经得到从设 备响应的BD_ADDR地址、内部时序以及设备 种类。 数据传输之前一定要建立连接

数据传输之前一定要建立连接
服务访问点

在数据传输时需要两种地址:物理地址(标识主
机)和SAP地址(标识服务)。

物理地址由数据链路层媒体访问控制MAC子层负
责传输,SAP地址由数据链路层中的逻辑链路控
制LLC子层负责传输。
数据传输之前一定要建立连接
面向连接与无连接

面向连接服务具有连接建立、数据传输、连接释 放三个阶段。在传送数据时是按序传送的。这一 点和电路交换相似,因此它在网络层又称为虚电 路服务。
数据传输之前一定要建立连接
连接过程
一般而言,主设备与从设备经过中间状态建立连 接的过程如下:


步骤8~10:这时从设备已经处于呼叫扫描状态,不 断地在接收信号设备访问码,当从设备收到呼叫信号后 进入呼叫回应状态,返回ID包作为响应。 步骤11~13:主设备收到此ID的响应后也进入主设备 回应状态,再发送给从设备一个FHS包。此时FHS包上 的信号有主设备的时序、主设备的BD_ADDR地址、连 接成员地址等信息。当从设备收到FHS包上的信息,返 回一个ID包作为响应,主设备与从设备彼此间的连接就 建立,主设备与从设备都进入连接状态。
数据传输之前一定要建立连接
蓝牙状态分析

2个主要工作状态:守候状态和连接状态 7个中间临时状态:寻呼状态、寻呼扫描状态、 查询状态、查询扫描状态、主设备状态、从设 备响应状态和查询响应状态

数据传输之前一定要建立连接
蓝牙状态分析

守候状态是蓝牙设备的默认状态,设备处于低功
耗状态,它可以每隔1.28s离开守候状态进入寻呼


数据传输实验中设计的协议层
数据链路层

媒体是长期的,而连接是有生存期的。这种建立
起来的数据收发关系就称为数据链路。

数据链路层同时负责流量控制和差错控制。流量
控制采取ARQ和滑动发送窗口的机制,发送窗口 定为4。数据量大的时候,每四个信息帧返回一个 响应帧,减小开销。差错控制采用CRC16。 数据链路层分成了两个子层,一个是逻辑链路控
数据传输之前一定要建立连接
ACL链路

ACL链路支持对称和非对称两种传输速率 在非对称速率时,虽然主从网络的最大带宽为 1Mb/s,但是包还需要负责发送控制信号,所 以ACL链路的数据传输率在非对称连接时,主 设备到从设备的传输速率为721Kb/s,从设备 到主设备的传输速率为57.6Kb/s。 对称连接时,主设备到从设备间的速率各为 432.6Kb/s。 当ACL链路传输数据信息时,为了保证包的正 确性,将每个包都加以保护。若接收一方收到 的包差错率非常高时,必须命令发送端将该包 更新发送。
数据传输之前一定要建立连接
如何建立连接
主设备与从设备间的时序同步

所有的蓝牙设备都有一个内部系统时序CLXN,
用以决定包发送的时间,这个内部时不断地进行
计算,不能被关闭或调整。蓝牙设备每次递增的
时间,为312.5us。时钟速率为3.2kHz。

CLKN是一个自由运转的时钟,而目是所有其它 时钟特性的参考。在高度活跃状态下,本地时钟 用精度为++/-20ppm晶体振荡器产生。 数据传输之前一定要建立连接
数据传输之前一定要建立连接
服务访问点

当采用复用技术时,一条物理链路上可以有多条 逻辑链路。数据传输实验的数据链路层通过服务 访问点实现了信道的复用。
在实际的数据通信中,一个主机中有多个上层应 用需要和其它的主机上的应用进行通信,所以, 数据链路层需要向上提供多个服务访问点(SAP) 以向多个上层应用提供服务。
数据传输之前一定要建立连接
连接过程
一般而言,主设备与从设备经过中间状态 建立连接的过程如下:

步骤6~7:主设备从FSH包得到从设备的地 址等数据后,接着进入呼叫状态与特定的从设 备建立连接。但此时从设备的时序仍尚未与主 设备时序同步,所以主设备以预计的时序CLXE 与含有设备访问码的ID包来与特定的从设备建 立连接。设备访问码是主设备以从设备的 BD_ADDR计算而来。
数据传输之前一定要建立连接
连接过程

当从设备成功接收一个寻呼消息后,它们都进入 响应状态来交换建立连接所必须的信息。 对于连接,最重要的是两个蓝牙设备使用相同的 信道接入码,使用相同的信道跳频序列,时钟是 同步的。
信道接入码和信道跳频序列都起源于主设备 BD_ADDR,时钟由主设备时钟决定 。 数据传输之前一定要建立连接
主设备
从设备1
从设备2
从设备3
数据传输之前一定要建立连接
ACL链路

ACL链路这种包交换的估输类型,是在作输数 据时才运用时隙,与现在因特网传输数据的方 式相同,适合传输突发性的数据信息。主设备 可同时与多个从设备建立ACL链路,属于点对 多点的非对称连接。 主设备负责分配主从网络中的每个从设备到主 设备间的传输速率。在主设备送出ACL链路包 之前,必须先询问各个从设备,选定某个从设 备后才能发送数据信息。ACL链路也支持主设 备到所有从设备的广播信息。

制LLC,另一个是媒体访问控制MAC。
数据传输之前一定要建立连接
数据链路层
高层数据 高层
LLC 首部
LLC 数据 LLC PDU
LLC 子层
MAC 首部
MAC 数据 MAC 帧
MAC 尾部
MAC 子层
数据传输之前一定要建立连接
LLC的帧结构
I/G 7 比特 C/R 7 比特
DSAP
SSAP
控制

数据传输之前一定要建立连接
SCO链路

面向连接的同步传输(Synchronous ConnectionOriented,SCO)链路属于电路交换的同步传输类 型,电路交换是当主设备与从设备间的连接一巳 建立后,不管有无数据发送,系统都会预留固定 间隔的时限给主设备与从设备,其他从设备就不 能利用此连接上的时隙来发送数据,如图所示
自环与广播

使用这个Loopback的ACL_Handle可以和本机的 应用建立逻辑连接,获得的LLC_Handle不区分本 地逻辑连接和远端逻辑连接,是一致的。

自环的MAC数据包不会出现在实际的物理链路上 ,而是直接交给本机数据链路层的接收模块处理

CLK通过在本地时钟CLKN的基础上增加一个补偿值获得 。对主单元来说,补偿值是0;而对各个从单元来说,都对 自身的CLKN加上一个适当的补偿值。

虽然在蓝牙设备所有CLKN都以相同的标称速率运行,但
相互之间的漂移引起了CLK的不准确性。因此在从单元的 补偿必须定期的修改,以致CLK近似于主单元的CLKN。

CLKE和CLK通过增加一个补偿值取自CLKN基准。 CLKE是一个处理接收器的本地时钟估算呼叫单位 ,即:在呼叫CLKN上加补偿近于接收的CLKN。通
相关主题