Программа зачата "Кубом", работает с интрфейсами USАRT и USB -устройством (виртуальным СОМ-портом)
под FreeRtos ,соответственно работа с интерфейсами вынесена в задачи, основное тело -Superloop, вертится в фоне..
Обмен по системе запрос-ответ, кол-во байт не больше десятка,частота запросов 10Гц
и тут интересное, если обмен по USАRT не вызывает никаких нареканий, и спокойно пропускает и 100Гц и пол-кило..
то тот-же обмен , только по VCP -глючит..
Каждый новый запрос вызывает подвисание системы, и на 10Гц при мизерных количиствах принятых-переданых данных
фоновая программа практически еле шевелется!.. соответственно, при прикращении подачи запросов программа отмерзает..
Естесственно возникает два вопроса:
первый, как заставить USB stаste maschne шевелиться быстрее? (предполагаю, что она какие-то mallос-и делает..)
и второй, как противостоять "флуду" , т.е. блокировать прием запросов по vcp таймаутом? СDC LL_suspend\resumuе,start\stop отваливают СОМ-порт
- попытки отобрать приоритет у USB приводят нарушению работы..