低功耗蓝牙BLE的知识点记录

发布时间 2023-07-22 14:19:56作者: 面筋玄师

 低功耗蓝牙协议的各层可以用上图表示

其中最重要的是GATT 和 GAP。

 

两个重要角色:profile 和 protocol

Profile : 确保蓝牙装置应用的互通性,由SIG 蓝牙技术联盟定义的规范

Protocol : 针对传输的封包格式、绕行路径、多工机制、编码解码、设备协定层之间横向的资料传输

 

低功耗蓝牙主要两个运作状态:广播和连接

广播的时候,一个advertiser对应多个scanner,通过广播封包,单向传输数据,不一定建立连接;连接状态时,一个server对应一个client,数据可以双向传输

 

GAP和GATT的角色:

 

GAP(Generic Access Profile),定义的是Scanner和advertiser的角色

  负责连线相关的服务,如设备搜寻,连线的建立以及管理

GATT(Generic Attribute Profile)定义的是Server 和 Client 的角色

  负责规范低功耗蓝牙设备之间的资料的交换,需要定义交换的程序和资料的格式,提供以下的服务

 

 

而GATT 中的service 和 characterisic 由 ATT定义,GATT实际就是把ATT的各种资料格式组合起来便于使用。

 

 所有存放在server的资料都称为attribute

”Attribute Type “中16 位的都是官方规范,128 位的可自行定义,也称UUID