Здравствуйте.
Подскажите как правильно отвечать по запросу на дескриптор устройства? Дескриптор рабочий от своего давнего проекта на атмеле. Приходит запрос на дескриптор устройства, отдаю его (по 8 байт или весь сразу, без разницы), после чего получаю ресет. Цикл повторяется несколько раз после чего винде говорит о не распознанном устройстве. Пробовал посылать после дескриптора пакет нулевой длины и переключать/оставлять без изменений DTOG_RX и DTOG_TX - результата нет.
последовательность действий сейчас: -Reset, все сбрасываю и обнуляю, EP0 cnfdk. rjynhjkmyjq b hfphtif. tq ghbtv -прерывание прием пакета по EP0, запрос DevDesc, формирую свой буфер с заголовком и телом дескриптора. Запрошенную длину выдай на передачу. (Win XP запрашивала помнится сначала 8 байт, потом давала ресет и запрашивала весь DevDes. Win 7 запрашивает сразу 64 байта) - прерывание данные отправлены. если есть что передавать - передаю. если нет то перевожу EP0 на прием. - снова получаю Reset.
Что пропустил? Какой то битик переключить? надо ли как то обрабатывать SOF?
Спасибо.
|