蓝牙核心技术概述(三): 蓝牙协议规范(无线电频率、基带链路控制、领汇管理)

关键词:蓝牙核心技术协议无线电频率基带链路控制链路管理
作者:xubin341719(欢迎转载。请注明作者,请尊重版权。谢谢!)
欢迎指正错误。共同学习、共同进步!


下载链接:Bluetooth PROFILE SPECIFICATIONS (基本涵盖全部蓝牙协议)、buletooth core 2.1-4.0 SPECIFICATION(三蓝牙版本号的核心协议v2.1\v3.0\v4.0)、蓝牙核心技术与应用 马建仓 版(蓝牙协议相关刚開始学习的人必读,开发人员參考)

蓝牙核心技术概述(一):蓝牙概述
蓝牙核心技术概述(二):蓝牙使用场景
蓝牙核心技术概述(三): 蓝牙协议规范(射频、基带链路控制、链路管理)
蓝牙核心技术概述(四):蓝牙协议规范(HCI、L2CAP、SDP、RFOCMM)
蓝牙核心技术概述(五):蓝牙协议规范(irOBEX、BNEP、AVDTP、AVCTP)



蓝牙协议是蓝牙设备间交换信息所应该遵守的规则。

与开放系统互联(OSI)模型一样。蓝牙技术的协议体系也採用了分层结构。从底层到高层形成了蓝牙协议栈。各层协议定义了所完毕的功能和使用数据分组格式,以保证蓝牙产品间的互操作性。

一、射频协议
射频位置如上图红色部分。

1、工作频率
蓝牙工作在2.4GHz ISM频段上,蓝牙採用跳频扩谱技术主动的避免工作频段受干扰(微波炉的工作频率也是2.4GHz)。

地理位置


ISM频段范围


射频信道频率


中国、美国、欧洲


2400.0~2483.5MHz


F=(2402+k)MHz,k在0、1、……78中随机取值


法国


2446.5~2483.5MHz


F=(2454+k)MHz,k在0、1、……22中随机取值


日本


2471.0~2497.0MHz


F=(2473+k)MHz,k在0、1、……22中随机取值


西班牙


2445.0~2475.0MHz


F=(2449+k)MHz,k在0、1、……22中随机取值

我国的蓝牙频率在2.402GHz~2.483GHz,蓝牙每一个频道的宽度为1MHz。为了降低带外辐射的干扰,保留上、下保护为3.5MHz和2MHz,79个跳频点中至少75个伪随机码跳动。30S内不论什么一个频点使用时长不能超过0.4S。
2、跳频技术、发射功率、时隙
(1)、发射功率:蓝牙发射功率分三级:一级功率100mW(20dBm)。二级功率2.5mW(4dBm);三级功率1mW(0dBm);
(2)、物理信道:蓝牙物理信道有伪随机序列控制的79个跳频点构成,不同跳频序列代表不同的信道。


(3)、时隙:蓝牙跳频速率为1600次/s,每一个时间为625uS(1S/1600)称为一个时隙;

二、基带与链路控制协议

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveHViaW4zNDE3MTk=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" />

蓝牙发送数据时,基带部分将来自高层的数据进行信道编码。向下发给射频进行发送;接收数据时,将解调恢复空中数据并上传给基带。基带进行信道编码传送给上层。

作用:跳频选择、蓝牙编址、链路类型、信道编码、收发规则、信道控制、音频规范、安全设置。

1、蓝牙分组编码为小端模式;

2、蓝牙地址

BD_ADDR:BluetoothDevice Address。

LAP:LowerAddress Part 低地址部分。

UAP: UpperAddress Part 高地址部分;

NAP: Non-significantAddress Part 无效地址部分。

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveHViaW4zNDE3MTk=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" />

3、蓝牙时钟
每一个蓝牙设备都有一个独立执行的内部系统时钟。称为本地时钟(Local Clock),决定定时器的收发跳频。为了与其它设备同步,本地时钟要加一个偏移量(offset),提供给其它设备同步。

蓝牙基带四个关键周期:312.5uS、625uS、1.25mS、1.28S

CLKN:本地时钟:
CLKE:估计时钟。扫描寻呼过程中用到;
CLK:设备实际执行的时钟频率。

CLKE、CLK由CLKN加上一个偏移量得到的。

4、蓝牙物理链路:
通信设备间物理层的数据连接通道就是物理链路。
ACL(Asynchronous Connectionless)异步无连接链路;对时间要求不敏感的数据通信。如文件数据、控制信令等。

