![]() |
Модераторы: feodorv, GremlinProg, xvr, Fixin |
![]() ![]() ![]() |
|
BBulat |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 81 Регистрация: 5.12.2006 Репутация: нет Всего: нет |
Мое приложение передает и принимает поток данных от некого USB-устройства. Запись и чтение производятся в разных потоках. Данные, принимаемые по USB, записываются в массив типа uint и только после остановки приема и передачи данных содержимое этого массива анализируется на наличие пропусков данных. То есть, приложение непрерывно передает USB-устройству последовательность данных от 1 до 56 по адресам от 0 до 255 соответственно и это же приложение непрерывно считывает те же самые данные, которые USB-устройство отправляет обратно без изменений (тестовый режим работы устройства).
Проблема в следующем. Если запустить приложение на машине типа Core2Duo и при этом параллельно не запускать никаких других приложений , то пропусков данных нет. То есть все, что отправил USB-девайсу, все вернулось. Если же запускаю параллельно другие приложения (тестировал с Opera 10, Word 03), то появляются пропуски данных, причем большее их количество приходится на момент запуска и закрытия приложений (Opera, Word). Также подобная проблема возникает при работе на менее мощных ПК типа PIV. Тип конечных точек в USB-устройстве bulk, то есть передача и прием происходят с подтверждением, поэтому тут пропусков быть не должно. Сейчас хотел бы проверить само приложение, может что-то неоптимально написал и пропуски возникают на уровне приложения. Писал в VS 2005, привожу часть кода, отвечающую за прием и передачу данных.
|
|||
|
||||
![]() ![]() ![]() |
Правила форума "C/C++: Системное программирование и WinAPI" | |
|
На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы . Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |