Я знаю, что есть некоторые режимы для конечной точки USB (Control, Bulk, Interrupt и isochronous), и они могут использоваться для каждой цели, но я не знаю, как мы можем изменить конечную точку USB в эти режимы в гаджете? Я уже прочитал USB2.0 спецификации, то я могу получить дескриптор передачи USB с помощью ниже настроек:Как изменить тип конечной точки гаджета USB?
ctrl.bRequestType = USB_DIR_IN|USB_TYPE_STANDARD|USB_RECIP_ENDPOINT;
ctrl.bRequest = USB_REQ_GET_DESCRIPTOR;
ctrl.wIndex = 0;
ctrl.wLength = sizeof(buff);
ctrl.data = buff;
ctrl.wValue = (USB_DT_CONFIG << 8) | 0;
result = ioctl(fd, USBDEVFS_CONTROL, &ctrl);
Но я до сих пор не знаю, что я должен сделать, чтобы изменить режим передачи данных USB?
Какой API вы говорите? Вы реализуете гаджет или используете libusb? –
Да, я реализую гаджет, который может переключаться между режимами передачи USB, я прочитал спецификацию USB2.0 и я запутался, что могу сделать это с помощью команды USB_REQ_SET_DESCRIPTOR? – Tiktac
Поместите эту информацию в вопрос. –