· 主机:主机可以发起对从机的扫描连接。例如手机,通常作为BLE的主机设备
· 从机:从机只能广播并等待主机的连接。例如智能手环,是作为BLE的从机设备
· 观察者:观察者角色监听空中的广播事件,和主机唯一的区别是不能发起连接,只能持续扫描从机。
· 广播者:广播者可以持续广播信息,和从机的唯一区别是不能被主机连接,只能广播数据(例如iBeacon)。
广播:广播间隔越大,连接的时间越长。
指从机每经过一个时间间隔发送一次广播数据包,这个时间间隔称为广播间隔(20ms-10.24s),这个广播动作叫做广播事件(广播包会分别在37、38和39三个信道上依次广播)。

BLE链路层会在两个广播事件之间添加一个0~10ms的随机延时,保证多个设备广播时,不会一直碰撞广播。(100ms~110ms)

广播数据包:最多能携带31个字节的数据,一般包含可读的设备名称,设备是否可连接等信息。
扩展广播包:当主机收到从机广播的数据包后,它可以再发送获取更多数据包的请求,这个时候从机将广播扫描回应数据包,扫描回应数据包和广播包一样,可以携带31个字节的数据。
提示:蓝牙4.x,广播有效载荷最多是31个字节。而在蓝牙5.0中,通过添加额外的广播信道和新的广播PDU,将有效载荷增加到了255个字节。
扫描:是主机监听从机广播数据包和发送扫描请求的过程,主机通过扫描,可以获取到从机的广播包以及扫描回应数据包,主机可以对已扫描到的从机设备发起连接请求,从而连接从机设备并通信。
扫描动作有两个比较重要的时间参数:扫描窗口和扫描间隔,如果扫描窗口等于扫描间隔,那么主机将一直处于扫描状态之中,持续监听从机广播包。

· 被动扫描:主机监听广播信道的数据,当接收到广播包时,协议栈将向上层(也就是应用层,用户可编程)传递广播包。
· 主动扫描:主动扫描除了完成被动扫描的动作外,还会向从机发送一个扫描请求,从机收到该请求时,会再次发送一个称作扫描回应的广播包。
所以,主动扫描比被动扫描,可以多收到扫描回应数据包
- 本文作者: 龙兄嵌入式
- 本文链接: https://hexo.880755.xyz/1970/01/01/zblog/download/11.低功耗BLE的模式介绍/