平台:Arduino UNO,Arduino Mega2560,HC-05
此处显示详细信息。
在Arduino UNO( Master )中,我进行编码
Serial.print("A 1 2 3 4 5;");
在Arduino Mega2560(从属)中,我进行了编码
void setup()
{
//connect to the PC
Serial.begin(9600);
//connect to the Arduino UNO(By bluetooth)
Serial1.begin(38400);
}
void loop()
{
//its value > 0
Serial.println(Serial1.available());
//output : 128 or 248
Serial.print(Serial1.read());
delay(1000);
}
Serial.available() > 0
的值为true,
但是Serial.print(Serial1.read());
的打印结果是异常。它打印
我想知道原因及其解决方案。谢谢!
答案 0 :(得分:0)
我假设您已确保两个Bluetooth设备均已正确连接并且波特率匹配。 现在,一个问题可能是缓冲区可能已满。在发送方,请提供等于或稍高于接收方的时延。 接下来,在接收器端,将void循环更改为此:
void loop(){
if(Serial1.avaialable() > 0){
char value = Serial1.read();
Serial.println(value);
delay(1000);
}
}