我创建了一个 Java GUI,它在下拉菜单中列出了所有串行端口,用户从中选择正确的端口并单击连接。然后建立与 Arduino 的连接,用户可以执行一些操作。我使用 Fazecast JSerialComm 获得可用端口:
SerialPort[] ports = SerialPort.getCommPorts();
我抓住端口并将结果放入下拉列表中。这可以完美地工作,但只有在启动我的 Java GUI 之前将 Arduino 插入 Mac 时。有没有办法在 Java 中检测热插拔设备?我已经考虑过定期(大约每秒)获取 com 端口,但对我来说,这似乎是一个非常优雅的解决方案。