我使用 Pro Mini 作为 I2C 从机,它计算双精度。这个 double 由 ESP8266 WiFi 模块请求,并通过 I2C 逐字节发送。
现在我试图在另一端重新组装双,但它不起作用。当前在 ESP8266 上运行的代码:
// ABOVE SETUP
union {
byte bytes[4];
double value;
} bytedouble;
// IN LOOP
while(Wire.available()){
byte read = Wire.read();
bytedouble.bytes[num] = read;
num++;
}
Serial.println(bytedouble.value); // Returns ovf/overflow
我发现double
Arduino Pro Mini 上的 a 是 4 个字节,但 ESP8266 上是 8 个字节。我可以转换这个吗?