1. 蓝牙应用的领域

2. 发展史

蓝牙技术联盟成立于1998年,非盈利行业协会,负责发展Bluetooth蓝牙技术

 

2.1 蓝牙1.x版本

1999年发布1.0版本

  服务发现SDP,电话控制TCS

2001年发布1.1版本

  物理层PHY和媒体访问控制MAC规范

  传输速率0.7Mbps

2003年发布1.2版本

  屏蔽硬件地址

 适应性调频(AFH)

 扩展同步数据连接(eSCO)

  快速连接

 

蓝牙2.x版本

2004年发布2.0版本

EDR:扩展数据率 3Mbps

多任务多设备同时运行双工模式

2007年发布2.1版本

省电功能发送间隔延长

 SSP:安全简单配对

 

蓝牙3.x版本

2009年发布3.0版本

AMP:交替射频技术

Hight Speed 传输速率24Mbps

EPC: 增强电源控制降低空闲功耗

UCD: 单向广播无连接数据技术,提高响应能力

 

蓝牙4.x版本

2010年发布4.0版本

BLE:低功耗 响应快 安全加密

出现低功耗分为双模和单模

2013年发布4.1版本

支持云同步

设备互联(不通过pc,手机)

2014年发布4.2版本

传输速度和隐私保护提升

支持IPv6的低功耗无线个域网

 

蓝牙5.x版本

2016年发布5.0版本

BLE:更快更远 速度上限2Mbps

理论距离300米 包容量是4.2的8倍

2018年发布5.1版本

 AoA到达角和AoD发射角定位

2020年发布5.2版本

低功耗音频

更快更稳定抗干扰性好

2021年发布5.3版本

删除AMP

增加广播类型和广播信道已经长度

3. 蓝牙协议

3.1 蓝牙协议栈结构

 

3.2 蓝牙控制器

PHY物理层:负责在物理信道上收发蓝牙数据包

LC链路控制:根据当前物理通道,逻辑通道以及逻辑传输的参数将数据有效载荷组装成蓝牙包,实现流控,应答,重传等机制

 

BRM基带资源管理器:管理射频资源

DM设备管理:控制蓝牙设备的通用行为:

搜索和连接到其他的蓝牙设备

控制本地的蓝牙设备的连接发现模式(可连接,可发现)

控制本地的蓝牙设备属性(例如本地蓝牙设备的名字,连接秘钥等)

LM链路管理:负责创建,修改,释放蓝牙逻辑连接,维护蓝牙设备之间物理连接的参数。它的功能主要是通过链路管理协议(LMP)和链路层协议(LL)完成。

 

HCI主机接口控制: 控制器和主机之间的桥。它们之间通过HCI接口以HCI协议进行通信。支持硬件通讯协议有USB,UART,SDIO。

 

 

3.3 蓝牙主机

 

蓝牙主机是软件实现,运行在cpu上

L2CAP逻辑链路管理与适配:

通道管理:负责创建,管理,释放通道

资源管理器:负责统一管理,调度通道上传递的PDU(分组数据单元),来提高服务质量(QoS)对HCI层进行传输流控制,重传等机制。

SDP服务发现:

点对点的协议,发现其他蓝牙设备提供的profile以及profile特性

对自己感兴趣的蓝牙profile发起连接动作

 

SMP安全管理;

点对点的协议

仅在BLE控制器下有

基于专用的L2CAP通道

用于生成加密和识别用的秘钥

而它的上一层就是GAP层

 

ATT属性:

属性句柄(属性表下标索引),属性类型(由UUID定义),属性值以及访问权限组成。

ATT其实就相当于设备的数据库。

 

GATT通用属性:

专用的L2CAP通道:

定义了两个角色:服务器(GATTS)和客户端(GATTC)

独立于GAP角色。服务器提供数据,客户端访问数据。

在应用中,外围设备称为服务器,中央设备作为客户端。注意:一个设备可以同时作为服务端和客户端。交换配置,发现对方设备上的服务和特性读写特征值,特征值的通知和指示。

 

GAP:通用访问功能,包括设备发现,连接模式,安全性,身份验证,关联模型和服务发现

 

 

 

 

Logo

社区规范:仅讨论OpenHarmony相关问题。

更多推荐