当前位置: 首页 > news >正文

蓝牙四种基本角色详解

一、广播者

一句话定义只说不听的公告员。

  • 核心行为:像一个街边的广告牌电台,只负责周期性地向外广播信息,不关心谁收到了,也不接受任何回复或连接请求

  • 通信方向单向发送

  • 工作阶段连接建立之前。这是设备宣告自己存在的方式。

  • 典型设备

    • iBeacon/Eddystone信标(商场里的位置标签)

    • 资产追踪标签

    • 仅广播数据的传感器(比如将温度数据直接放在广播包里)

  • 关键特点

    • 功耗极低:只需定时醒来发个短信号,然后继续睡觉。

    • 无连接:无法与它进行双向对话。

    • 一对多:一个广播者发出的信息,范围内所有观察者都能收到。


二、观察者

一句话定义只监听不看的收音机。

  • 核心行为:像一个收音机听众监控摄像头,持续扫描空中是否有广播信息,负责接收和记录,但不主动与广播者对话或建立连接

  • 通信方向单向接收

  • 工作阶段连接建立之前。这是设备发现周围世界的方式。

  • 典型设备

    • 扫描器APP(如手机上用来找蓝牙设备的工具)

    • 室内定位系统中的接收基站

    • 数据采集网关(只收集传感器广播的数据)

  • 关键特点

    • 被动发现:它只能发现那些愿意广播的设备。

    • 可过滤信息:可以从海量广播中筛选出自己关心的设备(比如只找某个品牌的信标)。

    • 功耗取决于扫描强度:扫描得越频繁,发现设备越快,但越耗电。

广播者与观察者的关系:构成了BLE的发现机制。这是单向、无连接的通信,是连接的前提。一个设备可以是广播者或观察者。


三、外设

一句话定义提供服务的从机

  • 核心行为:像一个服务员智能家居设备。它先广播自己的存在(此时它扮演了广播者的角色),等待被“顾客”(中央设备)连接。一旦连接建立,它就对外提供定义好的服务(比如心率数据、温度数据),并听从“顾客”的指令。

  • 通信方向双向通信(但由中央设备主导)。

  • 工作阶段连接建立之后

  • 典型设备

    • 所有需要被手机/电脑连接的设备:智能手环、蓝牙耳机、心率带、智能灯泡、传感器等。

  • 关键特点

    • 角色组合:在连接前是“广播者”,连接后是“外设”

    • 数据提供者:它拥有GATT服务数据库,定义了它能提供什么数据(特征值)以及如何提供(读、写、通知)。

    • 功耗敏感:通常是电池供电的小型设备,设计以节能为第一要务。

    • 一对一连接:一个外设同一时间通常只能被一个中央设备连接(某些协议栈支持多连接,但仍是主流限制)。


四、中央设备

一句话定义发起和管理连接的主机

  • 核心行为:像一个顾客指挥官。它先扫描周围的广播(此时它扮演了观察者的角色),发现目标外设后,主动发起连接。连接建立后,它负责发现外设提供的服务,并主动读取、写入数据或订阅通知。

  • 通信方向双向通信(由它主导发起请求)。

  • 工作阶段连接建立之后

  • 典型设备

    • 智能手机、平板、电脑

    • 智能家居网关

    • 数据采集器(当需要主动查询时)

  • 关键特点

    • 角色组合:在连接前是“观察者”,连接后是“中央设备”

    • 连接管理者:可以同时连接多个外设(理论最多7个,实际取决于协议栈和设备能力)。

    • 资源丰富:通常有更强的处理能力、更大的电池或持续电源。

    • 主导通信:控制连接的参数(如通信间隔),并主动发起数据请求。

外设与中央设备的关系:构成了BLE的连接通信机制。这是双向、可靠的通信。它们通常成对出现,且一个设备在同一时刻不能既是外设又是中央设备(但可以动态切换角色)。


五、核心区别与关系总结

