我很难找到能够获取通过USB连接的任何设备的输入的Java API。 我找到了jUsb,但它看起来已经过时了。
我想要的是:
答案 0 :(得分:3)
我们的USB传感器遇到了同样的问题:没有100%的Java解决方案。您将始终需要使用其他语言编写的操作系统特定代码(并且可以访问本机API)。
我们发现最便携的解决方案是实现一种将USB数据封装在localhost TCP套接字上的网关。我们有3个网关实现(OSX,UNIX和Windows),它们将调用本机API与USB设备进行交互。 Java代码将通过TCP网关发送/接收USB流量。我们已经完成了一些benchmarks,我们测量了纯C ++代码和Java实现之间的总体差异小于10ms(对于大型45ms事务),而一旦有了,则延迟可以忽略不计(没有影响)一个开放的渠道。
我们撰写了一篇解释our solution here的文章。
答案 1 :(得分:0)
您需要先安装可以检测设备的设备驱动程序。
在设备管理器中 - >端口(COM和LPT)您可以看到设备所连接的端口。例如COM1 / COM2 / COM3
您可以编写代码来添加侦听器事件,以便从这些端口读取数据。 有许多库可用于COM端口。这个link对您有用。
我使用comm.jar从手持扫描仪设备读取输入。
答案 2 :(得分:0)
在过去,我使用过libusb.并不简单,但如果你足够了,你可以获得几个操作系统和Java绑定的驱动程序。