当前位置:网站首页>蓝牙gap协议
蓝牙gap协议
2022-08-05 06:11:00 【aningxiaoxixi】
**
数据报文 **
(从 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就可以。
边栏推荐
猜你喜欢
随机推荐
(JLK105D)中山爆款LED恒流电源芯片方案
《PyTorch深度学习实践》第十一课(卷积神经网络CNN高级版)
盒子模型中过度约束问题及其解决办法
17-VMware Horizon 2203 virtual desktop-Win10 manual desktop pool floating (seventeen)
(四)旋转物体检测数据roLabelImg转DOTA格式
Linux中安装Redis教程
D45_Camera assembly Camera
格式化代码缩进的小技巧
《PyTorch深度学习实践》第十课(卷积神经网络CNN)
Matplotlib plotting notes
360度反馈调查表中的问题示范
scikit-image image processing notes
Technical Analysis Patterns (11) How to Trade Head and Shoulders Patterns
七夕!专属于程序员的浪漫表白
lingo入门——河北省第三届研究生建模竞赛B题
在STM32中使用printf函数
MySQL:JDBC编程
开源中国活动合作说明书
超简单的白鹭egret项目添加图片详细教程
关于Antd的Affix突然不好用了,或者Window的scroll监听不好用了









