资讯动态

经典蓝牙的协议介绍

发布时间:2026/10/21 5:26:57 来源:尧图企业网站定制
经典蓝牙Classic Bluetooth通常指BR/EDRBasic Rate / Enhanced Data Rate蓝牙是蓝牙1.0到5.x规范中用于音频、串口通信等场景的传统蓝牙技术。对于嵌入式开发理解经典蓝牙协议栈比记协议名称更重要。你可以把它理解为应用 ↓ Profile ↓ RFCOMM ↓ L2CAP ↓ HCI ↓ LMP ↓ Baseband ↓ Radio(PHY)1. 协议栈总体结构------------------ | A2DP | | HFP | | AVRCP | | SPP | ------------------ | RFCOMM | | SDP | ------------------ | L2CAP | ------------------ | HCI | ------------------ | LMP | ------------------ | Baseband | ------------------ | Radio | ------------------2. Physical LayerPHY最底层无线收发器。工作频段2.402 GHz ~ 2.480 GHz采用FHSS Frequency Hopping Spread Spectrum特点79个信道 每个1MHz 1600 hops/s例如Ch1 ↓ Ch20 ↓ Ch56 ↓ Ch10不断跳频。3. Baseband基带层。负责数据包封装时隙管理跳频控制ACL/SCO链路管理时隙Slot经典蓝牙采用625us一个时隙。Master Tx Slave Tx主从交替发送。ACL链路Asynchronous Connection Less用于文件传输 串口传输 数据通信例如SPP FTP OBEX都走ACL。SCO链路Synchronous Connection Oriented用于语音 电话例如HFP Headset4. LMPLink Manager Protocol链路管理协议。负责管理连接。功能连接建立Paging Connection SetupPairingPIN SSPAuthentication身份认证 Encryption加密开关AFHAFH就是由LMP控制Adaptive Frequency Hopping动态避开干扰信道。5. HCIHost Controller InterfaceHCI是面试高频内容。作用Host和Controller之间的接口。Application ↑ Host ↑ HCI ↓ Controller例如应用层要连接设备HCI_Create_Connection控制器返回Connection Complete常见传输方式UART USB SDIO PCIe很多蓝牙芯片接MCUMCU ----UART---- BT Chip就是HCI接口。6. L2CAPLogical Link Control and Adaptation ProtocolL2CAP非常重要。相当于蓝牙的传输层。功能数据复用多个协议共享ACL链路RFCOMM SDP OBEX同时运行。分包重组如果应用发送1000 Bytes而链路每次只能传339 BytesL2CAP负责Segmentation ReassemblyQoS管理支持优先级 流量控制7. SDPService Discovery Protocol服务发现协议。作用发现对方支持什么服务流程Connect ↓ SDP Query ↓ Service List例如SPP A2DP HFP AVRCP手机连接耳机时先通过SDP知道耳机支持 A2DP AVRCP HFP然后建立对应连接。8. RFCOMM嵌入式开发最常见协议。RFCOMM模拟串口。原理UART ↓ RFCOMM ↓ L2CAP ↓ Bluetooth对于上层来说和串口几乎一样SPPSerial Port Profile建立在RFCOMM之上。SPP ↓ RFCOMM ↓ L2CAP很多蓝牙模块HC-05 HC-06 BC417实际上就是SPP透传开发体验send(hello)另一端直接receive(hello)非常像UART。9. 常见ProfileProfile配置文件定义应用行为。SPP串口透传SPP ↓ RFCOMM ↓ L2CAP适用MCU通信工业设备调试工具A2DPAdvanced Audio Distribution Profile音乐传输。Phone ↓ SBC/AAC ↓ A2DP ↓ Headset例如蓝牙耳机听歌 AVRCPAudio Video Remote Control Profile控制音乐播放。支持Play Pause Next VolumeHFPHands-Free Profile蓝牙通话。接电话 挂电话 语音传输车载蓝牙大量使用。HIDHuman Interface Device键盘鼠标。Bluetooth Keyboard Bluetooth MouseOPPObject Push Profile文件传输。例如老手机时代传照片 传联系人10. 经典蓝牙连接过程对应协议Inquiry ↓ Page ↓ ACL Connection ↓ LMP ↓ Authentication ↓ Encryption ↓ SDP ↓ Profile建立 ↓ RFCOMM/A2DP/HFP ↓ Data Transfer例如手机连接蓝牙串口模块Inquiry ↓ 发现HC05 ↓ Page ↓ ACL ↓ Pairing ↓ SDP ↓ 发现SPP服务 ↓ RFCOMM建立 ↓ UART数据透传11. 面试常问Q1RFCOMM和SPP是什么关系SPP Profile RFCOMM Protocol 关系SPP ↓ RFCOMM ↓ L2CAPQ2为什么RFCOMM像串口因为RFCOMM实现了RS232串口模拟上层看到的是COM PortQ3ACL和SCO区别ACL数据 可重传 可靠SCO语音 不重传 实时性高Q4经典蓝牙和BLE最大的协议区别经典蓝牙SDP RFCOMM SPP A2DP HFPBLEATT GATT Service Characteristic经典蓝牙主要围绕RFCOMM/SPP/A2DP/HFP构建BLE主要围绕GATT服务和Characteristic属性构建这是两套完全不同的上层协议体系。

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