App Inventor和arduino编码,蓝牙通信
App Inventor and arduino encoding, bluetooth communication
我在 App Inventor 中制作了一个应用程序,可以将文本发送到 arduino。文本的类型为:“1,1,2,2,0,0,0,2,1,0
”。但是在arduino端我收到这样的东西:x€xx€xx€xx€...
为了通信,我使用 HC-05 蓝牙模块。 arduino 是 mega adk。我尝试将 App Inventor 中的编码设置为 UTF-8 和 ASCII。有没有办法在不改变arduino代码的情况下做到这一点?
arduino 代码:
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
Serial1.begin(38400);
Serial.println("Starting");
}
void loop() {
if (Serial1.available()>0) {
String data;
data = Serial1.readString();
Serial.println(data);
}
delay(2000);
}
App Inventor 阻止(发送):
我不认为这是你的编码。尝试将 Serial1 的波特率也更改为 9600。 (你也应该配置你的蓝牙模块以这个波特率工作)另外,我建议你这样做:
if(Serial1.available()) {
Serial.print((char)Serial1.read());
}
如果这些也不起作用,请确保您的蓝牙配置正确,设备已付款并连接等。另外,您可以下载并使用 GoogleStore 中已有的串行蓝牙终端,以确保您收到字节先正确。
我在 App Inventor 中制作了一个应用程序,可以将文本发送到 arduino。文本的类型为:“1,1,2,2,0,0,0,2,1,0
”。但是在arduino端我收到这样的东西:x€xx€xx€xx€...
为了通信,我使用 HC-05 蓝牙模块。 arduino 是 mega adk。我尝试将 App Inventor 中的编码设置为 UTF-8 和 ASCII。有没有办法在不改变arduino代码的情况下做到这一点?
arduino 代码:
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
Serial1.begin(38400);
Serial.println("Starting");
}
void loop() {
if (Serial1.available()>0) {
String data;
data = Serial1.readString();
Serial.println(data);
}
delay(2000);
}
App Inventor 阻止(发送):
我不认为这是你的编码。尝试将 Serial1 的波特率也更改为 9600。 (你也应该配置你的蓝牙模块以这个波特率工作)另外,我建议你这样做:
if(Serial1.available()) {
Serial.print((char)Serial1.read());
}
如果这些也不起作用,请确保您的蓝牙配置正确,设备已付款并连接等。另外,您可以下载并使用 GoogleStore 中已有的串行蓝牙终端,以确保您收到字节先正确。