打开主菜单

谷雨文档中心 β

更改

BLE技术揭秘

添加3,169字节2019年10月31日 (四) 22:58
协议栈结构
*# 等待相关事件,及事件处理,例如扫描事件,从机的Notify事件等等。
== GAP和GATT ==
蓝牙协议栈分为两类结构:控制器(Controller)和主机(Host)。每个类别都有子类别,这些子类别执行特定的角色。我们将要研究的两个子类别是  通用访问配置文件  (GAP)和  通用属性配置文件  (GATT)。
* GAP是Generic Access Profile的缩写,中文含义是:通用访问配置文件。
* GATT是Generic Attribute Profile的缩写,中文含义是:通用属性配置文件。
 
=== GAP和GATT有何不同 ===
区分GAP和GATT很重要。
* GAP  定义了 BLE网络堆栈的一般拓扑。
* GATT  详细描述了一旦设备建立连接后如何传输属性(数据)。
GATT特别关注如何根据其描述的规则格式化打包和发送数据。在BLE网络堆栈中,属性协议(ATT)与GATT紧密对齐,GATT直接位于ATT的顶部。GATT实际上使用ATT来描述如何从两个连接的设备交换数据。
 
=== 通用访问配置文件(GAP) ===
BLE设备可以使用两种机制与外界通信:广播或连接。这些机制受通用访问配置文件(GAP)准则的约束。GAP定义了启用BLE的设备如何使其自身可用,以及两个设备如何直接相互通信。
 
==== 建立联系(Connecting) ====
设备可以通过采用GAP中指定的以下角色来加入BLE网络:
 
A、广播('''Broadcasting'''):这些角色不必显式地相互连接即可传输数据。
* 广播者('''Broadcaster'''):广播公共数据包的设备,例如可以广播按下按钮的时间。
* 观察者('''Observer'''):侦听广播者发送的广告包中数据的设备。广播者和观察者之间没有任何连接。/2、/2
B、连接('''Connecting'''):这些角色必须显式连接和握手才能传输数据。这些角色比广播角色更常用。
* 从机设备('''Peripheral'''):  通过广播,告知其他设备自己的存在,以便主机设备可以建立连接。连接后,从机设备不再向其他主机设备广播数据,而是保持与主机设备的连接。
** 从机设备功耗低,因为它们只需要定期发送信标即可。主机设备负责开始与从机设备的通信。
** 手环是BLE外设的一个示例。
 
* 主机设备('''Central'''):一种通过侦听广播包来启动与从机设备的连接的设备。主机设备可以连接到许多其他从机设备。
** 当主机设备要连接时,它将请求连接数据包发送到从机设备。如果从机设备接受来自主机设备的请求,则建立连接。
** 当您的手机连接到手环时,就是BLE Central设备的一个示例。
 
==== 连接后(Connected) ====
主机设备可以更新连接参数:  主机设备通常在设备与其自身之间建立连接参数。只有主机设备能修改连接参数。但是,从机设备可以要求主机设备更改连接参数,及从机发送更新参数请求。
 
从机设备或主机设备可以终止连接:连接可能由于多种原因而终止,例如设备的电池可能耗尽或网络干扰可能导致连接失败。设备还可以主动与对等设备断开连接。
 
=== 通用属性配置文件(GATT) ===
__强显目录__
[[分类:BLE]]
[[分类:技术手册]]
2,367
个编辑