Помогите разобраться.
Имею: AT91SAM7A3-EK, IAR WB, отладка через SAM-ICE.
Написал сам обработку алгоритма USB (библиотеки не использовал). Проблема возникла в самом начале)) Никак не могу отослать хосту device_descritor. Для 0 точки пакеты должны быть 8 байт. Собственно, для device_descriptor'а пакет размером 18 байт, соответственно мне его нужно порезать на части 8 + 8 + 2. Режу его, но не успеваю я отослать последний пакет (2 байта), как хост мне посылает очередной запрос device_descriptor'a. Хост перебивает мои попытки отослать ему данные раза 4 и выдает сообщение мол устройство не опознано (работает не правильно).
Может я не правильно отсылаю данные к Хосту? Если данные не помещаются в один пакет изначально, то я досылаю их в обработчике прерывания (по AT91C_UDP_TXCOMP) , в данном случае, для 0ой точки. Направление(IN/OUT) 0ой точки меняю, при необходимости, до сброса флага RXSETUP, бит AT91C_UDP_TXPKTRDY выставляю сразу после заполнения буфера UDP_FDR...
Помогите пожалуйста, очень нужно - уже целый день бьюсь с этим(((