- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我编写了一个连接到心率模型的程序,但我不知道如何解释数据。以下是从第一个输出开始的示例:
heart rate is : 16-40-15-04-6D-02-8C-01-0C-04-24-04-AB-03-7B-02-B4-01
heart rate is : 16-40-20-04
heart rate is : 16-40-8F-03
heart rate is : 16-40-10-04
...
heart rate is : 16-40-F7-03
heart rate is : 16-40-05-04
heart rate is : 16-40-31-04
heart rate is : 16-40-F8-02-47-01
heart rate is : 16-40-A5-03
...
heart rate is : 16-40-D4-02
heart rate is : 16-40-FE-03
heart rate is : 16-40-15-05
heart rate is : 16-3C-97-03
heart rate is : 16-3D-64-03-78-03
heart rate is : 16-3D-4F-04
heart rate is : 06-3D
...
heart rate is : 16-3E-3D-04
heart rate is : 16-3E-17-04-78-03
这是获取和转换数据的代码:
void hrMeasurementChanged( GattCharacteristic sender, GattValueChangedEventArgs eventArgs)
{
byte[] hrData = new byte[eventArgs.CharacteristicValue.Length];
Windows.Storage.Streams.DataReader.FromBuffer(
eventArgs.CharacteristicValue).ReadBytes(hrData);
var hrValue = BitConverter.ToString(hrData);
Debug.WriteLine("heart rate is : " +hrValue);
}
此页面对此进行了解释,但我不确定如何解释数据: https://www.bluetooth.com/specifications/gatt/viewer?attributeXmlFile=org.bluetooth.characteristic.heart_rate_measurement.xml
谢谢。
最佳答案
heart rate is : 16-40-20-04
第一个字节是0x16
,它是heart_rate_measurement
的Flags
值字段。其二进制形式为0001_0110
,第一位(最低有效位)为Heart Rate Value Format
位,这里为0
表示心脏Flags
后面由一个字节表示的速率。此处,心率为 0x40
,即每分钟 64
次心跳 (bpm)(十进制形式为 64
)。第四位是RR-Interval
位,这里是1
,表示存在一个或多个RR-Interval
值。 RR-Interval
值由两个字节表示。这里,有一个RR-Interval
值,它是0x0420
(按照LSO到MSO的顺序)。
heart rate is : 16-40-15-04-6D-02-8C-01-0C-04-24-04-AB-03-7B-02-B4-01
从0x15
到末尾有八个RR间隔值。
heart rate is : 06-3D
Flags
值字段的第四位是RR-Interval
位,这里是0
,表示RR-Interval
值不存在。所以只有心率值:0x3D
。
另请参阅关贸总协定 heart rate characteristic specification
关于UWP GATT 心率监测器特征值解读,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38818969/
我正在尝试在 gatt 连接并成功发现服务后立即读取特征。但在 onCharacteristicRead gatt 回调中收到错误 15(0x0f,GATT_INSUFFICIENT_ENCRYPTI
我有代码连接到广告自定义服务的自定义 BLE 服务器设备,然后尝试发现它提供的所有服务。 代码适用于 Android 5.1 的 Nexus 5 三星 SM-T320 Android 4.4.2 ZT
我尝试通过蓝牙低功耗 GATT 模式将 android 连接到 linux。 Bluez 中有一个示例代码:btgatt-server.c ,我用它作为服务器。 Android 端为 Android
我的问题很简短 - 在 Zephyr 文档中,我找不到我的问题的答案(这让我感到惊讶)。 一个 GATT 客户端是否可以连接到多个 GATT 服务器? 现在我正在使用两块板来计算一些东西(一个作为服务
我的目标是在 Ubuntu 14.04 上使用 BlueZ 4.101(不是 BlueZ 5.X)通过 USB BLE Dongle(Cambridge Silicon Radio CSR8510 A
我编写了一个连接到心率模型的程序,但我不知道如何解释数据。以下是从第一个输出开始的示例: heart rate is : 16-40-15-04-6D-02-8C-01-0C-04-24-04-AB-
我开发了两个实现 GATT 角色的应用程序:服务器和客户端。就我而言,GATT 服务器也是 GAP 外围设备,GATT 客户端是 GAP 中心。 我可以将客户端连接到服务器/从服务器断开连接,但是当我
BLE 设备(脉搏计)的特性值始终相同。信号转到onCharacteristicChanged,但值没有改变,尝试通过不同的方式获取该值。 @Override public void onServic
我正在尝试编写一个应用程序来通过低功耗蓝牙发送消息,然后通过我的外围设备中的 UART 传递这些消息。我已经按照步骤 here应用程序扫描并成功找到设备。但是,使用 BluetoothGatt = B
我一直在研究 BT 4.x (LE) 规范,试图弄清楚这是否可能(没有配对/预兆的事件)。 如果可能的话,有没有人有洞察力(最好链接到规范)? 最佳答案 正如 Mike Petrichenko 评论的
我在这里有一个更广泛的问题,所以如果有人可以向我指出可以解释这一点的文档或文章,那就足够了。不用说,一天的谷歌搜索让我无处可去,我可以伸出援助之手。 我正在连接到 BeagleBoard使用 Blue
我正在为 Android 手机和 Android watch (wearOS) 编写应用程序。这些应用程序将通过蓝牙相互通信。基本上,Android 手机上的应用程序将与 WearOS 设备绑定(bi
我正在研究与 GATT 相关的低功耗蓝牙 (BLE) 中可用的安全类型。更具体地说,使用指定不同安全级别(低、中、高)的 gatttool 时会执行哪些操作?我的理解是BLE中的安全管理器支持4种不同
我正在为 Android 手机和 Android watch (wearOS) 编写应用程序。这些应用程序将通过蓝牙相互通信。基本上,Android 手机上的应用程序将与 WearOS 设备绑定(bi
我正在尝试在树莓派上使用 go 来查询蓝牙低功耗设备。它是功能性的,我可以连接到我想要的设备并迭代连接设备的服务和特性。现在我只是想简化事情,只是读/写我感兴趣的值。它不起作用。 代码: func o
我正在尝试构建一个使用 BluetoothLE 的 Android 应用程序。在教程中,他们使用 128 位 UUID,但我只有 16 位 UUID。我必须使用服务 UUID 和蓝牙基地创建一个新的
我正在开发一个带有 GATT 服务器的 Android Things 应用程序(Dev Preview 6.1,Raspberry Pi)。当连接的客户端应用程序断开连接时,我的设备已停止广告。但是,
我一直在尝试使用 Glucose service 从 BLE 设备读取葡萄糖测量记录.我能够成功连接到设备并在获取新记录时读取它们,但是当我请求以前记录的列表时,我收到状态为 129 的回调(“GAT
我正在开发一个与自定义蓝牙设备通信的 Android 应用程序。调用 BluetoothGatt.Disconnect() 后,我看到调用了 OnConnectionStateChange 回调,新状
我已经创建了一个 BLE GATT 服务器的 android 应用程序,但我找不到在哪里写 GATT 服务器的名称,我的意思是搜索中出现的设备名称。 我都试过了 https://github.com/
我是一名优秀的程序员,十分优秀!