我正在尝试从计算机上的串行端口读取数据。它连接到arduino打印" hi"一遍又一遍。由于某种原因,该程序只返回乱码。代码:
import jssc.SerialPort;
import jssc.SerialPortException;
public class SerialRead {
public static void main(String[] args) {
byte[] x;
SerialPort serialPort = new SerialPort("/dev/cu.usbmodem411");
try {
serialPort.openPort();//Open serial port
serialPort.setParams(9600, 8, 1, 0);//Set params.
byte[] buffer = serialPort.readBytes(10);//Read 10 bytes from serial port
x = serialPort.readBytes(10);
serialPort.closePort();//Close serial port
System.out.println(x);
}
catch (SerialPortException ex) {
System.out.println("aw cwap, someting went wong");
}
}
}
它返回[B @ 60e53b93
答案 0 :(得分:1)
它打印出来的是一个字节数组,这正是你所读到的。您需要使用类似new String(bytes)
的内容进行转换,以获得可读性。