java串口通讯(二)---- RXTX实现串口通讯(环境配置)

1.环境配置

 

     操作系统   下面文件复制到JAVA_HOME\jre\bin中   将RXTXcomm.jar复制到到 jre\lib\ext目录中
Windows 32 位win32\rxtxSerial.dll

RXTXcomm.jar

 

<!-- rxtxcomm -->
<dependency>
    <groupId>org.bidib.jbidib.org.qbang.rxtx</groupId>
    <artifactId>rxtxcomm</artifactId>
    <version>2.2</version>
</dependency>

 

Windows 64 位win64\rxtxSerial.dll
linux 32 位

i686-pc-linux-gnu\librxtxSerial.so

i686-pc-linux-gnu\librxtxParallel.so

linux 64 位x86_64-unknown-linux-gnu\librxtxSerial.so
macmac-10.5\librxtxSerial.jnilib
sparc 32 位
sparc 64 位

2.下载RXTX

  下载链接 :https://download.csdn.net/download/ladymorgana/11244966

  官网下载:http://rxtx.qbang.org/wiki/index.php/Download

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
实现串口通讯modbus-rtu可以使用Java串口通讯rxtx,然后再结合modbus4j库来实现modbus-rtu协议的通信。 下面是一个简单的示例代码: 1. pom.xml中添加依赖 ```xml <dependency> <groupId>com.intelligt.modbus</groupId> <artifactId>modbus4j</artifactId> <version>3.1.4</version> </dependency> <dependency> <groupId>org.rxtx</groupId> <artifactId>rxtx</artifactId> <version>2.2.0</version> </dependency> ``` 2. 配置串口参数 ```java SerialPort serialPort = (SerialPort) portId.open("modbus", 2000); serialPort.setSerialPortParams(9600, SerialPort.DATABITS_8, SerialPort.STOPBITS_1, SerialPort.PARITY_NONE); ``` 3. 创建ModbusMaster ```java ModbusFactory modbusFactory = new ModbusFactory(); ModbusMaster master = modbusFactory.createRtuMaster(serialPort); master.setTimeout(500); master.setRetries(0); ``` 4. 读取寄存器 ```java int slaveId = 1; int startOffset = 0; int numberOfRegisters = 10; ReadInputRegistersRequest request = new ReadInputRegistersRequest(slaveId, startOffset, numberOfRegisters); ReadInputRegistersResponse response = (ReadInputRegistersResponse) master.send(request); if (response.isException()) { // 处理异常 } else { // 处理响应结果 } ``` 5. 写入寄存器 ```java int slaveId = 1; int offset = 0; int value = 1234; WriteRegisterRequest request = new WriteRegisterRequest(slaveId, offset, value); WriteRegisterResponse response = (WriteRegisterResponse) master.send(request); if (response.isException()) { // 处理异常 } else { // 处理响应结果 } ``` 以上就是一个简单的串口通讯modbus-rtu的实现示例,具体实现还需要根据实际情况进行调整。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ladymorgana

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值