BLE广播数据类型表
时间: 2025-01-20 09:40:33 AIGC 浏览: 106
### BLE广播数据类型表及其定义
BLE广播数据类型用于在广播包中携带多种信息,这些信息可以描述设备的功能、服务以及制造商特定的数据等。以下是常见的BLE广播数据类型的列表和其对应的含义:
| 数据类型 (Type) | 描述 |
|-----------------|------|
| `0x01` | Flags – 表明广播包的性质,例如是否可连接、是否可见等[^2] |
| `0x02` 和 `0x03` | Incomplete/Complete List of 16-bit Service UUIDs – 列举部分或全部支持的服务UUID(通用唯一识别码),长度为16位[^4] |
| `0x04` 和 `0x05` | Incomplete/Complete List of 32-bit Service UUIDs – 类似于上述条目,但是UUID长度增加到32位 |
| `0x06` 和 `0x07` | Incomplete/Complete List of 128-bit Service UUIDs – 支持更广泛的应用场景,提供完整的128位UUID表示法 |
| `0x08` 和 `0x09` | Shortened/Complete Local Name – 设备名称的一部分或是整个名字;当空间有限时可以选择缩短版本 |
| `0x0A` | Tx Power Level – 发射功率级别,有助于接收端估算距离或其他目的 |
| `0xFF` | Manufacturer Specific Data – 生产商自定义字段,通常用来传递额外的信息给兼容应用 |
#### 示例代码展示如何解析ADV_DATA中的Flags字段
```python
def parse_flags(flag_byte):
flags = []
if flag_byte & 0b00000001:
flags.append('LE Limited Discoverable Mode')
if flag_byte & 0b00000010:
flags.append('LE General Discoverable Mode')
# 更多标志位解析...
return ', '.join(flags)
flag_value = b'\x02' # 假设这是接收到的一个字节代表flags
print(parse_flags(int.from_bytes(flag_value, byteorder='big')))
```
阅读全文
相关推荐










