Форум: "Система";
Текущий архив: 2003.12.12;
Скачать: [xml.tar.bz2];
ВнизНестандартная работа с 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;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.007 c