GATT专题3

蓝牙中uuid实现什么功能 ?蓝牙手表中uuid表示什么功能 ?蓝牙手表中有多少个uuid ?

我用最直白、嵌入式开发最实用的方式给你讲清楚:
UUID 在蓝牙里干什么、手表里代表什么、一般有多少个。

1. 蓝牙中 UUID 实现什么功能?

UUID = 全球统一的“功能编号 / 服务编号”

BLE 通信不能只发裸数据,必须按服务(Service)+ 特征(Characteristic)来组织。
UUID 就是给这些服务和特征起的唯一名字,让双方都能看懂:

  • 这是心率服务
  • 这是电池电量
  • 这是固件升级通道
  • 这是按键通知

作用只有一个:
让主机(手机)和外设(手表)能互相识别:这是什么功能,该怎么交互。


2. 蓝牙手表里 UUID 表示什么功能?

手表是 GATT Server(外设),它向外提供一堆服务,每个服务/特征都有 UUID。

常见手表 UUID 对应的功能:

(1)标准 SIG UUID(16位,官方规定)

  • 0x180D 心率服务 Heart Rate
  • 0x2A37 心率测量值
  • 0x180A 设备信息 Device Information
    型号、固件版本、厂商名
  • 0x180F 电池服务 Battery
  • 0x2A19 电池电量百分比
  • 0x1800 通用访问服务 GAP
  • 0x1801 通用属性服务 GATT
  • 0x1812 人体工学服务(按键、寻呼)

(2)自定义 UUID(128位,厂商自己定义)

智能手表几乎都有大量私有 UUID,用来实现:

  • 步数、卡路里、睡眠
  • 血氧、压力、体温
  • 来电/消息通知
  • 闹钟、久坐提醒
  • 找手机、找手表
  • 抬腕亮屏、勿扰模式
  • 固件升级 DFU
  • 时间同步
  • 控制拍照、音乐

简单说:
标准 UUID → 通用功能
自定义 UUID → 手表专属功能


3. 蓝牙手表中有多少个 UUID?

没有固定数量,但行业非常典型的范围是:

服务 UUID(Service)

大约 8~20 个

特征值 UUID(Characteristic)

大约 30~80 个

总 UUID 数量

一般在 40~100 个左右
功能越多的手表(运动健康、支付、语音)UUID 越多。


极简总结(方便记忆)

  1. UUID = 功能的身份证号
  2. 手表里:
    • 标准 UUID → 心率、电池、设备信息
    • 自定义 UUID → 步数、消息、升级、控制等
  3. 数量:
    • 服务:十几个
    • 特征:几十个
    • 总共:几十~一百个左右

如果你告诉我你用的是 Nordic / STM32 / NuttX / 小米手表 哪一类,我可以直接给你列一份真实手表完整 UUID 清单,和你工程里能看到的一模一样。

posted @ 2026-04-08 22:54  wzm888  阅读(0)  评论(0)    收藏  举报