Re[2]: Как правильно настроить RS232
От: baxus  
Дата: 04.09.09 07:31
Оценка:
Здравствуйте, sz36, Вы писали:

S>Здравствуйте, baxus, Вы писали:


B>>когда я пытаюсь загрузить данные, то это происходит с меньшей скоростью чем из родной утилиты (примерно в 2 раза).

S> Навряд дело в настройках, я ставлю на реализацию алгоритма. Например, возможная причина — родная утилита при вызове ReadFile указывает точный размер блока(или читает побайтно), передаваемый устройством, А Вы — несколько больший. Считывается при этом все равно столько байт, сколько передавало ус-во, но чтение завершается по таймауту, увеличивая время операции на его величину. Способы борьбы — указывать точный размер блока, если он вам известен, а если нет, хотя бы поставить таймаут минимально допустимым.

Родная утилита шлет данные по одному байту, соответственно и я стал так делать, но это не помогло.

S> Еще одна возможная причина — родная утилита начинает операцию записи не дожидаясь окончания предыдущего чтения, а Вы — дожидаетесь. Если протокол позволяет такое.


Данные которые отсылаются делятся на пакет по 48 байт, после отправки которых приходит ответ из одного байта, так что я думаю пропуск чтения этого одного байта ничего не дает.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.