HELP ! по windows и com port
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)
|
Отправлено
whale 07 ноября 2004 г. 11:53
|
|
|
|
Не удается добиться стабильного приема данных под виндой 98/2000.
Задача - принять пакеты из 4-х байт с периодом прихода пакетов в 100мс.
Т.е. принимаеться, но достаточно откр/закр какую-нить программу или еще что-нить -
данные искажаются, скорее всего readfile(comport) читает с середины пакета ...
Опрос порта организован по таймеру - те раз в 20мс идет запуск readfile(comport),
после которой стоит программа обработки данных (запись и вывод на экран)
Насколько я представляю себе, необходимо открыть порт в режиме nonoverploap ?
Как это сделать ? Те чтобы пока readfile не считает 4 байт, дальнейшая работа программы
не производилась.
Если же открывать в overloap, как отследить , что пришел первый байт и пора запускать
readfile ?
В этих флагах виндоус черт ногу сломит , вроде есть флаг который отвечает за это.
Вчера в msdn копал копал, чуть глаза не перекосились. :)
Может есть у кого код приема с ком порта такой последовательности или похожей ?
Программлю на Buildere.
Спасибо за внимание :)
Составить ответ
|||
Конференция
|||
Архив
Ответы
- Ввод-вывод надо бы в отдельном потоке организовать, тем более что в билдере это очень просто(+). — nemo (07.11.2004 20:46, 60 байт)
- частота системных тиков в win32 вроде 1мс поэтому в Билдере посмотрите создание аппликации TThread — patton (07.11.2004 17:03, 35 байт)
- Вот текст програми, почему виснет ? — whale (07.11.2004 15:11, 3264 байт)
- Работа с коммуникационными портами (COM и LPT) в программах для Win32. — DSN (07.11.2004 13:26, пустое, ссылка)
- Может, взять готовое и не париться? — HoBo (07.11.2004 12:36, пустое, ссылка)
- serial communications in win32 — patton (07.11.2004 12:24, пустое, ссылка)
- Ответ: — patton (07.11.2004 12:21, пустое, ссылка)
- Я тупо открываю его раз и навсегда, а опрос вбиваю в Application.OnIdle... — Николай Коровин (07.11.2004 12:10, пустое)
- Достаточно открыть порт (CreateFile) и НЕ ЗАКРЫВАТЬ ЕГО !!! — CD_Eater (07.11.2004 12:00, пустое)
Перейти к списку ответов
|||
Конференция
|||
Архив
|||
Главная страница
|||
Содержание
|||
Без кадра
E-mail:
info@telesys.ru