Реферат: Коммуникационные порты

Как уже говорилось выше, порт возвращает “0”, если на входе “0”, и “N”, если на данном входе “1”. Причём в некоторых случаях (особенно, при работе с LPT) “N” может быть равно сумме кодов ножек, если “1” присутствует не на одном входе.

Осуществляется приём следующим образом: e:=port[b+n] and m;

Где: e – переменная типа byte, в которую сохраняют принятое значение.

b – адрес БР порта.

n – номер подрегистра.

m – весовой коэффициент входа (см. таблицу 1 ).

Для проверки этой записи соединим перемычкой выход RTS(7) и вход CTS(8) и запустим приведённый ниже код: (пример 1 )

var

aa,e:word;

port,base,data:word;

{.........}

aa:=0;

base:=$3F8;

begin

port:=base+4;

data:=2;

outport(port,aa,data);

sleep(10);

port:=base+6;

e:=inport(port) and 16;

port:=base+4;

data:=0;

outport(port,aa,data);

end;

Управлять конкретными выводами порта из под Дельфи можно и с помощью API. Это хоть и сложнее, зато такая программа будет работать на любом Windows, в т.ч. на NT, 2000, XP (приведённые выше пример работоспособен лишь в 95/98/МЕ).

Список использованной литературы

1) Работа с коммуникационными портами (COM и LPT) в программах для Win32. http://bcb.net.ru/article/hard/index003.html

2) Коммуникационные порты персонального компьютера. http://electronics.org.ua/techinfo/lpt/lpt.htm

3) Основы программирования LPT для DOS и Win9x. http://radiopirat.h11.ru/prog/prog004.htm

4) Примеры работы с АЦП. http://dikoy44.narod.ru/photoalbum.html

К-во Просмотров: 303
Бесплатно скачать Реферат: Коммуникационные порты