我正在使用UsbBulkInPipe
从我的USB设备获取数据。当我读取数据时,长度是正确的,但值都是零。我如何阅读真实数据?
这是我尝试过的:
UInt32 bytesRead = 0;
UsbBulkInPipe bulkIn = device.DefaultInterface.BulkInPipes[0];
var stream = bulkIn.InputStream;
DataReader reader = new DataReader(stream);
try
{
bytesRead = await reader.LoadAsync(bulkIn.EndpointDescriptor.MaxPacketSize);
}
catch (Exception exception)
{
//ShowStatus(exception.Message.ToString());
}
finally
{
byte[] value = new byte[bytesRead];
reader.ReadBytes(value);
}
答案 0 :(得分:0)
目前我正在使用这种方法:
var t = reader.LoadAsync(buf.MaxPacketSize).AsTask(cancellationTokenSourceBulkIn.Token);
uint len = t.Result;
byte[] data = reader.ReadBuffer(len).ToArray();