我试图通过蓝牙设置Arduino和Mac之间的串行通信,但有问题。
我的环境是:
首先,我编写了如下所示的arduino,如this tutorial所示。
/***********************
Bluetooth test program
***********************/
int counter = 0;
int incomingByte;
void setup() {
Serial.begin(115200);
}
void loop() {
// see if there's incoming serial data:
if (Serial.available() > 0) {
// read the oldest byte in the serial buffer:
incomingByte = Serial.read();
// if it's a capital R, reset the counter
if (incomingByte == 'R') {
Serial.println("RESET");
counter=0;
}
}
Serial.println(counter);
counter++;
delay(250);
}
当Arduino连接USB时,它工作得很好。 (Arduino控制台接收数字序列,如1,2,3,4 ......带换行符。)
然后我将Arduino UNO和Bluetooth Mate连接到一些电线,并成功与Mac配对。
当我在iTerm上运行这一行时,我只收到了问号序列。
$ sudo cu -s 115200 -l /dev/tty.name-of-port
Connected.
??????????????????????????????
我也试过screen /dev/tty.name-of-port
或者Arduino控制台,但结果都是一样的。
如何解决这些乱码信号并接收正确的字符? 谢谢。
答案 0 :(得分:0)
也许是因为波特率很高。尝试将其减少到9600.我感觉115200对于串行连接来说太多了。