【问题标题】:java: No Endpoint found, but python worksjava:找不到端点,但python可以工作
【发布时间】:2012-01-09 00:25:56
【问题描述】:

我想尝试http://libusbjava.sourceforge.net 的 java libusb,但我什至无法连接到我的设备...

我之前有这个python代码:

def discover():
    my_device = None
    for bus in usb.busses():
        for dev in bus.devices:
            if dev.idVendor == 0x16c0 and dev.idProduct == 0x05dc:
                handle = dev.open()

效果非常好。现在我想在 java 中构建相同的并做了这个:

Device dev = USB.getDevice((short) 0x16c0, (short) 0x05dc);
try {
    dev.open(1, 0, -1);

} catch (USBException e) {
    }

但我现在得到的只是

ch.ntb.usb.USBException: No USB endpoints found. Check the device configuration
    at ch.ntb.usb.Device.updateMaxPacketSize(Device.java:82)
    at ch.ntb.usb.Device.initDevice(Device.java:114)
    at ch.ntb.usb.Device.open(Device.java:194)
    at Main.main(Main.java:14)

这不可能是真的,因为我仔细检查了来自 lsusb 的值,并且我有一个配置 1 和一个接口 0... 连接到我的设备有什么困难?没看懂……

【问题讨论】:

  • 您在 python 代码中扫描总线和总线上的设备 -- 等效的 Java 代码也可以工作吗?

标签: java python usb libusb


【解决方案1】:

我发现该设备只有一个中断端点,python 实现可以访问该端点,但 java 无法访问该端点...我更改了它,现在它可以工作了!

【讨论】:

猜你喜欢
  • 2021-07-13
  • 1970-01-01
  • 2018-01-08
  • 2021-11-24
  • 2023-03-09
  • 2020-06-16
  • 2021-06-27
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多