免费wap建站的网址是什么了,网站开发 接个支付支付难吗,付费软件免费拿,wordpress 文章不显示什么是 jSerialComm#xff1f;
jSerialComm 是一个 Java 库#xff0c;旨在提供一种独立于平台的方式来访问标准串行端口#xff0c;而无需外部库、本机代码或任何其他工具。它旨在替代 RxTx 和#xff08;已弃用的#xff09;Java Communications API#xff0c;具有更…什么是 jSerialComm
jSerialComm 是一个 Java 库旨在提供一种独立于平台的方式来访问标准串行端口而无需外部库、本机代码或任何其他工具。它旨在替代 RxTx 和已弃用的Java Communications API具有更高的易用性、对超时的增强支持以及同时打开多个端口的能力。
官方网站
http://fazecast.github.io/jSerialComm/
jar包信息
jSerialComm.jar文件地址 maven jar 包 引入在项目根目录引入lib 将jar包放在下面
dependencygroupIdjSerialComm/groupIdartifactIdjSerialComm/artifactIdsystemPath${project.basedir}/lib/jSerialComm-2.11.0.jar/systemPathversion2.11.0/versionscopesystem/scope
/dependency如何在我自己的项目中使用这个库
此库最方便的功能之一是它允许您简单地将JAR 文件包含在自定义项目中它将自动选择并加载适合您的平台和架构的正确本机库。因此您只需将 jSerialComm.jar 文件复制到项目目录中并链接到它就像链接到任何其他 JAR 文件一样即可使用此库。
要访问项目中库的内容请确保将其import com.fazecast.jSerialComm.*放入 Java 文件中。然后您可以通过调用以下静态方法生成系统上所有可用串行端口真实或虚拟的列表
SerialPort.getCommPorts()这将返回一个 SerialPort 对象数组您可以对其进行迭代。有关此库及其方法的完整概述请参阅Javadoc 库参考。或者如果您已经知道要使用的端口的端口描述符例如“/dev/ttyS0”或“COM3”或者如果您将此库与伪终端一起使用例如“/dev/pts/14”则可以使用以下静态方法创建 SerialPort 对象
SerialPort.getCommPort(String portDescriptor)Linux 用户须知在 Linux 中串行端口访问仅限于某些用户和组。要启用用户访问您必须打开终端并输入以下命令然后 jSerialComm 才能访问系统上的端口。如果某些命令失败请不要担心。并非所有 Linux 发行版都存在所有这些组。请注意此过程只能对每个用户执行一次
sudo usermod -a -G uucp username
sudo usermod -a -G dialout username
sudo usermod -a -G lock username
sudo usermod -a -G tty username具体方法很简单 打开对应的串口对应波特率 去收发数据就可以了
package org.gateway.controller;
import com.fazecast.jSerialComm.SerialPort;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;RestController
public class TestController {GetMapping(/test)public void test3() throws InterruptedException {SerialPort comPort SerialPort.getCommPorts()[0]; // 获取第一个可用的串口comPort.openPort(); // 打开串口comPort.setBaudRate(9600); // 设置波特率Thread.sleep(2000);// 发送数据String message opens;comPort.writeBytes(message.getBytes(), message.length());Thread.sleep(500);// 读取数据byte[] readBuffer new byte[1024];int numRead comPort.readBytes(readBuffer, readBuffer.length);if (numRead 0) {System.out.println(Received: new String(readBuffer, 0, numRead));}comPort.closePort(); // 关闭串口}
}