Я пытаюсь отправить данные на антенну Xbee с последовательным портом на Java, используя библиотеку jssc.Не удается отправить данные на последовательный порт с помощью jssc без закрывающего порта?
Я хочу иметь возможность отправлять и принимать несколько пакетов данных в одном и том же соединении.
Проблема заключается в том, что мой код отправляет мой первый пакет только после закрытия порта, или я заканчиваю программу.
я на основе моего кода на учебник по этой ссылке: http://www.codeproject.com/Tips/801262/Sending-and-receiving-strings-from-COM-port-via-jS
Вот мой код:
serialPort = new SerialPort("COM4");
try {
// opening port
serialPort.openPort();
serialPort.setParams(SerialPort.BAUDRATE_38400,
SerialPort.DATABITS_8,
SerialPort.STOPBITS_1,
SerialPort.PARITY_NONE);
serialPort.setFlowControlMode(SerialPort.FLOWCONTROL_RTSCTS_IN |
SerialPort.FLOWCONTROL_RTSCTS_OUT);
serialPort.addEventListener(new PortReader(), SerialPort.MASK_RXCHAR);
byte[] fifo = new byte[13];
fifo[0] = 0x7E;
fifo[1] = 0x00;
fifo[2] = 0x09;
fifo[3] = 0x01;
fifo[4] = 0x01;
fifo[5] = 0x00;
fifo[6] = 0x01;
fifo[7] = 0x00;
fifo[8] = 0x54;
fifo[9] = 0x65;
fifo[10] = 0x73;
fifo[11] = 0x74;
fifo[12] = 0x5C;
result = serialPort.writeBytes(fifo);
Событие для приема данных работает, моя единственная проблема заключается в отправке. Я уже проверил скорость передачи в бодах другого устройства, с которым разговаривает Xbee.
EDIT
Когда я подключить XBee к FT232 в UART (http://www.seeedstudio.com/depot/UartSBee-V5-p-1752.html), возникает такая ситуация.
Когда я подключаю напрямую RS-232 к XBee, передача отправляется немедленно.
Спасибо за ваш ответ! Я подождал почти минуту, прежде чем закрыть порт. Я проверю это. – Flyingmath