libusb Windows使用WinUSB批量传输接收不一致

时间:2012-11-15 18:18:16

标签: windows usb libusb winusb

我正尝试使用libusbx通过Windows与自定义USB设备进行通信。我为设备安装了WinUSB驱动程序,并且能够进行某些通信。它没有像我预期的那样运作。

我试图从PC发送一些基本的双向通信,我发送一个字节并期望返回一定数量的字节。目前,如果我重置设备并运行发送字节的程序,我只会收到一个字节。如果我重新运行我的程序,我只会得到下一个字节。这种情况会发生几次,直到最终我收到我期望的结果。

例如: PC发送' a'

预期输出

buffer[0]=3c
buffer[1]=6c
buffer[2]=0
buffer[3]=3e

我实际得到的是:

//First try
buffer[0]=3c

//Second Try
buffer[0]=6c

//Third Try
buffer[0]=0
buffer[1]=3e

//Fourth+ tries
buffer[0]=3c
buffer[1]=6c
buffer[2]=0
buffer[3]=3e

当我使用串行通信通过COM端口测试USB设备时,一切都按预期运行。

以下是正在运行的代码的pastebin: http://pastebin.com/bQtyS6vq

是否有人遇到类似问题或有任何修复建议?

0 个答案:

没有答案