Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Определить состояние DSR на com порте


pasha676 ©   (2003-01-23 10:41:00) 

Необходимо выяснить в "1" или в "0" находиться сей сигнал.
На данный момент пользуюсь ассемблерной вставкой, что то типа:
asm
mov DX,NumComm
add DX,6
in AL,DX
mov S,AL
end;
Result:=(S and $20)=0;

Как это сделать через API? На API могу отследить , увы :(, только смену сигнала (переход из 1 в 0 и наоборот), а вот какой сам сигнал?


Stager   (2003-01-25 21:21:00) [1]

А вот, действительно, как эта тема в базы данных попала???
Я в восторге. Может быть те, кто ее сюда перенес, подскажут пару SQL-скриптов для более оптимального управления COM-портом, чем это реализовано в API? :)

С трудом сдерживая смех, Алексей.


Stager   (2003-01-25 21:17:00) [2]

По теме: советую воспользоваться ComPort Library by Dejan Crnila. Явных глюков я пока не выявил, хотя активно использую уже около года.

Например, так я проверял наличие перемычки между DTR и DSR:

functionTForm1.IsDtrDsrConnected: boolean;
begin
Result:=False;
withCommPort1 do begin
SetDTR(False);
if not(fDsrHold in StateFlags) thenExit;
SetDTR(True);
if(fDsrHold in StateFlags) thenExit;
end;
Result:=True;
end;

Согласитесь, достаточно прост в обращении.

С уважением, Алексей.


pasha676   (2003-01-23 18:56:00) [3]

Спасибо, посмотрю.

Уважаемые рулевые форумов, почему мой вопрос был снесен в базы данных?
Хорошо что навигация на форумах хорошо сделана, но все же сносить вопрос про com-порт в базы данных несколько не логично.


Александр Спелицин   (2003-01-23 17:29:00) [4]

См. GetCommModemStatus


Наверх

Титульная страница Поиск, карта сайта Написать письмо