BLE-3の蓝牙4.0协议栈のLL层 Scaning 和 initiating状态的区别

PDU类型

BLE-3の蓝牙4.0协议栈のLL层 Scaning 和 initiating状态的区别

3.4 Scanning状态

3.4.1 scanWindow和scanInterval

Scanning状态扫描、接收广播数据的状态,该状态的扫描行为是由scanWindow和scanInterval两个参数觉得的。scanWindow指示一次扫描的时间(即可以理解为RF RX打开的时间),scanInterval指示两次扫描之间的间隔。如果这两个参数的值相同,表示连续不停地扫描。

BLE协议规定,scanWindow和scanInterval最大不能超过10.24s,并且scanWindow不能大于scanInterval。

3.4.2 Passive Scanning和Active Scanning

Passive Scanning之所以称作消极的(Passive),是因为这种扫描模式下,BLE设备只听不问,也就是说,只接收ADV_DIRECT_IND、ADV_IND、ADV_SCAN_IND、ADV_NONCONN_IND等类型的PDU,并不发送SCAN_REQ。

而Active Scanning,不只认真听讲,还勤于发问(SCAN_REQ),并接收后续的 SCAN_RSP。

这两种Scanning的最终结果,就是把接收到的数据(包括Advertiser地址、Advertiser数据等),反馈给Host。
Initiating状态

3.5 Initiating状态

Initiating状态和Scanning状态类似,只不过它的关注点不一样:它不关心广播数据,只关心ADV_DIRECT_INDADV_IND两类消息,并在符合条件的时候,发出CONNECT_REQ,请求建立连接。

转载:
蜗窝科技,www.wowotech.net
蓝牙协议分析(5)_BLE广播通信相关的技术分析