蓝牙BLE的连接过程,自动连接过程

BLE的第一次连接

所谓连接,分为一对多,多对一。这篇文章我先主要讲一下一对一的情况。

1 蓝牙连接过程中的角色

两者的角色:主(master)和从(slave),服务器(sever)和客户端(client),中心设备(Central)和外围设备(Peripheral)。
在蓝牙的整个连接过程中,其实更主要的是将设备分为“广播者”(Advertiser)和“发现者”(Observer)。
在以手机和蓝牙耳机为例:手机是Observer,通过扫描, 来发现蓝牙耳机这一广播着的设备
手机和智能设备的连接也类似,手机连接插座或者sensor设备,手机通过扫描来连接设备,
都可以把手机看做Observer,senser当做广播者。
广播者不断的发送广播信息到周围。间隔为10ms-10S,所功耗可以做的很低,每一次广播为11uA左右。
Observer —> Master —> Central --> Client–> Intiator
Advertiser —> slaver —>Perpheral -->Server
在这里插入图片描述

2 连接过程中两个角色对应的状态

一共五中状态:
Standby 准备
Aderversing 广播
Scaning 监听
Intiating 发起连接
Connect 连接

ble蓝牙的连接过程

在这里插入图片描述or
在这里插入图片描述

二、 再次自动连接

1 二次连接的特点:

首先,Observer设备需要将adverser设备的addr写在手机中,所以当adverser 向主设备发送广播信号后,就可以建立连接进行通信,这样的要求是手机的app需要时刻监听和扫描。
这需要BLE Client设备保持监听,监听advertising,如果检测到发送advertising的设备是可连接的(已配对或在白名单内),自动发起连接。

在这里插入图片描述

因此,连接的情景:
因此,原生代码默认实现了自动连接的必要流程:

a. 配对成功之后,中心设备发起自动连接,只要当BLE Server想发送数据时,发送advertising双方就可以正式进行Link建立;
b. 重启中心设备,加载配对记录之后,中心设备发起自动连接,依然是当BLE Server想发送数据时,发送advertising双方就可以正式进行Link建立;
c. connection timeout的断开之后,中心设备发起自动连接,依然是当BLE Server想发送数据时,发送advertising双方就可以正式进行Link建立;
------BLE Server设备为了省电,当一段时间内没有数据要发送时,可以不再发送advertising,双方就会因为connection timeout断开,这是需要中心设备启动监听,这样,当BLE Server设备需要发送数据时,就可以再次连接

参考地址链接
https://www.cnblogs.com/iini/p/8972635.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值