Цитата(shrek @ Jan 29 2009, 17:17)

Конкретно 80 06 00 01 00 00 40 00 3E FC C3 0D C1 B8 69 2E.
Возникает вопрос как обработать данную последовательность байтов?...
Обратился к источнику "Агуров Интерфейс USB практика использования и программирования".
показалось что 8006 - это запрос дескриптора устройства, а 0001 - это что то связанное с очисткой девайся USB контроллера...
А остальные байты?... непонятно... В скачанной спецификации USB с офсайта не нашел или плохо искал... По крайней мере мне так показалось что там этого нет...
В спецификации всё это описано. И в Агурове тоже.
Из всего вашего набора байт запрос только первые 8.
Запросы состоят из стандартных полей по 2 байта
wRequest wValue wIndex wLenthПроцесс энумерации на шине состоит из запроса дескрипторов. Первый который приходит
GET_DESCRIPTOR_DEVICE wRequest = 0x8006Это стандартный запрос от хост-контроллера (ещё бывают запросы класса).
Далее идёт тип запрашиваемого дескриптора. Их много, вот некоторые из них:
Код
#define device 0x0100
#define configuration 0x0200
#define string_language 0x0300
#define string_manufacture 0x0301
#define string_product 0x0302
#define string_sn 0x0303
#define interface 0x0400
Для чего нужно поле wIndex точно не помню.
Поле wLenth - кол-во запрашиваемых байт.
Поищите в спецификации эти поля и всё станет ясно. Как найду выложу довольно полезную книгу где все эти запросы расписаны на довольно понятном английском языке