SCO(Synochronous Connection Oriented)同步面向连接链路;对时间比較敏感的通信。如:语音;最多仅仅支持3条SCO链路。不支持重传。
ACL用于传输数据。
5、蓝牙基带分组:
基带分组至少包括:接入码、分组头、有效载荷。

(1)、接入码用于同步、直流、载频泄漏偏置补偿标识;
(2)、分组头包括链路信息。确保纠正较多的错误。
分组类型例如以下:


分组类别


Type(b3b2b1b0)


时隙


SCO


ACL


链路控制分组


0000


1


NULL


NULL


0001


POLL


POLL


0010


FHS


FHS


0011


DM1


DM1


单时隙分组


0100


1


没有定义


NULL


0101


HV1


0110


HV2


0111


HV3


1000


DV


1001


NULL


AUX1


3时隙分组


1010


3


没有定义


DM3


1011


DH3


1100


没有定义


1101


5时隙分组


1110


5


没有定义


DM5


1111

ACL分组形式为:D(M|H)(1|3|5),D代表数据分组。M代表用2/3比例的FEC的中等速率分组;H代表不使用纠错码的快速率分组;1、3、5分别代表分组所占用的时隙数目;
DM1、DM3、DM5、DH1、DH3、DH5
SCO分组形式为:HV(1|2|3)。HV代表高质量语言分组。1、2、3有效载荷所採用的纠错码方法。1为1/3比例FEC。设备2个时隙发送一个单时隙分组。2为2/3比例FEC,设备4个时隙发送一个单时隙分组;3为不使用纠错码,设备6个时隙发送一个单时隙分组
HV1、HV2、HV3
ALC 分组:


类型


有效载荷头/字节


用户有效载荷/字节


FEC


CRC


对称最大速率/kbps


非对称速率/kbps


前向


后向


DM1


1


0~17


2/3



108.8


108.8


108.8


DH1


1


0~27




172.8


172.8


172.8


DM3


2


0~121


2/3



258.1


387.2


54.4


DH3


2


0~183




390.4


585.6


86.4


DM5


2


0~224


2/3



286.7


477.8


36.3


MH5


2


0~339




433.9


723.2


57.6


AUX1


1


0~29




185.6


185.6


185.6

SCO分组:


类型


有效载荷头/字节


用户有效载荷/字节


FEC


CRC


有效载荷长度


同步速率/kbps


占用Tsco数目/语言长度


HV1



10


1/3


240位


64


2/1.25ms


HV2


20


2/3


4/2.5ms


HV3


30



6/3.75ms


DV


1D


10+(0-9)D


2/3D


有D


64+57.6D

凝视:D 仅仅对数据段实用,DV分组包括数据段,也包括语言段。

(3)、有效载荷
分语言有效载荷、数据有效载荷。

6、蓝牙的逻辑信道
链路控制信道:LinkControl  LC
链路管理信道:Link Manage LM
用户异步数据信道:User AsynchronizationUA
用户同步数据信道:UserSynchronization US
用户等时数据信道:UserIsochronous UI  UI
7、蓝牙的收发规则


上图为RX缓存。

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveHViaW4zNDE3MTk=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" />

上图为TX缓存。
新分组到达时,ACL链路的RX缓存器要流量控制,SCO数据不须要流量控制;
8、蓝牙基带信道和网络控制
1)、链路控制器状态:
待机、连接
寻呼page、寻呼扫描pagescan、查询inquiry、查询扫描inquiry scan、主设备对应Master Response、从设备对应Slave Response、查询对应inquiry response
2) 、连接状态
激活模式active、呼吸模式sniff、保持模式hold、休眠模式park。
3)、待机状态
         待机状态是蓝牙设备缺省低功耗状态。此状态下本地时钟以低精度执行。

蓝牙从待机转入寻呼扫描状态。对其它寻呼进行响应成为从设备;也能够从待机状态进入查询扫描状态。完毕一个完整的寻呼,成为主设备
9、接入过程
凝视:
IAC Inquiry AccessCode 查询接入码。
GIAC:通用查询接入码 DIAC:专用查询接入码;
DAC:DeviceAccess Code 设备接入码;
LAP:
         建立连接,必须使用查询、寻呼;查询过程使用IAC,发现覆盖区域内的设备、设备的地址及其时钟。连接过程使用DAC。建立连接的设备处理寻呼过程。成为主设备。、(1)、查询过程
蓝牙设备通过查询来发现通信范围内的其它蓝牙设备。查询信息分为GIAC、DIAC两种。查询发起设备收集全部对应设备的地址、时钟信息。

