我通过USB端口将Arduino Board连接到Raspberry。使用处理代码我想读取arduino发出的70个字节。如果我在我的PC窗口上使用这个程序它可以工作,但是使用Raspberry我从Processing获得的数据与arduino发出的数据不同。这是读取串口的处理代码:
import processing.serial.*;
Serial uart;
byte[] codice= new byte[70];
void setup() {
uart= new Serial(this, Serial.list()[1], 9600);
}
void draw() {
if (uart.available()>0) {
codice=uart.readBytes();
println(codice);
}
}
在我的情况下,串口是" dev / ttyUSB0"。我也用这种方式尝试了python:
>>> import serial
>>> ser = serial.Serial('/dev/ttyUSB0', 9600)
>>> while True:
... print ser.readline()
同样在python中也有同样的错误。我也尝试用相同的结果更改波特率(115200)。
答案 0 :(得分:0)
拔下您的Arduino,使用ls /dev/tty*
进行搜索并将其插入。
如果您现在使用ls /dev/tty*
再次搜索,则会看到一个新设备,例如/dev/ttyACM0
。此外,您需要arduino驱动程序来模拟COM端口sudo apt-get update && sudo apt-get install arduino
。
Arduino代码
void setup(){
Serial.begin(9600);
}
void loop(){
Serial.println(“Hello Raspi”);
delay(3000);
}
Raspberry Pi Code-Snippet
import serial
ser = serial.Serial('/dev/ttyACM0', 9600)
尝试此页面上的python示例:How to attach an Arduino?