Сделал некое устройство на STM32F207, которое обрабатывает сигнал и передаёт в ПК по USB (по виртуальному COM порту). Фирмвара написана на базе примера для отладочной платы от STM - STM322хG-EVAL, для работы ( обмена данными ПК-МК) написана программа на делфи, драйвер - стоандартный от STM, операционка винда ХР . Алгоритм (упрощённо) следующий: 1. Команда запроса данных- запуска измерительного цикла 2. Запрет прерывания от USB 3. Старт накопления сигнала 4. Задержка на накопление 5. Преобразование накопленного сигнала, создание массива 6. Разрешение прерывания USB 7. Передача данных в ПК и повторение цикла с п.2 Проблема в том, что пока в компьютере нет активности - всё работает нормально; стоит только на компе проявить активность (например, мышкой потаскать окно любой другой программы, не той, которая работает для обмена данными) - сразу же увеличивается время накопления сигнала (как будто МК тормозить начинает) - соответственно, имеем не реальные данные, а непонятно что.
Как активность в работе ПК может сказываться на работе фирмвары?
|