Работа с LPT


Написание этой статьи началось с того, что недавно на форуме (Dengiforum.com) я набрел на вопрос о работе с LPT портами, появилась тема для новой статьи. Тема эта довольно простая и интересная. Через LPT к компу подключаются принтеры, сканеры и прочие устройства, уже догадываешься, что можно замутить свое устройство и подключить к LPT. Можно напаять светодиодов, малость накодить, получится светомузыка. Можно пошевелить мозгами и включать свет в соседней комнате одним щелчком мышки. В общем можно подключить все или почти все.

В надежде на обустройство интеллектуальной квартиры, кторой можно будет управлять не вставая с кресла, приступаем к разбору того, как всетаки управлять LPT портом. У правлять им не сложно, ногу порта можно подключить или отключить. На каждую ногу приходятся две процедуры: одна посылает на ногу единицу, другая ноль. Еденица - это 5 вольт, а ноль - почти 0 вольт. Вот и все, что знать надо. Соответственно если разбирать тему на примере свето-музыки, то одна процедура включает светодиод, а вторая выключает.

  • Включаем вторую ногу (шлем на нее единицу):

procedure s_reset;

begin

s:=port[888]; {Порт  LPT1}

asm

mov al,1 

mov bl,s

or bl.al 

mov s,bl 

end;

port[888]:=s 

end;

  • Устанавливаем ногу 2 в ноль:
procedure c_reset;

begin

s:=port[888];

asm

mov al,254 

mov bl,s

and bl,al 

mov s,bl

end;

port[888]:=s;

end;

Аналогично все остальные проводки, меняется только маска. Для третьей ноги - mov al,2{Маска 00000010}, mov al,253 {Маска 11111101}и т.д. пишем чистим соответственно. Вот и все дальше лампочки припаивай или удлинитель на лазерных указках делай, все зависит от тебя.







 
Design by Zwulf 2006.
Статистика




Реклама

Официальный сайт фанатов группы -Коррозия Металла-

Хостинг от uCoz