有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

使用Java简单串行连接器将pc与arduino连接

我试图用Java简单串行连接器连接我的电脑和arduino uno。我试着用下面列出的代码来做。不知怎的,它不工作(连接到arduino引脚7的led二极管在运行我的程序时没有打开,但当我使用artuino软件的串行监视器时,它会打开)。有人知道为什么吗

Java项目代码:

    import jssc.SerialPort;
import jssc.SerialPortException;

public class Main {

    public static void main(String[] args) {
        //In the constructor pass the name of the port with which we work
        SerialPort serialPort = new SerialPort("COM3");
        try {
            //Open port
            serialPort.openPort();
            //We expose the settings. You can also use this line - serialPort.setParams(9600, 8, 1, 0);
            serialPort.setParams(SerialPort.BAUDRATE_9600,
                                 SerialPort.DATABITS_8,
                                 SerialPort.STOPBITS_1,
                                 SerialPort.PARITY_NONE);
            //Writes data to port
            serialPort.writeBytes("Test".getBytes());
            //Closing the port
            serialPort.closePort();
        }
        catch (SerialPortException ex) {
            System.out.println(ex);
        }
    }
}`

Arduino代码:

void setup() {
  Serial.begin(9600); //Ustawienie prędkości transmisji
  pinMode(7, OUTPUT);
  digitalWrite(7, LOW);
}

void loop() {
  if( Serial.available() > 0){
    digitalWrite(7, HIGH);

  }

}

共 (1) 个答案

  1. # 1 楼答案

    我觉得你的密码错了

    我是这样做的

    https://www.arduino.cc/en/Serial/Write

    Serial.write(val)
    

    连载。写(str) 电视连续剧写(buf,len)

    val:作为单个字节发送的值 str:作为一系列字节发送的字符串 buf:以字节序列形式发送的数组 len:缓冲区的长度