Java 分析心率监测器返回的数据
我试图读取通过蓝牙传输的心率监测器数据,但我真的不知道如何读取心率监测器返回的字节 可能每个供应商都有自己的方式将数据包装成字节。但是如何将这些字节转换成可读的格式,以便分析其中的变化?Java 分析心率监测器返回的数据,java,android,heartbeat,Java,Android,Heartbeat,我试图读取通过蓝牙传输的心率监测器数据,但我真的不知道如何读取心率监测器返回的字节 可能每个供应商都有自己的方式将数据包装成字节。但是如何将这些字节转换成可读的格式,以便分析其中的变化? 比如ASCII值或一些十六进制值 我尝试了MyTrack应用程序的代码,但这对我不起作用 我试图在Android中读取字节,目前我正在获取这些数据,但不知道哪个字段代表什么 55 04 00 38 00 15 af 14 b0 00 38 00 13 b1 55 04 00 38 00 1
比如ASCII值或一些十六进制值 我尝试了MyTrack应用程序的代码,但这对我不起作用 我试图在Android中读取字节,目前我正在获取这些数据,但不知道哪个字段代表什么
55 04 00 38 00 15 af
14 b0 00 38 00 13 b1
55 04 00 38 00 13 b1
55 04 00 38 00 12 b2
除非您能找到一些有关心率监视器传输规范的文档,否则您将需要分析数据并破译格式。一种方法是在心率监视器发送的数据中创建受控的变化(例如在休息的人和慢跑的人之间交换),然后查找数据中的差异和模式
至少,我希望数据由时间和心率值组成,但肯定还有其他字段,如报头、数据包标识符和长度以及校验和值。希望您的心率监视器遵循此处定义的数据规范: 据我所知,以下是如何应用该文档中的信息:
包括执行这些转换的代码,它对我有用。我只是想在实现之前尝试理解文档 我没有查看您的数据,但我从ANT解码了一些监视器,ANT+数据流包括节拍之间的时间(以毫秒为单位)以及最后三次节拍的小时数。建议从一致的人力资源部门获取数据是最好的开始。然后请记住,显示的数字可能从三到四次四舍五入。是的,但我问的是,当我打印字节时,我得到一些无法读取的值,如何解密?你看这些值,你想,你猜,你调整,你尝试,你测试。冲洗并重复,直到满意为止。解码未知数据格式时没有快捷方式。辛苦的劳动就是方法。你所拥有的只是字节,所以把它想象成试图破解密码。正如@bos所说,你只需要不断尝试。请重新阅读我的答案并按照建议进行操作。感谢您添加数据,但您还需要更多。以已知的心率记录数据。对于上面的数据,如果你的心率在177左右,那么我猜最后一个字节代表心率(af,b1,b2),接下来的两个字节可能是时间。你需要更多的数据和测试才能确定。@Nate,不,那些比特并不代表心跳,我尝试了很多组合,甚至通过减法、加法等,但仍然没有找到解码的方法