蓝牙gap协议

网友投稿 1174 2022-11-09

蓝牙gap协议

蓝牙gap协议

**

数据报文 **

(从 payload 里面的 advdata 开始才是 gap 层定义的,之前都是 ll 层定义的)

pdu type 传输的数据类型

0 普通广播数据

1定向广播数据 (数据传到某个指定设备)

2 不可连接的广播数据payload 格式分析

adva表示广播者的地址

advdata 广播者数据

表示 data 里面的 data type

0 有限发现模式

1 通用发现模式

从上表,物理层表格可以看出

广播者 必须要有发送属性(可以理解为有发送器)

观察者必须要有接收属性 (可以理解为有接收器)

中心设备跟外围设备都要有 发送属性跟接收属性

广播事件 Non-connectable and non-scannable undirected event 不可链接的,不可扫描的,无向事件规程 observation procedure 有2个方法 1 主动扫描: 观察者先通知广播者,再扫描广播者 2 被动扫描: 观察者只是扫描广播者

模式和规程

分为

1 不可发现模式

2 限制可发现模式

3 普通可发现模式

Connection modes and procedures 连接模式和规程

Non-Connectable Mode 不可连接模式Directed Connectable Mode 定向连接模式, 如果希望快速连接中央设备,外围设备可以使用该模式。 在该模式下,它发出ADV_DIRECT_ADV广播报文,直接发给指定的中央设备。 所以,该外围设备应该曾经与该中央设备建立过连接。 ADV_DIRECT_ADV广播报文的发送频率很快,该模式最多持续1.28S,之后控制器自动停止广播。Undirected Connectable Mode 无向连接模式。 如果一个外围设备无需快速建立连接,或者打算尽可能地省电,则可以使用该模式。 它发出ADV_IND广播报文。Auto Connection Establishment Procedure 自动连接建立规程。 中央设备使用该规程来设置控制器,从而向一个或多个外围设备,自动地建立连接。Host需要事先把想要连接的设备,写入“白名单”中。 它有个缺点:对所有的设备,都只能使用一套基本连接参数。General Connection Establishment Procedure 一般连接建立规程。 这是我们常用的规程,先扫描出设备,选中某一个,然后使用“直接连接建立规程”去连接它。Selective Connection Establishment Procedure 选择性连接建立规程。 Host先把想连接的设备放入Controller的“白名单”。正在广播的设备,只有在白名单上的才会被提交给Host。 Host决定是否连接该设备,并使用不同的参数去连接它。相比于“自动连接建立规程”,“选择性连接建立规程”可以使用不同的参数连接每一个设备。Direct Connection Establishment Procedure 定向连接建立规程,直接去连接指定的设备。Connection Parameter Update Procedure 连接参数更新规程。Terminate Connection Procedure 终止连接规程。 中央设备或外围设备都可以执行该规程,通过LL层向对方发出LL_TERMINATE_IND PDU就可以。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Jvm: synchronized锁定谁?
下一篇:ROS2机器人笔记220805-重要备忘录-
相关文章

 发表评论

暂时没有评论,来抢沙发吧~