我正在使用带有 xlively 的 arduino v1.0.3 来上传传感器数据,但它只上传 2 个小数位。有没有办法改变这个(需要 3 或 4 个小数位)谢谢
XivelyDatastream datastreams[] = {
XivelyDatastream(sensorId, strlen(sensorId), DATASTREAM_FLOAT),
};
.
.
.
datastreams[0].setFloat(pres);
首先,我想指出大多数 Arduino 板使用 8 位 AVR 微控制器,它们没有浮点单元 (FPU)。编译器将在软件中添加执行浮点运算的函数,这会增加代码大小并降低性能。据我所知,目前可用的基于 ARM 的 Arduino 板也没有 FPU。
更具体地说,Arduino 的 Xively 库正在使用print()
method,如果您需要更多小数位,它可以选择第二个参数。最简单的方法是修改第 165 到 168 行XivelyDatastream.cpp
以执行以下操作:
case DATASTREAM_FLOAT:
count += aPrint.print(_value._valueFloat, 4);
break;
};