Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.04.17;
Скачать: CL | DM;

Вниз

Вывод работы с COM портом в отдельный поток...   Найти похожие ветки 

 
MAPIIIAJL ©   (2003-02-23 12:09) [0]

Люди нужна помощь!!! Суть проблемы: На COM порт подключено устройство которое передает данные с частотой 30Hz, скорость порта 9600, длинна сообщениея 16 байт. Моя прога осуществляет прием каждого сообщения функцией ReadFile (hCommPort,reply,l,dwSize,Nil); Чтение по таймаутам. В промежетках между опросами порта я осуществляю некие расчеты с принятыми байтами, запись данных в лог файл и вывод полученных измерений на график. Но... я не успеваю сделать эти манипуляции, много сообщений пропадает. Хуже всего срывается синхронизация и я начинаю принимать слипшиеся сообщения. Я так думаю, что нужно вывести работу с приемом из порта в отдельный поток, и работать по событиям. Но как это сделать незнаю... Приведите пожалйста небольшой примерчик. Заранее спасибо.!!!


 
jack128 ©   (2003-02-23 15:19) [1]

TThread + F1


 
Slym ©   (2003-02-24 15:12) [2]

Делаешь поток чтения из Ком
Данные пихаешь в "Хранилище" с организацией типа FIFO (первый пришел первый ушел), его можно сделать из ТЛист...
А в главном потоке проги проверяешь колво строк в Хранилище
и обрабатываешь имеющиеся.
Можно сделать хранилище фиксированного размера, тогда при сбоях, нехватки проц. времени затираешь первые строки сдвигом и дописываещь т.е. данные теряются но чтение из кома не выходит из нужного режима


 
MAPIIIAJL ©   (2003-02-25 00:27) [3]

Slym ©
Большое спасибо за идею. Буду пробовать.



Страницы: 1 вся ветка

Текущий архив: 2003.04.17;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.026 c
3-54478
alxx
2003-03-30 15:54
2003.04.17
MouseTo... - по координатам мышки - запись.


3-54476
sniknik
2003-03-28 18:16
2003.04.17
Midas + ADO = странное поведение. Кто сталкивался?


4-54965
Sentinel
2003-02-15 21:54
2003.04.17
SetClassLong


8-54754
Zeratul
2003-01-17 01:55
2003.04.17
Существует ли DelphiX для Delphi 6 ?


14-54812
Романов Р.В.
2003-03-30 15:25
2003.04.17
Как прошла очередная встреча мастаков?