我可以通过java程序从PC向USB通讯端口发送一个字节吗? 如果是的话。是否有任何示例代码可以帮助解决这个问题?
我正在寻找示例代码或好的教程
答案 0 :(得分:1)
如果您使用的是USB转串口转换器(听起来就是这样),那么操作系统驱动程序软件会为应用程序提供串行接口。
我认为您需要关注的是JavaComms API - http://www.oracle.com/technetwork/java/index-jsp-141752.html。
此页面是否有帮助 - http://alumni.media.mit.edu/~benres/simpleserial/?
答案 1 :(得分:1)
当使用USB串行适配器时,可以(通常)忽略USB部件,而应该只关注串行部件。 USB适配器驱动程序将为您提供一个虚拟串行端口,可用作任何其他串行端口。
对于使用带Java的串行端口,请参阅Java Communications API或Serialio
答案 2 :(得分:1)
您尚未指定所需的USB通信类型,因此这有点通用。
如果您的设备将自己标识为USB CDC,则系统可能已加载驱动程序并允许您将其作为串行端口进行访问。如果骰子将自己标识为HID(人机交互设备)键盘,鼠标等,则类似。
如果您有自己的设备类型,那么您可以使用linux中的javax.usb(可能是Windows的端口)。您需要从供应商/设备ID中识别您的设备,可能需要配置您的端点,设备(如果您需要控制,批量或同步数据),创建数据包,用您的字节填充它然后传输它。 Javax.usb有一些示例代码。
为简单起见,我建议你的设备是CDC(代码可用,请检查谷歌),它会将自己标识为串口,并且在通信时你不需要处理USB的任何复杂性。