低功耗蓝牙 BLE 之连接事件、连接参数和更新方法
连接事件
在一个连接当中,主设备会在每个连接事件里向从设备发送数据包。一个连接事件是指主
设备和从设备之间相互发送数据包的过程。连接事件的进行始终位于一个频率,每个数据
包会在上个数据包发完之后等待 150μs 再发送。
连接间隔决定了主设备与从设备的交互间隔;它是指两个连续的连接事件开始处的时间距
离,可以是 7.5ms ~ 4s 内的任意值,但必须为 1.25ms 的整数倍。要确定从设备与主设备
的实际交互间隔,需要用到从设备延迟这一参数,代表从设备在必须侦听之前可以忽略多
少个连接事件。
如下图所示,连接事件被一个个的连接间隔分开。从主设备发送数据包开始,每个连接事
件可以持续进行,直至主设备或从设备停止响应。在连接事件之外,主从设备之间不发送
任何数据包。
举个例子,如果连接间隔为 100ms,从设备延迟是 9,那么从设备可以忽略 9 个链接事
件,但不得不侦听第 10 个连接事件。换言之,从设备必须每秒侦听一次,而此时监控超
时的最小值应为 1010ms。反过来,另一个极端的例子是,如果监控超时使用了 32s 的最
大值,对于间隔为 100ms 的链路,从设备延时必须小于等于 319。
虽然如此,如果将从设备延迟设为可行的最大值,在监控超时发生前从设备只能获得唯一
一次侦听主设备的机会,这可不是一个好主意。因此,建议至少给从设备留出 6 次侦听的
机会。在前面的例子中,如果连接间隔为 100ms ,从设备延迟为 9,那么监控超时应该至
少为 6s,这样一来,链路在最终断开前从设备至少会有 6 次侦听的机会。
评论1
最新资源