Главная страница
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.03 c
3-40953
AtoL
2003-10-17 12:20
2003.11.13
Прогресс выполнения запроса.


3-40798
Виталя
2003-10-22 15:17
2003.11.13
Как отследить поле NULL возвращаемое хранимой процедурой ?


1-41462
TRyaSS
2003-10-29 09:37
2003.11.13
Загрузка программ


1-41206
Leo^Sun
2003-11-02 09:18
2003.11.13
Pocket PC Windows CE


1-41602
Wadim
2003-10-26 22:37
2003.11.13
TRegistry