Всем доброго времени суток. Появилась необходимость использовать USB на STM32F407VG. В качестве теста собрал в CubeMX проект с USB CDC и нарвался на проблему: если отправлять одну порцию данных сразу после другой (т.е., несколько раз подряд вызывать CDC_Transmit_FS без задержек), то до адресата доходят 1-2 порции, после чего работа USB прекращается. Если вставить задержки между отправками -- проблем нет. Как я понимаю, причина в том, что я пытаюсь отправить новые данные, когда старые ещё не ушли. Если дело в этом, то перед отправкой нужно проконтролировать, чтобы передатчик освободился, т.е., нужна обработка какого-либо флага или callback-а. Я нашёл только обработчик прерывания OTG_FS_IRQHandler и флаг USB_OTG_DIEPINT_TXFE, который смотрю в обработчике, но это не помогает.
Может, кто сталкивался с такой проблемой и знает, как решить? Спасибо