我正在通过蓝牙向 Android 设备发送字符串。
我有一个 Arduino 开发板,带有一个 Synapse SNAP RF100 模块和一个连接到串行端口的 RN42 蓝牙模块。
数据从RF100模块读取并写入Arduino上的RN42使用
Serial3.write(Serial2.read());
运行在SNAP上的代码是用SNAPpy(Python的一个子集)编写的,代码如下:
photval = readADC(2)
myString = "Photocell Value: " + str(photoval)
print myString
打印的字符串被写入 RN42,Android 设备接收并显示在 TextView
中。
以上代码让Android设备显示Photocell:
如您所见,photoval
丢失了。
该字符串在 Python 端符合预期 - 因此要么是蓝牙正在改变它,要么是 Android 正在改变它。
有人知道是什么原因造成的吗?
最佳答案
问题出在 Arduino 代码上——我通过迭代读取传入数据来修复它:
void loop() {
char rxdata[14];
if (Serial2.available() > 0){
Serial2.readBytes(rxdata, 14);
Serial3.write(rxdata);
}
}
我现在可以看到我期望的完整字符串。
关于android - 通过蓝牙将字符串发送到 Arduino 上的 Android 设备,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23012442/