/**
* {@inheritDoc}
*
* Any data received from a serial event, is immediately passed on to the
* command receiver thread.
*/
@Override
public void serialEvent(SerialPortEvent event) {
if (event.getEventType() != SerialPortEvent.DATA_AVAILABLE) {
return;
}
InputStream is = null;
try {
lastEventTimestamp = System.currentTimeMillis();
is = port.getInputStream();
int available = is.available();
if (available == 0) {
log.warn("Received data available event, but no data was found!");
return;
}
byte[] buffer = new byte[available];
is.read(buffer, 0, available);
bufferQueue.add(buffer);
if (available != 1 || buffer[0] != 13) {
// don't print single CR's in log..
log.trace("Received: {}", new String(buffer));
}
} catch (IOException e) {
log.error("Error receiving data on serial port {}: {}",
port.getName(), e.getMessage());
}
}
NikobusInterface.java 文件源码
java
阅读 19
收藏 0
点赞 0
评论 0
项目:openhab-hdl
作者:
评论列表
文章目录