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

Вниз

Нестандартная работа с LPT   Найти похожие ветки 

 
RS19   (2003-10-05 18:23) [0]

Всем всех благ.
Помогите разобратся з железом.Проблема вот в чём: Есть устройство, которое имееть 22 пин-выхода и подключено к пинам LPT порта. При работе, устройство подает на соответствующие пини напржение 5 вольт на протяжении некоторого времени. Принцип - есть напряжение 5 воль - соттвественному номеру пина присваевается; 1 отсутствует - 0. Ворос - возможно ли в Delphi (или на Асме) постоянно опрашивать все пини (кроме пинов питания, соответственно) на присутствие или отсутствие сигнала, а так же необходимо на два пина (по вашему усмотрению) подавать с компа сигнал устройству (четире сигнала соответственно - 00,01,10,11). Как правельно это реализовать для коректной работи программы хотя бы в Win9X (желательно и в WinNT/XP/2000)
Заранее спасибо.


 
Evgeny V ©   (2003-10-06 09:09) [1]

Поищи zlportio - позволяет писать и читать порты под виндами, если дашь мыло, могу прислать


 
smit ©   (2003-10-07 10:21) [2]

function GetPort(p : word = $379):byte; stdcall;
begin
asm
push edx
push eax

mov dx,p
in al,dx
mov @result,al

pop eax
pop edx
end;
end;

Procedure SetPort(b:byte; p : word = $378);Stdcall;
begin
asm
push edx
push eax

mov dx,p
mov al,b
out dx,al

pop eax
pop edx
end;
end;

Но вся проблема в том, что LPT может выдавать 7 или 8 пин на выход, а ещё меньше - на вход. Надо схему с учётом этого дорабатывать. Работает код только под 9х.



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

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

Наверх




Память: 0.47 MB
Время: 0.037 c
1-36691
Drag0n
2003-12-02 17:29
2003.12.12
Нужен компонент типа


6-36778
Fredericco
2003-10-15 19:10
2003.12.12
Кушается память при отправке большой порции данных.


3-36523
AlexanderSK
2003-11-20 17:49
2003.12.12
Как предеть NULL в хранимую процедуру?


8-36774
Sergeys
2003-08-16 13:39
2003.12.12
С микшировать два битмапа


6-36791
Avers
2003-10-11 18:12
2003.12.12
Ув. мастера, как разместить файл на FTP сервере.