问题描述
我开发了一个 Java 工具,可以使用 Windows 10 将 G 代码发送到 3D 打印机。它适用于所有使用基于 arduino 的硬件控制器的 3D 打印机。当我将它们连接到计算机时,打印机控制器将被识别为 COM 端口并分配一个端口号。我可以使用串行通信协议 (RXTX) 轻松连接到分配 COM 端口、与 3D 打印机通信并打印我的 STL 文件。
但是,最近我买了一台新的 3D 打印机,当我将它连接到计算机时,设备管理器未将其识别为 COM 端口。相反,我必须安装一个驱动程序,并且打印机现在在设备管理器中被识别为它自己的设备。它可以在类型下找到:“3D 打印机”。
我的问题是:如何与未列出且未分配 COM 端口的设备建立(串行)通信?我的猜测是,我需要更改 getPorts() 函数中的 CommPortIdentifier。但我不知道如何更改它并连接到 3D 打印机。
这是我目前使用的代码:
public ArrayList<String> getPorts() {
CommPortIdentifier serialPortId;
ArrayList<String> portID = new ArrayList<String>();
Enumeration enumComm = CommPortIdentifier.getPortIdentifiers();
while (enumComm.hasMoreElements()) {
serialPortId = (CommPortIdentifier) enumComm.nextElement();
if (serialPortId.getPortType() == CommPortIdentifier.PORT_SERIAL) {
String portString= new String(serialPortId.getName());
portID.add(portString);
}
}
return portID;
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)