Initiating a Connection
2016-03-15 09:13:37 0 举报
BLE4.2 发起一个连接
作者其他创作
大纲/内容
地址是否是RPA?
是
解析成功?
丢弃接收到的广播包,继续接收广播包。
根据接收数据包中的IRK获取本地的IRK,并构建LL_CONN_REQ数据包。
之前发送的广播包是ADV_DIRECT_IND?
该设备的状态由Advertising State进入到Connection State,并且进入到Connection Created阶段。实际连接的确立需要进行一次有效的帧收发。
广播包为ADV_DIRECT_IND?
是否接收到LL_CONN_REQ数据包?
查看IRK是否在解析列表中,并解析地址。
否
建立连接过程结束
广播包类型为ADV_SCANNING_IND或ADV_NOCONNECT_IND?
LL_CONN_REQ中的InitA和之前发送的ADV_DIRECT_IND中的InitA是否匹配?
发送广播包,ADV_IND或者ADV_DIRECT_IND
Initiator设备的流程
开始
是否通过地址过滤?
是否接收到广播包?
InitA地址是否匹配本地地址?
发起一个连接
Advertising设备的流程
丢弃接收到的LL_CONN_REQ数据包,并继续广播。
该设备的状态由Initiating State进入到Connection State,并且进入到Connection Created阶段。实际连接的确立需要进行一次有效的帧收发。
收藏
收藏
0 条评论
下一页