一设备进入查询状态去发现其它设备。查询状态下连续不断的在不同频点发送查询消息。查询的跳频序列有GIAC的LAP导出。

一设备想被其它设备发现,就要周期性进入 查询扫描状态,以便对应查询消息。如:我们选择设备多长时间可见,事实上就是  进入查询扫描状态。

A、查询扫描
查询扫描状态下,接收设备扫描接入码的时间长度,足以完毕对16个频率的扫描。

扫描区间长度Twindow inquiry scan。

扫描在同一个频率上进行,查询过程用32跳专用查询跳频序列,此序列有通用查询的地址决定,相位有本地时钟决定,每隔1.28S变化一次。
B、查询
与寻呼相似,TX用查询跳频序列、RX用查询对应跳频序列。
C、查询对应
从设备响应查询操作。

每一个设备都有自己的时钟,使用查询序列相位同样的几率比較小。

为了避免多个设备在同一查询跳频信道同一时候激活,从设备查询响应规定:从设备收到查询消息,产生0-1023仅仅认为额一个随机数,锁定当时相位输入值进行跳频选择。从设备此后的RAND时隙中返回到连接或者待机状态。
(2)、寻呼扫描
DAC:DeviceAccess Code 设备接入码
寻呼扫描状态下的设备扫描窗体Twindowpage scan内监听自己的DAC。监听仅仅在一个跳频点进行。Twindow page scan足够覆盖16个寻呼扫描频点。
寻呼扫描状态。扫描在同一个频率上进行,持续1.28S,在选择还有一个不同频率。

SR模式


Tpage scan


寻呼次数Npage


R0


连续


>=1


R1


<=1.28S


>=128


R2


<=2.56S


>=256


预留


--


--

(3)、寻呼
主设备使用寻呼发起一个主—从设备连接。通过在不同的跳频点上反复发送从设备DAC来扑捉从设备,从设备在寻呼扫描状态被唤醒,接收寻呼。

(4)、寻呼对应过程
三、链路管理器


如上图红色部分。负责完毕设备:功率管理、链路质量管理、链路控制管理、数据分组管理、链路安全管理。

1、链路管理协议数据单元
         蓝牙链路管理器接收到高层的控制信息后,不是向自身的基带部分分发控制信息,就是与还有一台设备的链路管理器进行协商管理。

这些控制信息封装在链路管理协议数据单元LMP_PDU中,由ACL分组的有效载荷携带。
2、链路管理器协议规范
(1)、设备功率管理
         RSSI保持模式、呼吸模式、休眠模式。

(2)、链路质量管理 QoSQuality of Service
A、ACL链路。
B、SCO链路。

(3)、链路控制管理
设备寻呼模式、设备角色转换、时钟计时设置、信息交换:版本号信息、支持特性、设备名称。建立连接、链路释放。
(4)、分组管理

版权声明:本文博客原创文章,博客,未经同意,不得转载。

时间: 2024-08-24 23:17:29

蓝牙核心技术概述(三): 蓝牙协议规范(无线电频率、基带链路控制、领汇管理)的相关文章

蓝牙核心技术概述(三): 蓝牙协议规范(射频、基带链路控制、链路管理)

关键词:蓝牙核心技术协议射频基带链路控制链路管理作者:xubin341719(欢迎转载,请注明作者,请尊重版权,谢谢!)欢迎指正错误,共同学习.共同进步!!下载链接:Bluetooth PROFILE SPECIFICATIONS (基本涵盖所有蓝牙协议).buletooth core 2.1-4.0 SPECIFICATION(三蓝牙版本的核心协议v2.1\v3.0\v4.0).蓝牙核心技术与应用 马建仓 版(蓝牙协议相关初学者必读,开发者参考) 蓝牙核心技术概述(一):蓝牙概述蓝牙核心技术概

蓝牙核心技术概述(四):蓝牙协议规范(HCI、L2CAP、SDP、RFOCMM)

关键词:蓝牙核心技术协议  HCI  L2CAP SDP RFCOMM 作者:xubin341719(欢迎转载,请注明作者,请尊重版权,谢谢!)欢迎指正错误,共同学习.共同进步!!下载链接:Bluetooth PROFILE SPECIFICATIONS (基本涵盖所有蓝牙协议).buletooth core 2.1-4.0 SPECIFICATION(三蓝牙版本的核心协议v2.1\v3.0\v4.0).蓝牙核心技术与应用 马建仓 版(蓝牙协议相关初学者必读,开发者参考) 蓝牙核心技术概述(一)

