BLE上篇

最近帮朝歌看了一下连接问题,实际说一下BLE的连接

我们都知道BLE是发空包保持连接的,和Mesh不一样,发的广播是connectable 的广播包,就是可以连接的

搞BLE的话,调试比较常用nrf connect

会看到发现了很多设备

为什么,因为你下拉扫描的时候,nrf connect会找到广播包,然后发scan req 收到scan response 就显示设备

兄弟,就是要找到在哪个通道上

设备广播的时候会 37 38 39通道 去广播,然后有广播间隔 广播时延   广播间隔小的话自然被更容易发现

,还有一个是scan,scan有interval 和scan window ,当两者相等说明这兄弟在不断scan,这种就是比较干净的环境发现不了设备的情况,一般都经常要发scan req 的,目前我们周边环境充满蓝牙,随便一扫很多共享单车

总之就是一个半双工通信,你发完就要进入收的模式

看到没有,ble设备广播的时候那么多1,28s的间隔,为啥呢?

还有蓝色的时间间隔提醒一下,我是8.9秒之后才按下nrf connect连接的

哈哈哈哈,让副会长介绍一下

首先空中时间单位是625us,我们叫做slot

开始了,

同志吆喝,要不要来,要不要来!(向空中发广播)0.8slot

然后同志用耳朵听!(BLE设备广播完后进入scan)1.2slot

同志吆喝,要不要来,要不要来!(向空中发广播)0.8slot

然后同志用耳朵听!(BLE设备广播完后进入scan)1.2slot

同志吆喝,要不要来,要不要来!(向空中发广播)0.8slot

然后同志用耳朵听!(BLE设备广播完后进入scan)1.2slot

.....

突然有个路人问,多少钱多少钱!(手机发scan req  有手机来扫描了)0.5slot

同志立马回,5块钱,5块钱!(BLE设备回scan response)0.5 slot

同志很开心,感觉有生意了,

用耳朵听1.28s,只要谁答应了,就上(BLE设备发送完scan response之后延长scan时间)2048slot

......没有人回

同志吆喝,要不要来,要不要来!(向空中发广播)0.8slot

然后同志用耳朵听!(BLE设备广播完后进入scan)1.2slot

同志吆喝,要不要来,要不要来!(向空中发广播)0.8slot

然后同志用耳朵听!(BLE设备广播完后进入scan)1.2slot

同志吆喝,要不要来,要不要来!(向空中发广播)0.8slot

然后同志用耳朵听!(BLE设备广播完后进入scan)1.2slot

.....

突然有个路人问,多少钱多少钱!(手机发scan req  有手机来扫描了)0.5slot

同志立马回,5块钱,5块钱!(BLE设备回scan response)0.5 slot

同志很开心,感觉有生意了,

用耳朵听1.28s,只要谁答应了,就上(BLE设备发送完scan response之后延长scan时间)2048slot

有人回了,我要了!我要了!

(手机发送连接指示 connection indication  packet 

    并约定Transmit Window Size  3.75ms,Transmit Window Offset   5 ms 呼叫带走同志)0.8slot

同志明白了,用耳朵听8.75ms(BLE设备等待发送连接指示的手机来连接)最大14slot

最后,同志用耳朵听8.75ms期间,路人呼叫上,带走!其他路人再无法联系(一对一连接)internal 78slot

如下图

6.46ms就是设备等待手机来连接的连接窗口,连上之后,就是每间隔48.75ms就必须通信一次,没有数据,都要发空包,

用空包保持连接,连接间隔可以由Master去update(master控制LLCP链路)

至此连接OK,这就是BLE连接之前的一段流程

很多人误以为scan req就是发连接的时候,不是的,真正的是在 connection indication  packet 

ADV_IND 是普通广播

ADV_DIRECT_IND是定向广播

这个两个都要scan req scan rsp  然后发连接指示连接的

EXT_IND

AUX_ADV_IND

是扩展广播 可以带251字节,普通的是23字节,版本不同有差异

这个是发AUX_ADV_CONNECT连接的  

还有BIS 的是 AUX_SYNC_IND 带了BIG的同步信息

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值