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

Вниз

Работа с внешним девайсом через COM порт   Найти похожие ветки 

 
SDW_syscoder   (2003-09-03 11:05) [0]

Требуется организовать работу с внешним устройством через порт RS232(COM).
Алгоритм будет заключаться в следующем: я должен ожидать событие, т.е. приход кода "0A", после чего в ответ я посылаю "11" пока не придёт код "3A" и затем уже идёт считывание всех данных с порта. Короче HELP ME! разобраться с событиями и потоком в котором будет вертеться процедура ожидания события.
Прогу пишу на WinAPI в Delphi 6. Thanks People!!! Покеда...


 
Verg ©   (2003-09-03 11:09) [1]

Да уж, чем дальше в лес, тем толше партизаны....


 
ZHK ©   (2003-09-03 11:30) [2]

Думаю, что задачу за тебя никто писать не будет. А посоветовать можно. Посмотри описание API. SetCommState, GetCommState и похожие. В API есть структура TDCB, с помощью которой можно получить доступ к настройкам порта. Поле TDCB.Flags тоже полезно. А простейший способ ждать событие, если других не знаешь:

while <нет события> do
Application.ProcessMessages.


Все будет выполняться и событие поймаешь. Пробуй.


 
INTAARI   (2003-09-03 15:27) [3]

Воспользуйся компонентой TurboPower Async Professional.
выглядет это так:
//////прочитать данные с порта////////////////////
procedure Tform1.ComPortTriggerAvail(CP: TObject; Count: Word);
var
I : Word;
s: string;
begin
s:="";
for I := 1 to Count do
S := S + ComPort.GetChar;
//////посылка строки в порт
Сomport.PutString("11");




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

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

Наверх




Память: 0.47 MB
Время: 0.034 c
7-42183
PaHaN
2003-08-25 20:48
2003.11.13
WinXP (ассемблерные вставки)


3-41036
Fantom_
2003-10-08 13:13
2003.11.13
Сортировка по Lookup-полю


1-41466
ilka
2003-10-28 22:23
2003.11.13
загрузка SSL-евской длл


3-40908
нАвичОк
2003-10-20 12:57
2003.11.13
Как к DBGrid, DBGridEh и пр. добавить кнопочку для каждой строчки


7-42189
DarkSan
2003-08-28 15:47
2003.11.13
Баг при установке Delphi 5.0 под Win2K