java使用rxtx串口通信配置及简单示例
linux-dash
A beautiful web dashboard for Linux
项目地址:https://gitcode.com/gh_mirrors/li/linux-dash
免费下载资源
·
java使用rxtx串口通信配置及简单示例
1下载
官方地址:http://rxtx.qbang.org/wiki/index.php/Download,官方下载地址中有版本和类型选择,分window和linux等,根据需要下载。
fizzed网下载地址:http://fizzed.com/oss/rxtx-for-java该资源下载地址网络比官网通畅,其中也有各个版本和类型的选择
2配置
将下载到zip解压,取其中rxtxSerial.dll和 RXTXcomm.jar 文件,拷贝到如下目录中。%JAVA_HOME%表示jdk的安装根目录
a.复制rxtxSerial.dll 到%JAVA_HOME%\jre7/bin/
b.复制RXTXcomm.jar 到%JAVA_HOME% \jre7/lib/ext/
3 简单代码示例
package com.supre.idisk.util;
import java.io.IOException;
import java.io.OutputStream;
import javassist.bytecode.ByteArray;
import gnu.io.CommPortIdentifier;
import gnu.io.NoSuchPortException;
import gnu.io.PortInUseException;
import gnu.io.SerialPort;
import gnu.io.UnsupportedCommOperationException;
public class TestRxtx {
public static final byte[] init = new byte[] { 0x1B, 0x40 };
public static final byte[] clean = new byte[] { 0x0C };
public static final byte[] pre_display = new byte[] { 0x1B, 0x51, 0x41 };
public static final byte[] post_display = new byte[] { 0x0D };
public static void displayCustomerScreen(String data, byte[] mode) {
try {
CommPortIdentifier portIdentifier = CommPortIdentifier.getPortIdentifier("COM2"); //串口号
SerialPort serialPort = (SerialPort) portIdentifier.open("test",5000); //使用者 和 最大响应时长(ms)
serialPort.setSerialPortParams(115200, //波特率
SerialPort.DATABITS_8, //校验位
SerialPort.STOPBITS_1, //数据位
SerialPort.PARITY_NONE); //停止位
serialPort.setFlowControlMode(SerialPort.FLOWCONTROL_NONE);
try {
OutputStream outputStream = serialPort.getOutputStream();
if (mode != null) {
outputStream.write(mode);
}
if (data != null) {
outputStream.write(pre_display);
outputStream.write(data.getBytes());
outputStream.write(post_display);
}
outputStream.flush();
outputStream.close();
} catch (IOException e) {
e.printStackTrace();
} finally {
serialPort.close();
}
} catch (NoSuchPortException e) {
e.printStackTrace();
} catch (PortInUseException e) {
e.printStackTrace();
} catch (UnsupportedCommOperationException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
displayCustomerScreen(null,"abffff0000010d0a".getBytes());
}
}
参考博文: http://my.oschina.net/baishi/blog/170014
GitHub 加速计划 / li / linux-dash
10.39 K
1.2 K
下载
A beautiful web dashboard for Linux
最近提交(Master分支:2 个月前 )
186a802e
added ecosystem file for PM2 4 年前
5def40a3
Add host customization support for the NodeJS version 4 年前
更多推荐
已为社区贡献3条内容
所有评论(0)