Проблема с COM-портом: читается не все :-(
От: Vertolet  
Дата: 01.12.03 07:44
Оценка:
Ситуация: на COM-порт поступает 12 байт. При чтении первые, скажем, 8 читаются без проблем, девятый приходит "битым", остальные уходят куда-то "мимо".
Пример: подаем (hex): 01 01 02 02 FF FF FF FF FF 01 FF FF
Читается: 01 01 02 02 FF FF FF FF CC ........

Изменение скорости работы (9600-115.200) эффекта не приносит. Таймауты на чтение пробовал от 0 до 10000... Пользы никакой.
Примечание: при пошаговом исполнении (читаю побайтно) все проходит нормально.

Кто-нибудь может посоветовать, в каком направлении искать "грабли"?

Заранее благодарен, Vertolet
Re: Проблема с COM-портом: читается не все :-(
От: sercher Украина  
Дата: 01.12.03 08:02
Оценка:
Здравствуйте, Vertolet, Вы писали:

V>Ситуация: на COM-порт поступает 12 байт. При чтении первые, скажем, 8 читаются без проблем, девятый приходит "битым", остальные уходят куда-то "мимо".

V>Пример: подаем (hex): 01 01 02 02 FF FF FF FF FF 01 FF FF
V>Читается: 01 01 02 02 FF FF FF FF CC ........

V>Изменение скорости работы (9600-115.200) эффекта не приносит. Таймауты на чтение пробовал от 0 до 10000... Пользы никакой.

V>Примечание: при пошаговом исполнении (читаю побайтно) все проходит нормально.

V>Кто-нибудь может посоветовать, в каком направлении искать "грабли"?


V>Заранее благодарен, Vertolet


А в каком режиме? OVERLAPPED? Хоть бы код привёл. Может не всё читаешь. Команда Read() возвращает сколько она прочитала, это число может быть меньше, чем отправлено.
Re: Проблема с COM-портом: читается не все :-(
От: kiamor  
Дата: 01.12.03 09:47
Оценка:
Здравствуйте, Vertolet.

Поищи по сайту пытавшихся передавать нули. Мож поможет.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.