Texas Instruments CC2540/41
Bluetooth® Low Energy
Software Developer’s Guide
v1.3.2
Document Number:SWRU271F
《低功耗蓝牙开发权威指南》
Robin Heydon著,陈灿峰、刘嘉 译
机械工业出版社
2014.6
TI_BLE软件开发笔记9-通用访问规范
标签:读书笔记 BLE
通用访问规范(GAP)定义了设备如何彼此发现、建立连接以及如何实现绑定,同时描述了设备如何成为广播者和观察者,以及实现无需连接的数据传输,还定义了如何用不同类型的地址来实现隐私性和可解析性。
1 背景
1.1 初次发现
为了发现一个设备,必须扫描有哪些正在广播的设备。多个广播设备向多个扫描设备发送数据包,构成一个多对多的拓扑结构。
发现性包含两种类型:有限可发现性和一般可发现性。
通过特定的过滤规则,获得设备列表。
1.2 建立初始连接
一旦得到设备列表,并选中了其中的某些设备,下一步便是与该设备建立初始连接,即向广播报文提供的地址发起一个连接。如果设备建立了连接,可以穷举对端设备的所有服务和特性或只查找部分服务及其特性。
服务发现最终将获得一个服务列表,包含对端设备公开的各种服务。客户端便可以使用这些服务。在应用商店模型中,由应用来完成接下来的特性发现和配置工作。特性发现与服务发现类似,设备可以枚举某一服务的所有特性,或者直接使用一些服务必须公开的公知特性。
1.3 服务特性
为了实现设备间高效的数据传输,应使用通知和指示。如果客户端希望收到关于某特性的通知或指示,必须在客户端的特性配置描述符中写入信息,通过其启用所需的功能。于是,服务器设备在必要的时候将发送相应的通知或指示。
1.4 长期关系
设备之间相关联俗称“绑定”。要完成绑定,需要将两个设备设置为可绑定。当其中一个设备打算进行绑定时,两个设备交换输入输出能力,选择一个认证算法,彼此身份验证,产生用于加密链路的STK(短期密钥)。链路加密完成后,进行共享机密的交换,用于与之前连结果的设备执行重连。
1.5 重连
1.6 私有地址
私有地址是指周期性变化的设备地址。
2 GAP角色
BLE设备定义了四类GAP角色:
- 广播者
- 观察者
- 外围设备
- 中央设备
广播者是发送广播报文的设备,通常广播一些服务数据给处于观察者角色的设备。必须有发射装置,但不一定有接收装置。
观察者是扫描广播者并将信息报告给应用的设备。必须有接收装置,但不一定有发射装置。
外围设备是利用可连接广播报文进行广播的设备。一旦连接将成为从设备,外围设备必须同时拥有发射和接收装置。
中央设备是向外围设备发起连接的设备。一旦连接将成为主设备,中央设备必须同时拥有发射和接收装置。
一个设备可以同时支持多个GAP角色,比如既可以是广播者,又可以同时为外围设备。
3 模式和规程
在GAP内部用模式(mode)和规程(procedure)来描述设备的行为。
当一个设备被配置为按照某种方式操作一段较长的时间时,称为模式。当一个设备被配置为在某一段有限的时间内执行某种特定的操作时,称为规程。 <