PyUSB:如何构造对interruptWrite()的调用

时间:2014-07-09 21:09:43

标签: python pyusb arduino-yun

注意:这是Python 2.7和PyUSB 0.4.3

我正在尝试使用Python脚本将Arduino Yun的串行数据发送到插入Yun的USB主机端口的USB加密狗。数据只是一系列字符(目前只是一个简化调试)。这是脚本,要写的数据是字符' W':

import usb

busses = usb.busses()
for bus in busses:
  devs = bus.devices
  for dev in devs:
    if dev.idVendor == 9304 and dev.idProduct == 1:
      d = dev

conf = d.configurations[0]
intf = conf.interfaces[0][0]
endpoints = []
for endpoint in intf.endpoints:
  endpoints.append(endpoint)

endpoint = endpoints[0]
handle = d.open()

handle.interruptWrite(0, 'W')

这是错误:

Traceback (most recent call last):
  File "ser_test.py", line 21, in <module>
    handle.interruptWrite(0, 'W')
usb.USBError: error submitting URB: No such file or directory

我第一次参加0-1000但没有运气。写这个的正确方法是发送一个&#39; W&#39;从主持人到加密狗的角色?我在其他帖子中读过PyUSB只是usblib的一套包装器,但是我们还没有在usblib文档中找到答案。

这是lsusb的输出(加密狗为2458:0001):

Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 058f:6254 Alcor Micro Corp. USB Hub
Bus 001 Device 003: ID 2458:0001
Bus 001 Device 004: ID 058f:6366 Alcor Micro Corp. Multi Flash Reader

感谢。

0 个答案:

没有答案