我正在读取传感器数据,我需要通过蓝牙发送这些数据,所以我每次使用贵宾/ bleno库来订阅数据值。在这里,我很困惑如何将数据作为缓冲区发送。
我的数据类似于值= 24.3756
所以我需要在缓冲区中写这个:
let buf = new Buffer(2);
buf.writeIntLE(buf);
但是当我转换为ArrayBuffer时,值只显示24(小数点后没有得到)
如何发送完整浮点值并读取为数组缓冲区?
答案 0 :(得分:0)
首先请阅读缓冲区文档here。
然后请不要使用已弃用的函数。如果您需要使用Buffer.alloc
或Buffer.allocUnsafe
创建新缓冲区。当您创建缓冲区时,请确保它可以保存您要在其中写入的数据。接下来请使用合适的方法来编写数据。您正在编写浮点数,然后必须使用Buffer.writeFloatBE/Buffer.writeFloatLE
。如果你做了我提到的所有事情,你最终会得到一个正确的解决方案:
const buffer = Buffer.allocUnsafe(4);
buffer.writeFloatLE(24.3756);