Readfile 读是异步多线程的。流程是向写HID,再从HID中读。
//设置HID设备驱动中的缓冲区大小
Result = HidD_SetNumInputBuffers(hDevHandle,USB_BUFFER_SIZE);设置为128
上面是示例数据 Bus Hound 上看 人体输入22.1和Compliant 23 都有数据 但Readfile不定期读超时,大多时间读都正常!跑一会可能就有一次读超时。
超时我设为5000MS.
求教:从 Bus Hound 上看 有可能是数据在传给HID驱动的缓存区时出错吗!使缓存区中没有数据,进而使用Readfile读不出数据吗?
端口查询时间设置为1ms,HID设备ms级时间上传的数据,Readfile读之前还Sleep(100),为什么还会有偶尔读不出的情况呢! 这种偶尔的情况,问题可能会出在什么地方。
是报告定义吗?可报告定义不对,就该一个也读不到吧!现在的情况是大多时对读到,偶尔 出现一次读不到!真是搞不懂呀!求指点!
|