Arduino接收数据没有问题,但是当我通过蓝牙从arduino接收android数据时,会出现奇怪的字符,例如。以下是接收数据的方法代码:
private String convertInputToString() throws IOException {
DataInputStream is = new DataInputStream(btSocket.getInputStream());
char c;
String s = "";
do {
c = (char) is.read();
s += c + "";
} while (c != '\n');
return s;
}
我使用Serial.println传输arduino数据
我使用Arduino Uno和Bluetoot HC-06
答案 0 :(得分:0)
请详细阅读Android开发者指南中的DataInputStream。
输入和输出流以纯字节处理,
Android还提供了读取字节块和创建标准数据类型的方法。
获取数据的正确方法是:
byte[] readStream = new byte[LENGTH];
int howManyBytesInStream;
howManyBytesInStream = is.read(readStream);
您需要的数据存储在 readStream 和
中howManyBytesInStream 是您实际读取的字节数。