Разработка, производство и продажа радиоэлектронной аппаратуры
|
Требуется программист в Зеленограде - обработка данных с датчиков; ColdFire; 40 тыс.
e-mail: jobsmp@pochta.ru
|
Будьте внимательны
Отправлено
3m 21 июля 2008 г. 14:20
В ответ на:
Спасибо за ответ. отправлено
MicroDiP 21 июля 2008 г. 12:09
Будьте внимательны, FT232 по крайней мере со стандартными драйверами под винду НЕПРИГОДНА для работы с непрерывно поступающим из **неуправляемого** источника потоком данных!
Проблема в следующем:
в режиме приема данных без потерь принимаются данные только если они влезают в объем приемного буфера драйвера. Стандартный размер буфера - 4кб, настройками VCP или через API D2XX размер приемного буфера можно увеличить максимум до 64кб. После заполнении буфера драйвер автоматически начинает новый цикл приема, но это действие выполняется с задержкой минимум 20мс, максимум - сотни мс (когда винда оптимизирует своп). Поступающие в это время данные ТЕРЯЮТСЯ и стандартными дровами VCP и D2XX c этим сделать ничего нельзя. Флаг OVERRUN при этом не выставляется. Это на однопроцессорной машине, что будет на многопроцессорной - х.з.
PL2303 ведет себя так же, только размер буфера изменить нельзя.
Вот такие пироги.
Составить ответ | Вернуться на конференцию
Ответы
- Спасибо, учту. - MicroDiP (21.07.2008 16:43:20 222.125.204.138, пустое)