分享BLE的连接参数及其设置要点
1、连接参数
连接参数有Connection interval,Slave latency,Supervisor timeout这三个
Connection interval----1.25ms为单位,取值范围6~3200【即7.5ms~4s】
PS:不同系统及版本的手机对连接参数的要求不同,在连接的时候需要注意
Slave latency----0~499, 同时有效连接间隔<=16s
Supervisor time out----10ms为单位,取值范围10~3200【即100ms~32s】
需满足以下公式:Supervision Timeout > (1 +slaveLatency)* (connectionInterval)
有效连接间隔公式: Effective Connection Interval = (Connection Interval) × (1 + [Slave Latency])
2、广播间隔
蓝牙的广播间隔,单位625us,范围在“20ms ~ 10.24s”之间。
根据蓝牙协议规定,对于不可连接的广播,比如Broadcaster,间隔不能小于100mS,对于可连接的广播, 比如Peripheral,间隔不能小于20mS。
3、参数设置及更新
Connection interval有最大最小值范围,目的是为了能让主机自由选择一个它认为合适的值,可以把min和max设置成相同值,以设置主机固定在该Connection interval。 设置为范围的好处是,主机有更多的自主性,可以根据具体的需求选择连接间隔。比如说有很多数据需要传输时,主机会选择较小的连接间隔,以快速传递数据;如果比较空闲,则会选择较大的连接间隔,以节省功耗。
连接参数是由主机端确定,但是从机端可以发起更新连接参数请求。在建立连接之后,从机可以要求主机更新连接参数,即只要连接建立了,随时可以再次更新连接参数。 |