蓝牙核心系统架构介绍

一、蓝牙的两种模式

(1)经典蓝牙(BR/EDR)

用于高数据速率应用,如无线耳机、音箱、键盘。

特点是连接稳定,适合持续传输音频或大量数据。

(2)低功耗蓝牙(BLE)

专为低功耗设备设计,如智能手环、温度计、传感器。

特点是耗电低,适合间歇性传输小数据。

总结:两种模式底层都用无线信号传输数据,都遵循蓝牙协议,只是侧重点不同。经典蓝牙重视速度和稳定,BLE重视省电和简单连接。

二、蓝牙核心系统组成

蓝牙核心系统由主机(Host)和控制器(Controller)两部分组成。

主机负责高层协议和控制逻辑,控制器处理底层射频和信号传输。两者分工合作,设备才能正常工作。

三、主机部分(Host)

主机包含多个协议模块,经典蓝牙和BLE有所不同。

经典蓝牙主要模块:

GAP(通用访问协议):管理设备发现和连接建立。

SDP(服务发现协议):帮助设备发现对方支持的服务。

L2CAP(逻辑链路控制协议):管理数据流,负责数据分段和重组。

SMP(安全管理协议):负责加密连接和密钥管理。

BLE主要模块:

GAP(通用访问协议):管理设备发现和连接建立。

GATT(通用属性协议):规定设备如何描述和交换数据属性。

ATT(属性协议):按照GATT规则传输数据。

SMP(安全管理协议):负责加密连接和密钥管理。

经典蓝牙工作流程:

  1. GAP搜索附近设备并建立连接

  2. SDP查找对方支持的服务

  3. L2CAP处理数据传输,分段重组

  4. SMP管理密钥和加密

BLE工作流程:

  1. GAP搜索附近设备并建立连接

  2. GATT列出设备支持的服务和数据属性

  3. ATT按照GATT规定格式传送数据

  4. SMP保障连接和数据安全

四、控制器部分(Controller)

控制器处理蓝牙底层功能,直接与硬件交互。

主要模块:

LL(链路层):管理蓝牙设备的链路状态和数据包传输。

RF(射频层):处理蓝牙信号的发送和接收。

IAL(等时音频层):BLE特有,处理高实时性数据传输,例如音频。

控制器主要负责:

链路管理:连接的建立、维持、断开。

无线信号传输:信号调制解调、频率管理、纠错编码。

硬件交互:直接控制无线电模块发射和接收。

五、HCI(主机控制器接口)

HCI是连接主机和控制器的桥梁,负责两部分之间通信。

特点:

标准化接口,让不同厂商的设备互相兼容。

传输命令、事件和数据包。

举例:手机的应用层通过HCI命令告诉蓝牙芯片"开始扫描附近设备",芯片执行后通过HCI事件返回扫描结果。

六、双模蓝牙

双模蓝牙同时支持经典蓝牙和BLE,一个设备两种能力

硬件层面同时支持BR/EDR和BLE。软件层面整合经典蓝牙和BLE的高层协议。

支持经典蓝牙的SDP和BLE的GATT,灵活切换。

举例:手机可以同时连接蓝牙耳机(经典蓝牙)和智能手环(BLE)

七、总结

经典蓝牙和BLE虽然侧重不同,但架构相似:都是主机管逻辑,控制器管硬件,通过HCI通信

经典蓝牙适合持续大数据传输,BLE适合低功耗间歇传输。

双模设备兼具两种能力,应用更广泛。

相关推荐
leafff1232 小时前
一文读懂:如何选择适合的RAG系统架构设计模式?
设计模式·自然语言处理·系统架构
Ashlee_code2 小时前
全球动荡下的金融科技突围:TRS收益互换与场外个股期权系统架构全景解析
科技·金融·系统架构·跨境·kyc·金融机构·场外期权
蒋星熠5 小时前
全栈开发实战指南:从架构设计到部署运维
运维·c++·python·系统架构·node.js·devops·c5全栈
湘-枫叶情缘18 小时前
系统架构设计师与考研408在IT基础设施能力考核上的全面对比研究
系统架构
合作小小程序员小小店2 天前
web网页开发,在线%考试管理%系统,基于Idea,vscode,html,css,vue,java,maven,springboot,mysql
java·前端·系统架构·vue·intellij-idea·springboot
roman_日积跬步-终至千里2 天前
【系统架构设计】用例技术:需求分析的实用工具
系统架构·需求分析
信创天地2 天前
RISC-V 2025年在国内的发展趋势
python·网络安全·系统架构·系统安全·运维开发
Arva .2 天前
接口在领域层,实现在基础设施层
系统架构
qqxhb3 天前
系统架构设计师备考第68天——大数据处理架构
大数据·hadoop·flink·spark·系统架构·lambda·kappa