如何阅读特征描述符

时间:2019-01-27 06:39:37

标签: bluetooth dart bluetooth-lowenergy

我正在与BLE服务器连接,并且第一个尝试是查看服务0x1818-特征0x2A65的响应,并找出此链接所支持的循环电源功能

https://www.bluetooth.com/specifications/gatt/viewer?attributeXmlFile=org.bluetooth.characteristic.cycling_power_feature.xml

我得到的是这个

[134,3,1,0]

我已阅读文档约30次,但仍无法弄清楚如何将其转换为有用的内容。

如何解析该响应并将其映射到功能,以确定BLE服务/服务器支持什么?

1 个答案:

答案 0 :(得分:3)

您发送的链接表明“循环功率特征”字段是32位的,并且以LSB优先。因此,应该将您的4个字节转换为二进制(首先从MSB开始):

  • 'd0→'b0000_0000
  • 'd1→'b0000_0001
  • 'd3→'b0000_0011
  • 'd134→'b1000_0110

一起获得(位31..0):'b00000000_00000001_00000011_10000110

在链接中,遍历每个位字段的含义,然后查看它是True还是False。例如:

  • 位0,值:0→“支持踏板功率平衡”为False
  • 位1,值:1→“支持的累计转矩”为True

以此类推。