![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Проблема с RS232 [D5, Win2k]
Still Swamp © (2003-05-12 20:36:00)Пишу в порт... относительно успешно. Девайс стоящий на том конце славно обрабатывает мои команды, но вот пообщаться полноценно с ним не удается.
ReadFile(Port.FPortHandle, ReadByte, SizeOf(ReadByte), ReadCount, @Port.FOvr); - это чтение в трэде.
я получаю только первую посылку от девайса. в дальнйшем ничего получить немогу. может кто сталкивался ранее. помогите.
Verg (2003-05-14 10:22:00) [1]GetOverlappedResult ?
pasha676 (2003-05-14 10:17:00) [2]А на какой эвент ждешь? Ведь если ты проваливаешься в чтение, значит эвент пришел, значит символы приходять.
Ошибка может быть в интерпретации символов или неправильно настроен евент (хотя с трудом представляю как это может быть, но мало ли). Сбрасываешь флаги после чтения (ClearCommError)?
Still Swamp (2003-05-13 14:20:00) [3]все нормально.
по циклу он крутится вполне исправно. может еще есть какие идеи?
pasha676 (2003-05-13 14:05:00) [4]Должно работать.
Так трудно сказать, но зациклена ли процедура приема в трэде?
Поставь точку останова на после wait и посмотри ты туда попадпешь или нет. Если нет - смотри почему. Может чтение не зациклено, а может у тебя устройство молчит.
Слесарь Матерящийся (2003-05-13 10:25:00) [5]Осмелюсь поделиться кодом - я читал с мультиметра, без overlapped операций, тоже в отдельном потоке, и всё получалось:
http://progrex.narod.ru/files/MetexView.zip
(вдруг поможет?)