特性维度广播者观察者外设中央设备
通信方向单向发送单向接收双向(从机)双向(主机)
连接性无连接无连接连接的从机连接的主机
主导权主动广播被动接收被动响应主动控制
功耗极低(周期短时唤醒)低(扫描可调)低(连接后可深度睡眠)相对较高(需管理连接)
典型设备信标、追踪标签扫描APP、定位基站手环、传感器、耳机手机、电脑、网关
角色组合可独立存在可独立存在连接前 = 广播者连接前 = 观察者

生命周期流程图:以智能手环连接手机为例

text

智能手环上电 ↓ 成为【广播者】 -- 周期性广播:“我是手环,可连接!” ↓ ↑ 手机打开蓝牙 ↓ 手机成为【观察者】 -- 扫描并发现手环的广播 ↓ 手机决定连接,发起请求 ↓ 手机成为【中央设备】 ↓ 建立连接! ↓ 手环转换为【外设】 <----------> 手机作为【中央设备】 ↓ ↓ 停止广播 发现手环的服务 ↓ ↓ 等待指令、发送通知 <----- 请求数据、发送指令 -----> 读取心率、设置闹钟

关键要点

  1. 广播者/观察者是关于“发现”的角色。

  2. 外设/中央设备是关于“连接和通信”的角色。

  3. 一个实际的设备通常是角色的组合

    • 你的智能手环广播者 + 外设

    • 你的智能手机观察者 + 中央设备

    • 一个商场定位信标纯广播者

    • 一个只接收数据的网关纯观察者

http://www.jsqmd.com/news/199867/

相关文章:

  • Zotero PDF2zh插件:学术文献翻译效率提升的专业解决方案
  • 推荐系统模型优化-工程实践流程
  • 【限时解读】:Dify多模态模型适配的7种高阶策略,错过再无
  • 结合ComfyUI与GLM-4.6V-Flash-WEB打造可视化AI工作流
  • Java社招面试一般都问什么?
  • springboot基于Java医院药品管理系统的设计与实现
  • 科研人福音!一键生成PPT和科研绘图,北大开源Paper2Any,全流程可编辑
  • 告别DWF打开难!浩辰CAD看图王一键解锁,兼容无压力
  • FabricMC模组加载器实战指南:轻松玩转Minecraft个性化定制
  • UltraISO注册码最新版和AI开发无关?但镜像制作有关联
  • LLM自动标注医疗数据,效率翻倍
  • 免费开源大型多用户多商家小程序电商系统源码_OctShop
  • FastStone Capture注册码购买正版支持开发者
  • springboot基于spring boot的会议室预订系统设计与实现
  • Dify插件开发必知的8个API接口(附完整调用示例)
  • 计算机深度学习毕设实战-机器学习 基于CNN卷积神经网络的11种花卉识别小程序-web和pyqt
  • 【企业级AI部署必看】:Dify多模态模型适配的3个核心瓶颈与突破方案
  • FabricMC模组加载器终极精通指南:从零到专家级应用
  • GLM-4.6V-Flash-WEB网页推理功能使用全攻略
  • 2025开年必藏!AI技术爆火重构职场,程序员的命运正在被大模型改写
  • 【避坑必备】Dify文档保存失败的10种场景及对应解决方法
  • 强力解析虚幻引擎存档:uesave完全掌控游戏数据
  • Git commit amend修复错误提交保障GLM代码历史整洁
  • ES的DSL编写规则规则讲解
  • ST7789显示屏驱动库:MicroPython开发者的终极武器
  • 大疆御Air2故障处理全指南
  • AppSync Unified完整使用指南:轻松突破iOS应用签名限制
  • 三菱FX3U码垛算法。 由于梯形图做数据处理比较麻烦。 所以用ST语言写了个码垛放料位的算法
  • 【Dify 1.11.1版本深度测评】:揭秘新功能背后的AI工程化实战价值
  • 【Dify集成Amplitude避坑指南】:90%新手都会忽略的3个关键配置点