Tag: serial port

当我使用NetBeans 6.8和Eclipse运行此代码时,为什么输出会有所不同?

当我使用Eclipse和NetBeans 6.8运行以下代码时。 我想在我的计算机上看到可用的COM端口。 在Eclipse中运行时,它返回所有可用的COM端口,但在NetBeans中运行时,它似乎找不到任何端口.. public static void test(){ Enumeration lists=CommPortIdentifier.getPortIdentifiers(); System.out.println(lists.hasMoreElements()); while (lists.hasMoreElements()) { CommPortIdentifier cn=(CommPortIdentifier)lists.nextElement(); if ((CommPortIdentifier.PORT_SERIAL==cn.getPortType())) { System.out.println( “Name is serail portzzzz ” + cn.getName() + ” Owned status ” + cn.isCurrentlyOwned()); try{ SerialPort port1=(SerialPort)cn.open(“ComControl”,800000); port1.setSerialPortParams( 9600, SerialPort.DATABITS_8, SerialPort.STOPBITS_1, SerialPort.PARITY_NONE); System.out.println(“Before get stream”); OutputStream out=port1.getOutputStream(); InputStream input=port1.getInputStream(); System.out.println(“Before write”); out.write(“AT”.getBytes()); System.out.println(“After write”); int […]

使用Java自动检测哪个Com Port连接到USB GSM调制解调器

我写了一个Java应用程序,它从USB GSM调制解调器读取和发送SMS消息。 我正在使用SMSLib(使用JavaCommAPI),它在Windows上运行。 我需要传入COM PORT,调制解调器似乎已连接到。 到目前为止,我一直在使用Windows设备管理器手动查找COM PORT,并将其写入属性文件。 我想知道是否有办法检测哪个COM PORT,调制解调器以编程方式连接? 它可以省去每次查找它的麻烦 如果我有时拔下/重新插入端口号会更改 谢谢!!

如何使用Java获取我的电脑中可用串口的列表?

我只是运行一些代码来获取我的cmputer中的可用端口列表,当我有3个免费的COM端口时,它返回了我的错误。 我该如何解决这个问题? 我的代码: public static void main(String[] args) { //SerialParameters params=new SerialParameters(); // System.out.println(CommPortIdentifier.PORT_SERIAL ); Enumeration portList = CommPortIdentifier.getPortIdentifiers(); System.out.println(portList.hasMoreElements()); while(portList.hasMoreElements()){ System.out.println(“Has more elements”); CommPortIdentifier portId = (CommPortIdentifier) portList.nextElement(); if (portId.getPortType() == CommPortIdentifier.PORT_PARALLEL) { System.out.println(portId.getName()); } else{ System.out.println(portId.getName()); } } } 输出:false

CommPortIdentifier.getPortIdentifiers为空

我正在构建一个使用Java Communication API javax.comm通过串行端口进行通信的简单应用程序。 这是我写的java main方法中的一些代码: CommPortIdentifier cpi = null; Enumeration e = CommPortIdentifier.getPortIdentifiers(); while (e.hasMoreElements()) { try { cpi = (CommPortIdentifier) e.nextElement(); } catch (NoSuchElementException n) { } System.out.println(cpi.getName()); } 即使我在运行此程序时连接到COM 4端口,枚举e也始终为空。 另外,运行此代码: portRead = CommPortIdentifier.getPortIdentifier(“COM8”); 导致抛出NoSuchPortException 我想我已正确完成安装部分并将属性文件win32com.dll文件放在正确的位置。 你知道问题是什么吗? 谢谢

64位Windows上的Javax.comm API

我正在使用javax.comm API来帮助我的程序通过串口与硬件进行通信。 我正在使用Windows 7和NetBeans IDE 9。 我使用常见的Java程序来检查我的PC上的可用端口。 程序编译并运行没有错误。 然而,它什么都没有。 如何在Windows上使用javax.comm API? 似乎win32com.dll不适用于64位操作系统。

请求com端口时返回相同的请求

我试图通过COM端口发送AT命令,但只重新发送相同的命令。 package SerialConnections; import jssc.SerialPort; import jssc.SerialPortEvent; import jssc.SerialPortEventListener; import jssc.SerialPortException; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import static ru.telemetria.qa.utils.Utilities.waitTime; public class M234Serial { private static Logger log = LoggerFactory.getLogger(M234Serial.class); private SerialPort serialPort; private byte[] receivedData; private boolean isReceived; public M234Serial() throws Exception { serialPort = new SerialPort(“COM55”); } public void sendCommand() throws Exception { open(); String […]