使用pyusb发送十六进制代码

时间:2012-12-17 14:04:07

标签: libusb pyusb

我已经尝试了4天将十六进制代码10 80 00 00 00 00 00 00发送到连接到运行debian的覆盆子pi的USB设备。

我用c尝试了libusb,但我不知道我在做什么。我认为PyUSB会是一个更好的解决方案,但我找到了我需要的零文档,教程没有帮助。

我可以使用

找到设备
import usb.core
dev = usb.core.find(idVendor=0x12BF, idProduct=0xFF03)

但我无法找到有关如何发送上述十六进制代码的任何信息。我的设备是基于USB的继电器。它在vb HID应用程序的Windows上工作正常,但我在这里苦苦挣扎。好像是围成一圈。

1 个答案:

答案 0 :(得分:0)

请您告诉我们,USB与设备的通信情况如何?这是批量转让吗? (有关详细信息,请参阅此链接: http://www.beyondlogic.org/usbnutshell/usb1.shtml

例如,如果您通过端点使用批量通信,则可以尝试这样的事情(如此处http://pyusb.sourceforge.net/docs/1.0/tutorial.html所示):

endpoint.write(endpointnumber, data, interfacenumber)

如果你想发送一个十六进制值,让我们通过端点2,接口0说0xFF,尝试类似:

endpoint.write(2, '\xFF', 0)

我希望这会有所帮助......