我正在尝试使用python中的pyusb从USB读取数据。我可以获取设备的所有配置,但是当我尝试读取数据时。我会收到以下错误:
usberror:[errno none] libusb0-dll:err [super_inderface]无法要求界面1,赢得错误:使用了请求的资源。
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
以下是我的问题:
- 每当我们在USB连接的设备中进行任何操作时,如何每秒读取USB的数据?
- 为什么在从端点读取数据时会出现此错误?
- 使用pyusb以任何按钮按我们在设备中所做的任何按钮读取USB的输入的有效方法是什么?
我在使用我创建的自定义USB设备以及使用libusb-win32(v1.2.6.0)驱动程序的自定义USB设备时遇到了这个问题。我能够将问题根本引起,试图创建对已经打开的设备的多个引用。就我而言,每次尝试写入端点之一时,我都在搜索该设备,但是我已经在以前的函数调用中对该设备进行了引用。仅维持对设备的引用为我解决问题。