Android USB - Понимание метода controlTransfer
Я собираюсь начать новый проект, который работает с устройством USB HID. Я знаю, чтобы отправить команду на устройство HID, вы используете следующий метод:
controlTransfer(int requestType, int request, int value, int index, byte[] buffer, int length, int timeout);
Хотя я вполне уверен, что requestType
, buffer
, length
, а также timeout
Я не совсем понимаю request
, value
, а также index
, Что делают эти аргументы и что я передам, чтобы отправить мои команды?
Например, если бы я должен был установить скорость на беговой дорожке, в которой есть заданная команда для установки скорости, что бы я передал? Документация, которую я получил, не была ясна по этому поводу.
1 ответ
Запрос, значение и индекс можно найти в спецификации USB. Это стандартные параметры для команд управления конвейером.
От USB spec 3.0 Раздел 9.3 -
Ниже приведена таблица значений, соответствующих запросам, значениям и индексам из спецификации USB: