搜索
查看: 1174|回复: 2

低功耗蓝牙协议栈简介

[复制链接]

250

主题

371

帖子

1054

积分

金牌会员

Rank: 6Rank: 6

积分
1054
发表于 2017-9-13 11:18:19 | 显示全部楼层 |阅读模式
低功耗蓝牙协议栈包含两部分共8层:主机(Host)和控制器(Controller)。

控制器部分包括:

物理层(Physical Layer)
链路层(Link Layer)
主机控制接口层(Host Controller Interface)
从应用层到物理层一共包含8层.png

主机部分包括:

L2CAP 逻辑链路控制及自适应协议层(Logical Link Control and Adaptation Protocol)
安全管理层(Security Manager)
ATT 属性协议层(Attribute Protocol)
GAP 通用访问配置文件层(Generic Access Profile)
GATT 通用属性配置文件层(Generic Attribute Profile)
从应用层到物理层一共包含8层,如下图所示。对于开发者而言,不需要对每一层的具体实现都有深入的了解。只需要掌握与应用紧密相关的 GAP/GATT 层即可满足大部分开发的需求,通过 SoftDevice(即协议栈,这种方式使得协议栈和用户应用可以单独编译和链接)的 API 软件接口(以 sd_ 开头)调用来实现。

从应用层到物理层一共包含8层

1、物理层(Physical Layer)

对于低功耗蓝牙,其物理层工作于 2.4GHz 全球通用的免许可证频段(2400MHz~2483.5MHz),共使用 40 个频道,频道间隔为 2MHz,而经典蓝牙使用 79 个频道,1MHz 间隔。低功耗蓝牙有两种频道类型:广播频道 3 个,数据频道 37 个,共 40 个频道。


低功耗蓝牙广播频道为 2402 MHz(37),2426 MHz(38),2480 MHz(39),你没看错!就是2402 MHz(37),2426 MHz(38),2480 MHz(39)。3 个广播频道刚好与 WiFi 无线局域网的信道错开,用于设备发现和建立连接。相比之下,经典蓝牙技术需要使用 32 个广播频道来完成相同的任务。正因如此,低功耗蓝牙可以大幅减少在空中的使用时间,从而降低功耗。


由于使用 3 个广播频道,低功耗蓝牙只需 0.6 到 1.2ms 的“开启”时间来扫描其他设备。而经典蓝牙需要 22.5ms 扫描其 32 个频道。低功耗蓝牙的这个机制对降低功耗有显著效果(比经典蓝牙减少 10 到 20 倍的功耗)。

由于蓝牙和 WiFi 都工作在 2.4GHz 频段,在同一使用环境下可能产生相互的影响,为此低功耗蓝牙做了系统共容性的考虑。低功耗蓝牙频道表设计时尽量避开 WiFi 的工作频道,低功耗蓝牙的所有 3 个广播频道均在 WiFi 频道表之外,除了重叠的数据频道部分,仍有 9 个数据频道在 WiFi 频道之外,确保了低功耗蓝牙系统的可靠性及与 WiFi 系统的共容性,增强了应用时的抗干扰能力。

低功耗蓝牙规范中所定义的最大发射功率为 +10 dBm(10mW),最小发射功率为 -20 dBm(0.01mW)。接收机灵敏度要求优于 -70 dBm(当误码率 BER 为 0.1% 时)。

显而易见,蓝牙的通信距离与发射功率和接收灵敏度有关。

当发射功率为 0 dBm,接收机灵敏度为 -70 dBm,通信距离约为 30米。
当发射功率为 +10 dBm,接收机灵敏度为 -90 dBm,通信距离约为 100米。
此外,通信距离往往还与天线、方向以及周围环境等诸多因素有关。

2、链路层(Link Layer)

链路层用于控制射频设备的工作状态,包括 5 种可能的工作状态:待机、广播、扫描、启动和连接。
当扫描者监听广播者时,广播者发送数据而不需要建立连接。
如果一个设备以一个连接请求来响应一个广播者,该设备称为发起者。
如果广播者接受该请求,则广播者和发起者将进入连接状态。
当一个设备位于连接状态时,它将连接到两个角色之一(主机或者从机)。发起连接的设备成为主机,接受连接请求的设备成为从机。

3、主机控制接口(Host Controller Interface)

HCI 层为主机和控制器之间的通信提供了一种标准化的接口,其主要完成两个任务:① 发送命令给控制器和接收来自控制器的事件;② 发送和接收来自对端设备的数据。

4、L2CAP 逻辑链路控制及自适应协议层

L2CAP 逻辑链路控制及自适应协议层(Logical Link Control and Adaptation Protocol)为更高层提供数据封装服务,允许逻辑的端到端数据通信。

5、安全管理层(Security Manager)

SM 层定义了配对和密钥分发的方法,并为其他堆栈层的安全连接以及与另一个设备交换数据提供功能。

6、ATT 属性协议层(Attribute Protocol)

ATT 属性协议用于所有低功耗蓝牙的数据传输,具有快速、简单的特点,其采用了客户端(Client)/ 服务器(Server)架构。

7、GAP 通用访问配置文件层(Generic Access Profile)

低功耗蓝牙协议栈的 GAP 层与应用 / Profile 直接连接,负责处理设备的接入方式和过程,包括设备发现、链路建立、链路终止、启动安全功能以及设备配置。

8、GATT 通用属性配置文件层(Generic Attribute Profile)

GATT 层是一个服务框架,定义使用 ATT 的子过程。GATT 规定了配置文件 Profile 的结构。在低功耗蓝牙中,所有的数据块由一个 Profile 或服务所使用的数据库称为特性(characteristic)。

回复

使用道具 举报

2

主题

521

帖子

2212

积分

金牌会员

Rank: 6Rank: 6

积分
2212
发表于 2017-9-13 19:46:50 | 显示全部楼层
好文章
回复 支持 反对

使用道具 举报

0

主题

156

帖子

232

积分

中级会员

Rank: 3Rank: 3

积分
232
发表于 2019-8-20 12:38:06 | 显示全部楼层
专业销售回收各种蓝牙测试仪,信号源,网络分析仪,频谱仪,示波器,电源,万用表等各种仪器仪表包括E5071C/B,CMW500,E4438C,MT8852A/B,MT8850A,IQXEL80,N9020A,n4010a等等,联系电话18948781506,微信同手机号
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /2 下一条

Archiver|手机版|小黑屋|RF技术社区

GMT+8, 2024-4-26 19:34 , Processed in 0.075467 second(s), 8 queries , MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

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