我正在尝试使用Android处理为Android和Arduino之间进行双向蓝牙通信。使用serial.begin(9600),我已成功将数据从Android传输到Arduino。通过使用Arduino程序中的SoftwareSerial和bluetooth.begin(9600)代替serial.begin(9600),我成功地将数据从Arduino传输到Android。Android和Arduino之间使用处理的蓝牙通信
但是,当试图使用bluetooth.x命令将数据从Android传输到Arduino时,它不起作用。这里是Arduino代码:
if (bluetooth.available()) // Wait until a character is received
{
char val = (char)bluetooth.read();
//Serial.println(val);
switch(val) // Perform an action depending on the command
{
case 'w'://turn the light on when a 'w' is received
on();
break;
case 'q'://turn the light off when a 'q' is received
off();
break;
//default://otherwise remain in the previous state
//idle();
break;
}
}
on()和off()函数打开和关闭Arduino上的LED。如前所述,这在我使用serial.x命令而不是bluetooth.x命令时有效。另外,我正在使用Ketai for Android进行处理。我正在使用处理2.0.1,Arduino 1.0.5,Android 2.3.6。
下面是相关的代码开始:
#include
SoftwareSerial bluetooth(0,1); //TX 0, RX 1
+1
“Arduino 2.0.5”?你是某种时间旅行者吗? ;) –