gpt4 book ai didi

c++ - 通过 Xbee 网络传输浮点值

转载 作者:塔克拉玛干 更新时间:2023-11-03 02:04:46 26 4
gpt4 key购买 nike

我在通过简单的 2 节点 Xbee 网络传输 float 时遇到问题。

我知道 Xbee 系统通过字节传输数据包,因此我可以发送一个字符,但我无法发送除此之外的任何内容,而且我似乎无法在任何地方找到任何文档。

这是我当前的(基本)代码。

发件人:

(... appropriate setup...)
void loop()
{
sensorValue = analogRead(analogInPin);
sensorValueTemp = sensorValue / 9.31; //LM35 measurement into Centigrade
Serial.print(sensorValueTemp);
delay(1000);
}

接收者:

(...appropriate setup...)
void loop() {
lcd.setCursor(0, 0);
if (Serial.available() > 0) {
lcd.print(incomingByte);
}
delay(1000);
}

关于让 float 成功传输的任何提示都很棒?或者如果它已经在正常传输,如何正确读取它?

谢谢

最佳答案

您可以以字节为单位发送float,并在接收方重建float

以下示例可能对您有所帮助:

发送方:

float x = 1128.476;

char b[sizeof(x)];
memcpy(b, &x, sizeof(x));

// Iterate over b and send bytes
// [...]

接收方:

float y = 0;

char b[sizeof(x)];

// Store 4 bytes representing the float into b
// [...]

// Rebuild the float
memcpy(&y, b, sizeof(y));

最后,接收方有 float y,它与发送方的 float x 具有相同的表示。

关于c++ - 通过 Xbee 网络传输浮点值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10149589/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com