作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
在方法中usb_device_new()他们正在阅读 usb_device_descriptor使用此函数调用:
read(fd, device->desc, sizeof(device->desc));
首先,它是如何工作的,在打开设备后从文件描述符中读取。你怎么知道 usb_device_descriptor 是什么将被读取?我觉得这有点令人困惑。
我的第二个问题是如何阅读 usb_interface_descriptor和 usb_endpoint_descriptor来自 usb_device?
谢谢。
最佳答案
我发现他们如何设法检索接口(interface)和端点的详细信息:
while ((desc = usb_descriptor_iter_next(&iter)) != NULL)
{
if (desc->bDescriptorType == USB_DT_INTERFACE)
{
struct usb_interface_descriptor *interface = (struct usb_interface_descriptor *) desc;
interfaceValues.add(interface->bInterfaceNumber);
interfaceValues.add(interface->bInterfaceClass);
interfaceValues.add(interface->bInterfaceSubClass);
interfaceValues.add(interface->bInterfaceProtocol);
interfaceValues.add(interface->bNumEndpoints);
}
else if (desc->bDescriptorType == USB_DT_ENDPOINT)
{
struct usb_endpoint_descriptor *endpoint = (struct usb_endpoint_descriptor *) desc;
endpointValues.add(endpoint->bEndpointAddress);
endpointValues.add(endpoint->bmAttributes);
endpointValues.add(__le16_to_cpu(endpoint->wMaxPacketSize));
endpointValues.add(endpoint->bInterval);
}
}
我只需要在 this 中对框架进行更深入的挖掘。文件。
关于android 获取 usb_interface_descriptor, usb_endpoint_descriptor,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26781755/
在方法中usb_device_new()他们正在阅读 usb_device_descriptor使用此函数调用: read(fd, device->desc, sizeof(device->desc)
我是一名优秀的程序员,十分优秀!