觐有
2025-9-24 17:49:45
liwen01 2025.06.01
前言
蓝牙工作在 2.4GHZ ISM 频段,它与 2.4G WiFi 处于相同的频段。在经典蓝牙与 BLE 蓝牙之间,信道数、信道带宽、跳频机制、信道用途上都存在很大的区别。
这里我们将介绍蓝牙的信道、跳频、以及信道的选择算法。
(一)经典蓝牙信道
经典蓝牙信道带宽 1Mhz,从信道 ch0~ch78,合计共 79 个信道分布在 2400 ~2483.5 MHz(ISM)频段。
在未连接前,经典蓝牙使用的是79个信道中的32个信道进行广播和配对(Inquiry Scan /Page Scan 阶段)
配对连接成功之后,则会使用全部 79 个信道,包括控制包 和数据包 都通过这 79 个信道交换。
(1) 经典蓝牙通道类型
在经典蓝牙中,信道分为 5 类:
通道类型使用的信道数量使用的信道编号(示例)用途说明Inquiry Scan 32个0~78中选出的32个设备发现Page Scan 32个0~78中选出的32个等待连接Basic Piconet 全部79个0~78(完整跳频)正常通信Adapted Piconet 介于20~79个从0~78中筛选(AFH调整)通信避干扰Synchronization Scan 1个单一广播信道(由广播端选择)同步广播接收
Inquiry Scan & Page Scan :用于设备发现和连接前阶段。
Basic/Adapted Piconet :连接后使用,用于正常或干扰优化通信。
Synchronization Scan :专为同步广播设计,用于周期性接收广播数据。
(2)Inquiry Scan(发现设备)
Inquiry Scan 通道的作用是用于设备被发现 (被查询) 的场景。
主要特点 :
使用32个预定义的跳频信道(在79个信道中选出)。
设备周期性地监听 Inquiry 信号。
当其他设备发起 Inquiry 请求时,处于 Inquiry Scan 状态的设备会响应。
通过该通道,设备能被发现,但还未建立连接。
主要适用场景 :设备广播“我在这”,以供其他设备查询时使用。
(3)Page Scan(连接目标设备)
Page Scan 通道的作用是用于设备等待被连接 (被寻呼)的场景。
主要特点:
设备处于“可连接”状态时,周期性地监听特定跳频上的寻呼信号。
主设备在这 32 个信道中跳频发送 Page 请求
主设备使用 Page Channel 向从设备发起连接。
从设备在这个通道上扫描寻呼请求 。
主要适用的场景 :从设备等待主设备发起连接。
(4)Basic Piconet Channel
Basic Piconet Channel是设备连接成功后 ,用于主从之间数据传输的主要物理通道。
主要特点 :
由一个主设备控制跳频序列。
所有从设备跟随主设备的跳频。
使用所有79个信道(0~78)。
主要适用场景是 :连接状态下的正常通信。
(5)Adapted Piconet Channel
Adapted Piconet 通道是 Basic Piconet 的一个变种,适用于跳频受限环境(如 Wi-Fi 干扰) 。
主要特点:
用于连接状态下通信。
跳频图是根据频道质量评估动态调整的(Adaptive Frequency Hopping, AFH)。
跳频图会剔除干扰严重的信道 。
动态选择部分信道(例如剔除干扰频段,可能只用20~60个)
主要适用场景 :存在2.4GHz 环境有干扰时的通信场景。
(6)Synchronization Scan Channel(同步扫描通道)
Synchronization Scan 通道用于支持同步从设备 (如耳机、音箱)保持与主设备的同步,尤其是在广播传输时。
主要特点: :
用于收听周期性广播(如 synchronized broadcast)。
从设备周期性唤醒并监听同步广播信号。
支持低功耗同步接收。
主要适用场景 :单向广播同步,如广播音频等。
(二)BLE 低功耗蓝牙信道
BLE蓝牙为了更好地适应低功耗、低成本、小数据量传输 的需求,以便能更好地适配物联网设备,BLE蓝牙在经典蓝牙基础上减少了信道数、增加了信道宽度。
但 BLE 蓝牙在抗干扰性和数据速率方面有做了部分的取舍。
(1)BLE蓝牙信道类型
BLE 蓝牙与经典蓝牙都是工作在 2400 ~2483.5 MHz(ISM) 频段,BLE 蓝牙将 ISM 频段分为带宽为 2Mhz 的 ch0~ch39 共 40 个信道。
这 40 个信道编号并不是连续的。其中37、38、39 为广播信道,分布在不同的位置。
为何 37、38、39 三个广播信道会分布在不同位置?
主要原因是蓝牙与 2.4G WiFi处于同一个工作频段,为了尽可能地避免 WiFi 对蓝牙的干扰,所以将三个广播信道布置到了 WiFi 信道的"缝隙"中。
上图可以看出 BLE 的37、38、39 信道,实际是分布在WiFi 1、6、11 信道的"缝隙"处。
WiFi 信道相关的知识可以查看之前 WiFi 系列文章中的《WiFi基础(二):最新WiFi信道、无线OSI模型与802.11b/g/n》
当蓝牙与 WiFi 在同一个空间工作时,从频谱图中可以明显地看到蓝牙的广播信道频谱。
随着时间的变化,也可以看到一段时间上各信道的利用率。其中蓝牙广播信道的使用率还是挺高。
(2)经典 VS BLE 蓝牙信道
蓝牙技术的发展从 BR/EDR(Basic Rate/Enhanced Data Rate) 到 BLE(Bluetooth Low Energy) ,其物理信道数量由 79个 (在BR/EDR中)减少为 40个 (在BLE中),在功耗、成本、信道重叠上有优势,但在吞吐量、抗干扰方面又有明显不足。
BLE 蓝牙信道优势:
简化射频设计 :2 MHz 宽度、40 个信道更适合低成本实现。
更快建立连接 :3 个固定广播信道,有利于快速扫描与连接。
节能优化 :信道规划简化通信过程,有助于降低功耗。
减少与Wi-Fi干扰 :合理分布的信道避免与 Wi-Fi 常用信道冲突。
BLE 蓝牙信道劣势:
抗干扰能力略弱 :跳频范围变窄,在复杂无线环境下易受影响。
最大吞吐量较低 :不适合大数据量或高质量音频/视频传输(不过BLE Audio在BLE 5.2中已部分改进)。
兼容性问题 :早期BLE设备不支持BR/EDR,应用需要按场景选择。
简而言之就是:经典蓝牙使用 1Mhz 带宽 79 信道,BLE 使用2Mhz 带宽 40 信道。BLE 蓝牙减少了信道数、增加了信道宽度,使得BLE蓝牙在低功耗、低成本、小数据量传输中占据优势,但在抗干扰性和数据速率方面又有所牺牲。
(三)跳频技术
为了提高通信的抗干扰和提升频谱的利用率,蓝牙使用了 FHSS 和 AFH 跳频技术
(1)FHSS 跳频扩频(Frequency Hopping Spread Spectrum)
蓝牙从一开始的1.0版本就有使用跳频技术,当时使用的是 FHSS 技术。
FHSS 是一种扩频技术,它通过在多个频率信道间快速切换(跳频)来发送数据,从而提高抗干扰能力和通信安全性。
FHSS 跳频扩频的优点
抗干扰能力强 :跳频特性使信号不在一个频率上长时间停留,能规避某些短时干扰。
提高通信安全性 :频率不断变化,监听者难以持续跟踪完整的数据流,提高抗监听能力。
抗多径效应 :跳频可以避免由于多径效应导致的某一频率点的严重衰减。
实现简单、成本低 :在早期硬件平台上易于实现,对处理器和协议要求较低。
FHSS 跳频扩频的缺点:
容易跳入受干扰信道 :跳频是随机或伪随机的,可能跳到被 Wi-Fi 或其他设备强干扰的频率上,影响通信质量。
无适应能力 :不能根据环境自动优化跳频序列,效率低于后来的自适应跳频技术。
频谱利用率不高 :所有信道都参与跳频,即使某些信道质量很差,也仍可能使用。
(2)AFH 自适应跳频(Adaptive Frequency Hopping )
虽然 FHSS 能提高抗干扰能力,但在 2.4 GHz 频段中,有很多其他设备(如 Wi-Fi、微波炉、Zigbee)也在使用相邻或相同频率,可能造成干扰。
为了解决该问题,从 蓝牙 1.2 开始,引入了 AFH 技术
AFH 的核心思想是:
AFH 会检测信道质量,自动将受干扰严重或质量差的信道从跳频序列中排除,只在“良好信道”之间跳频,从而提升通信质量。
AFH 自适应跳频的优点 :
避开干扰频率 :自动检测和屏蔽受干扰或高误码率的信道,显著提高通信稳定性和吞吐率 。
与 Wi-Fi 等共存能力强 :能主动避开 Wi-Fi 使用的 2.4GHz 频段(如信道 1、6、11),减少蓝牙与 Wi-Fi 的冲突。
动态适应能力强 :能根据实时环境变化,更新跳频序列,应对移动设备和复杂无线环境。
提高实际传输效率 :由于减少了因信道干扰而导致的重传,提升了有效数据速率。
AFH 自适应跳频的缺点
实现更复杂 :需要主设备监测信道质量、动态维护信道列表,增加了协议栈复杂度和资源消耗。
依赖主从协同跳频 :主设备做决策并同步从设备,若同步失效,通信会中断。
受限于信道总数减少 :剔除“坏信道”后,可用信道减少,可能导致频谱利用率下降、跳频图变得不均匀。
FHSS 与 AFH的应用
在经典蓝牙中,设备刚连接上时,使用的是Basic Piconet Channel 通道进行数据交互,实际使用的是 FHSS 跳频机制在0~79信道之间跳转。
如果开启了AFH功能,蓝牙模块会去检测信道的质量,将质量不好的信道剔除,也就是Adapted Piconet Channel 信道。它使用的是BR/EDR 80个信道中的部分信道进行数据交互。
在蓝牙中,生成跳频序列的算法有两种:
Channel Selection Algorithm #1 (CSA#1)
Channel Selection Algorithm #2 (CSA#2)
下面我们介绍这两种算法在BLE中的使用。
(四)信道选择算法
在BLE通信中,设备通过跳频 (Frequency Hopping)在多个数据通道之间切换,以减少干扰并提高通信可靠性。
CSA#1和CSA#2定义了数据包应跳转到哪个通道。
(1)CSA#1 (Channel Selection Algorithm #1)
CSA#1 是蓝牙早期版本(如 Bluetooth 4.0 及之前)中使用的信道选择算法。
特点:
基于事件计数器(Event Counter) 。
线性跳频 :通过一个简单的公式,在37个数据通道中进行伪随机跳变。
不可自适应 :无法避开存在干扰的信道。
跳频的公式为 :channel_index = (event_counter + hop_increment) % 37 复制代码 hop_increment 为配对时选定的跳频因子(范围是1~36,不能被37整除)
上图可以看出CSA#1算法跳频的线性变化。
CSA#1优势:
实现简单: 算法逻辑相对简单,计算量低,适合资源受限的设备(如低端MCU)。
兼容性强: 是 BLE 4.0/4.1 的默认跳频算法,几乎所有 BLE 设备都支持。
跳频快速: 跳频速度快,延迟小,有助于低延迟通信。
CSA#1劣势:
跳频模式较为可预测 ,安全性较低。
容易受干扰,因为不能跳过信号质量差的通道。
在高干扰环境(如 Wi-Fi 重叠)下表现较差。
(2)CSA#2 (Channel Selection Algorithm #2)
CSA#2 算法在蓝牙5.0 之后版本广泛使用,旨在提高蓝牙的抗干扰性和安全性 。
特点 :
更加随机、抗干扰性更强 。
支持信道映射表(Channel Map) ,跳过受干扰的通道。
基于AES-like加扰运算 :提高安全性和随机性。
算法大致流程 :
使用一个 event_counter 和 access_address 作为种子,经过非线性变换(例如基于 AES 的混淆函数)生成一个伪随机数。
将该伪随机数对可用通道数量取模,得到目标信道索引。
使用当前的 信道映射表 (channel map)来找出实际要跳转的通道。
从上图可以看出,使用CSA#2之后,信道跳转是非线性的。
CSA#2优势:
抗干扰能力强: 使用 AES 加密生成伪随机跳频序列,难以预测,抗干扰性和安全性大幅提升。
频谱使用均匀: 所有可用频道使用更均匀,避免某些频道过度使用,提高系统稳定性。
安全性更高: 序列与连接参数相关,外部无法预测,有助于防止干扰和嗅探攻击。
支持动态黑名单: 可以动态地排除受干扰的频道(结合 Adaptive Frequency Hopping, AFH)。
CSA#2缺点:
实现复杂: 依赖加密算法(如 AES-128),计算复杂度高,对硬件资源有更高要求。
兼容性要求更高: 旧设备(BLE 4.0/4.1)可能不支持 CSA#2,需协商降级使用 CSA#1。
稍微增加功耗: 计算量增大可能略微提升能耗,尤其是在资源紧张的低功耗设备中。
CSA#1 VS CSA#2
特性CSA#1CSA#2引入版本BLE 4.0/4.1BLE 4.2(广泛用于 BLE 5.0+)抗干扰能力一般强跳频序列可预测性高(易预测)低(伪随机)计算复杂度低高(需要加密运算)实现简易性简单较复杂通道使用均匀性差好兼容性与所有 BLE 设备兼容需要 BLE 4.2 及以上设备支持(3)信道质量判断
所有的无线设备,包括蓝牙和 WiFi,都无法在发送数据的同时检测当前信道是否繁忙,而是通过过往数据的收发情况进行分析判断。
信道质量的衡量指标
蓝牙控制器通过以下方式判断某个信道是否“质量差” :
(1)包错误率(PER, Packet Error Rate)
某个信道上发送的包中,有多少是被接收方认为损坏的(如CRC校验失败)。
通常以“百分比”表示,比如 PER > 10% 可认为质量较差。
(2)重传次数(Retransmissions)
(3)接收信号强度(RSSI)
蓝牙设备能检测接收到的信号强度;RSSI太低表示信道质量差。
但RSSI不总是直接用来决定跳频行为,更多用于优化连接。
(4)信道利用率或干扰检测
某些蓝牙控制器具备检测频道是否被Wi-Fi等占用的能力(频谱扫描或能量检测)。
蓝牙控制器维护一个信道分类表(Channel Classification Map) ,将信道分为:
Good(好) :当前通信表现稳定;
Bad(差) :通信包错误率高、干扰严重;
Unknown(未知) :未被使用或未测量;
蓝牙主设备定期上报这个分类表给从设备,确保主从设备使用同一跳频序列。
(五)蓝牙信道未来发展
从蓝牙联盟官方网站上看,蓝牙是有在规划 5 GHz 和 6 GHz 频段的使用,但是没有给出明确的推出时间。
规划5 GHz 和 6 GHz的目的是:更高的数据吞吐量、更低的延迟、更高的定位精度以及更好的共存性。
蓝牙规范的推出,再到用户能用的实际产品,中间会有个代差。可以确定的是,短时间内应该大家是还看不到 5 GHz 和 6 GHz 蓝牙的应用。
结尾
本章主要介绍了经典蓝牙和BLE蓝牙的物理信道,以及它们的调频技术、信道选择算法。下一章将介绍蓝牙的连接过程。
------------------End------------------如需获取更多内容请关注 liwen01 公众号
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
相关推荐