выложите полный лог, какие прерывания возникают в процессе начиная от коннекта usb. если дескриптор запросило, значт должно запросить еще раз,если что-то не так.
у вас в УSB_DataInStage,USB_WriteEP явно что-то намучено, сравните с моей UsbEp0InXfr и главное, еще раз перепроверьте все ее содержимое согласно документации.
Внимательно пересмотрите обработку прерываний, я думаю, как раз там и застряет. Ну и доку usb2.0 покурите, чтобы было понятно, какое состояние за каким идет, оно примерно так же отражено в юзер-интерфейсе любого контроллера usb. начните, на пример со страницы 226(картинка внизу)
|