news 2026/6/10 11:52:33

BLE 协议栈

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
BLE 协议栈

BLE(Bluetooth Low Energy,蓝牙低功耗)协议栈是实现 BLE 通信功能的软件架构,它按照分层模型组织,每一层负责特定的功能。BLE 协议栈通常遵循蓝牙核心规范(Bluetooth Core Specification),目前最新版本为 Bluetooth 5.4(截至2024年)。以下是 BLE 协议栈的主要层次结构及其功能说明:


1.物理层(PHY - Physical Layer)

  • 负责无线信号的发送与接收。
  • 工作在 2.4 GHz ISM 频段,使用 GFSK(高斯频移键控)调制。
  • BLE 使用 40 个 RF 信道(37 个数据信道 + 3 个广播信道)。
  • 支持多种 PHY 模式(如 1M PHY、2M PHY、Coded PHY)以平衡速率与距离。

2.链路层(LL - Link Layer)

  • 控制设备的射频状态(广播、扫描、连接等)。
  • 定义 BLE 的五种设备角色:
    • 广播者(Advertiser)
    • 扫描者(Scanner)
    • 发起者(Initiator)
    • 主设备(Master / Central)
    • 从设备(Slave / Peripheral)
  • 负责连接建立、加密、跳频、数据包格式、重传机制等底层通信控制。

3.主机控制器接口(HCI - Host Controller Interface)(可选)

  • 提供主机(Host)与控制器(Controller)之间的标准通信接口。
  • 常用于将 BLE 控制器(如芯片中的基带+射频)与主处理器(运行应用和高层协议)分离的系统中。
  • 可通过 UART、USB、SPI 等物理接口传输 HCI 命令/事件/数据。

注:在 SoC(单芯片)方案中,HCI 层常被省略或内部集成。


4.逻辑链路控制与适配协议层(L2CAP - Logical Link Control and Adaptation Protocol)

  • 提供多路复用、分段与重组、协议复用等功能。
  • 为上层协议(如 ATT、SM)提供面向通道的数据传输服务。
  • BLE 中 L2CAP 通道通常基于固定信道(如信令信道、ATT 信道)或动态信道(用于 LE Credit Based Flow Control)。

5.安全管理层(SM - Security Manager)

  • 负责 BLE 设备间的配对(Pairing)、绑定(Bonding)、加密和密钥分发。
  • 支持多种安全模式(如 Just Works、Passkey Entry、OOB、Numeric Comparison)。
  • 生成长期密钥(LTK)、身份解析密钥(IRK)等用于安全通信。

6.属性协议层(ATT - Attribute Protocol)

  • BLE 数据交换的核心协议。
  • 基于“属性”(Attribute)模型:每个属性包含句柄(Handle)、UUID、值(Value)和权限。
  • 定义了客户端(Client)与服务器(Server)角色:
    • Server:存储属性(如传感器数据)
    • Client:读写/订阅这些属性
  • 支持操作:Read、Write、Notify、Indicate、Discover 等。

7.通用属性配置文件(GATT - Generic Attribute Profile)

  • 构建在 ATT 之上,定义了属性的组织方式和使用规范。
  • 引入Service(服务)Characteristic(特征)Descriptor(描述符)的概念:
    • Service:一组相关的数据/功能(如 Battery Service)
    • Characteristic:具体的数据项(如 Battery Level)
    • Descriptor:描述 Characteristic 的元数据(如 Client Characteristic Configuration Descriptor 用于使能 Notify)
  • 所有 BLE 应用(如心率监测、智能家居)都基于 GATT Profile 实现互操作。

8.通用访问配置文件(GAP - Generic Access Profile)

  • 定义设备如何被发现、连接和广播。
  • 规范设备角色(Central/Peripheral)、广播类型(可连接/不可连接/定向等)、连接参数。
  • 处理设备名称、外观(Appearance)、广播数据内容等。

协议栈整体结构(自下而上):

Application ↑ GATT (Generic Attribute Profile) ↑ ATT (Attribute Protocol) ↑ SM (Security Manager) ←→ L2CAP (Logical Link Control and Adaptation Protocol) ↑ ↑ GAP (Generic Access Profile) ↑ ↑ ↑ HCI (Host Controller Interface) ←→ (可选) ↑ LL (Link Layer) ↑ PHY (Physical Layer)

常见 BLE 芯片厂商的协议栈实现:

  • Nordic Semiconductor:SoftDevice(如 S112, S132, S140)
  • Texas Instruments:BLE Stack(如 CC2640R2 SDK)
  • Silicon Labs:Bluetooth SDK(基于 Gecko Platform)
  • ESP32(Espressif):Bluedroid 或 NimBLE 协议栈
  • Zephyr OS:开源 BLE 协议栈(支持 Nordic、NXP、STM32 等)

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/9 14:46:52

Qwen3-Embedding-4B性能评测:多语言文本聚类效果对比

Qwen3-Embedding-4B性能评测:多语言文本聚类效果对比 1. Qwen3-Embedding-4B介绍 Qwen3 Embedding 模型系列是 Qwen 家族中专为文本嵌入与排序任务打造的最新成员,基于强大的 Qwen3 系列基础模型构建。该系列覆盖多种参数规模(0.6B、4B 和 …

作者头像 李华
网站建设 2026/6/9 17:24:11

Z-Image-Turbo实测:复杂描述也能精准还原

Z-Image-Turbo实测:复杂描述也能精准还原 在文生图领域,我们常遇到这样令人沮丧的时刻:精心构思的提示词——“一位穿靛蓝扎染旗袍的年轻女子站在苏州平江路青石板上,左手提竹编食盒,背景是粉墙黛瓦与垂柳&#xff0c…

作者头像 李华
网站建设 2026/6/5 2:01:35

YOLO11快速部署指南:5分钟跑通你的第一个模型

YOLO11快速部署指南:5分钟跑通你的第一个模型 你是不是也经历过——下载完模型、配环境、装依赖、改路径、调参数……折腾两小时,连一张图都没检测出来?别急,这篇指南专治“部署焦虑”。我们不讲原理、不抠代码细节、不堆术语&am…

作者头像 李华
网站建设 2026/6/8 5:40:37

计算机毕业设计Spark地铁客流量预测 交通大数据 交通可视化 大数据毕业设计 深度学习 机器学习 大数据毕业设计(源码+LW文档+PPT+讲解)

温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 技术范围:Sprin…

作者头像 李华
网站建设 2026/5/29 17:04:18

零基础搭建AI绘图系统,Z-Image-Turbo超简单

零基础搭建AI绘图系统,Z-Image-Turbo超简单 你是不是也试过:下载一堆模型、配环境、改配置、调依赖……折腾半天,连一张图都没生成出来? 或者刚打开网页,就弹出“CUDA out of memory”“Model not found”“Port 7860…

作者头像 李华
网站建设 2026/6/6 9:49:38

aiohttp批量请求最佳实践(从入门到跑通1000并发)

第一章:aiohttp批量请求最佳实践(从入门到跑通1000并发) 在高并发HTTP客户端场景中,aiohttp凭借其异步I/O特性和轻量级设计成为Python生态的首选。但盲目提升并发数常导致连接耗尽、服务端限流或客户端内存溢出。本章聚焦可落地的…

作者头像 李华