蓝牙核心技术概述(五):蓝牙协议规范(irOBEX、BNEP、AVDTP、AVCTP)

关键词:蓝牙核心技术协议  irDA BNEP  AVDTP AVCTP 作者:xubin341719(欢迎转载,请注明作者,请尊重版权,谢谢!)欢迎指正错误,共同学习.共同进步!! 下载链接:Bluetooth PROFILE SPECIFICATIONS (基本涵盖所有蓝牙协议).buletooth core 2.1-4.0 SPECIFICATION(三蓝牙版本的核心协议v2.1\v3.0\v4.0).蓝牙核心技术与应用 马建仓 版(蓝牙协议相关初学者必读,开发者参考) 蓝牙核心技术概述(

蓝牙核心技术概述(一):蓝牙概述

蓝牙核心技术概述(一):蓝牙概述 标签: 蓝牙bluetoothsig 2014-07-26 16:01 6143人阅读 评论(3) 收藏 举报  分类: 协议(14)  版权声明:本文为博主原创文章,未经博主允许不得转载. 关键词:蓝牙 核心技术 协议 版本 历史作者:xubin341719(欢迎转载,请注明作者,请尊重版权,谢谢)欢迎指正错误,共同学习.共同进步!!下载连接:Bluetooth PROFILE SPECIFICATIONS (基本涵盖所有蓝牙协议).buletooth cor

蓝牙核心技术概述

转:http://blog.csdn.net/xubin341719/article/details/38305331 关键词:蓝牙核心技术协议  HCI  L2CAP SDP RFCOMM 作者:xubin341719(欢迎转载,请注明作者,请尊重版权,谢谢!)欢迎指正错误,共同学习.共同进步!!下载链接:Bluetooth PROFILE SPECIFICATIONS (基本涵盖所有蓝牙协议).buletooth core 2.1-4.0 SPECIFICATION(三蓝牙版本的核心协议v2

蓝牙核心技术概述(二):蓝牙使用场景

关键词:蓝牙核心技术协议  A2DP AVDTP  HF HCP BIP BPP----作者:xubin341719(欢迎转载,请注明作者,请尊重版权,谢谢!)欢迎指正错误,共同学习.共同进步!!下载链接:Bluetooth PROFILE SPECIFICATIONS (基本涵盖所有蓝牙协议).buletooth core 2.1-4.0 SPECIFICATION(三蓝牙版本的核心协议v2.1\v3.0\v4.0).蓝牙核心技术与应用 马建仓 版(蓝牙协议相关初学者必读,开发者参考) 蓝牙应

蓝牙技术概述

蓝牙 1  概述 蓝牙(Bluetooth)是一种短距离的无线通讯技术,最初是研究在移动电话和其它配件间进行低功耗.低成本无线通信连接的方法.发明者希望为设备间的通讯创造一组统一的标准化协议,以解决用户间互不兼容的移动电子设备的互连互通,这些设备之间省去了传统的电线.透过芯片上的无线接收器,配有蓝牙技术的电子设备能够在短距离内彼此相通,传输速度可以达到每秒钟1Mbps.和当时流行的红外线技术相比,蓝牙有着更高的传输速度,而且不需要像红外线那样进行接口对接口的连接,所有蓝牙设备基本上只要在有效通讯

android -- 蓝牙 bluetooth (三)搜索蓝牙

接上篇打开蓝牙继续,来一起看下蓝牙搜索的流程,触发蓝牙搜索的条件形式上有两种,一是在蓝牙设置界面开启蓝牙会直接开始搜索,另一个是先打开蓝牙开关在进入蓝牙设置界面也会触发搜索,也可能还有其它触发方式,但最后都要来到BluetoothSettngs.java的startScanning(),我们分析的起点也从这里开始,起步代码如下 [cpp] view plaincopy private void updateContent(int bluetoothState, boolean scanState

最全最详细的蓝牙版本介绍包含蓝牙4.0和4.1

概述:蓝牙核心规范发展的主要版本: 表1  蓝牙核心规范发展介绍 版本 规范发布 增强功能 0.7 1998.10.19 Baseband.LMP 0.8 1999.1.21 HCI.L2CAP.RFCOMM 0.9 1999.4.30 OBEX与IrDA的互通性 1.0 Draft 1999.7.5 SDP.TCS 1.0 A 1999.7.26 第一个正式版本 1.0 B 2000.10.1 安全性,厂商设备之间连接兼容性 1.1 2001.2.22 IEEE 802.15.1 1.2 20