Я пытаюсь установить соединение между моим компьютером и arduino uno с помощью Java Simple Serial Connector. Я пытаюсь сделать это, используя приведенный ниже код. Как-то его не работает (светодиодный диод, подключенный к контакту 7 arduino, не включается во время работы моей программы, но когда я использую серийный монитор программного обеспечения artuino, он это делает.). Кто-нибудь знает, почему?Соедините компьютер с arduino, используя простой последовательный соединитель Java
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);
}
}
Я бы подождал немного после отправки байтов перед закрытием порта, попробуйте Thread.Sleep betw een writeBytes и closePort –
Это не помогает:/ – HTF
Хорошо, ребята. чтобы сделать эту работу, вы должны поставить Thread.sleep между serialPort.setParams и serialPortwriteBytes :) Спасибо за ответ Petter Friberg – HTF