Pyusb Windows错误:USBError:[Errno None] libusb0-dll:err [claim_interface]无法声明接口1,win错误:所请求的资源正在使用中

时间:2019-02-17 16:41:43

标签: python python-2.7 pyusb

我正在尝试使用python中的pyusb从USB读取数据。我能够获取设备的所有配置,但是当我尝试读取数据时,出现以下错误:

USBError:[Errno无] libusb0-dll:err [claim_interface]无法声明接口1,win错误:所请求的资源正在使用中。

PF的代码也是我写的:

import usb.core
test = usb.core.find(idVendor=0x0ghe, idProduct=0x0241)
print test

test.set_configuration()

for i in range(0, 20):
    while True:
        try:
            test = test.read(0x81, 8, timeout=50)
            break
        except usb.core.USBError, e:            
            if str(e).find("timeout") >= 0:
                pass
            else:
                raise IOError("USB Error: %s"%str(e))

    print test

以下是我的问题:

  1. 当我们在USB连接的设备中进行任何操作时,如何每秒从主机的USB读取数据?
  2. 为什么从端点读取数据时会出现此错误?
  3. 使用pyusb从USB读取输入的有效方法是什么,无论我们在设备上进行任何按键操作,

1 个答案:

答案 0 :(得分:0)

我在将pyusb与我创建的自定义USB设备以及libusb-win32(v1.2.6.0)驱动程序一起使用时遇到了此问题。我能够从根本上引起问题,以尝试创建对已打开设备的多个引用。就我而言,每次尝试写入端点之一时,我都在搜索设备,但是在上一个函数调用中已经有对该设备的引用。只需维护一次对设备的引用,就可以解决我的问题。