Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.013 c
1-36594
GreySerg
2003-12-01 17:21
2003.12.12
Как узнать имя класса окна по его Handle ?


1-36749
LAMER-XP
2003-12-02 01:06
2003.12.12
Автоматический преход к следующей закладке в PageControl e


3-36582
n13
2003-11-20 11:58
2003.12.12
dbf


1-36600
Clift
2003-12-01 16:06
2003.12.12
Array


1-36700
Ptr
2003-12-02 14:08
2003.12.12
Как увеличить переменную типа double на 0.5 ?




   Наверх