android - 通过蓝牙将字符串发送到 Arduino 上的 Android 设备

标签 android python string bluetooth arduino

我正在通过蓝牙向 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/

相关文章:

python - 图遍历,也许是另一种数学?

python - 嵌套 for 循环和 if 条件 pandas 替换

java - Android 数组列表添加值后返回 Null

android - android上的tcp套接字问题

android - 针对库或 SDK(com.google.ads、com.google.android.gms.internal)显示的政策违规问题

android - 安卓apk证书丢失。我还没有注册 Google Play App Signing

python - hasattr() 与 try-except block 处理不存在的属性

java - 返回所有满足条件的字符串值

java - 我应该使用 charAt 还是 toCharArray?

Python如何一行导入和使用模块