Home :: Artykuły :: Programowanie w Delphi :: Obsługa LPT w Delphi i WinApi

Logowanie



Dziękuję za wszelkie dotacje.

Kwota: 

Obsługa LPT w Delphi i WinApi
Wpisany przez Wojciech Romanek   
piątek, 13 kwietnia 2007 02:11

Tym razem proponuję Wam zapoznanie się z obsuługą portu równoległego w Delphi, ale nie tylko. Obsługa odbywa się za pomocą WinApi wiec równie dobrze można ją zrealizować w C++. Dzięki temu że używamy WinApi program przez nas napisany nie ma problemu z funkcjonowaniem na WinXp.

Na początku tworzymy zmienną najlepiej globalną hLPT w której zapiszemy uchwyt naszego portu LPT. Za pomocą funkcji CreateFile przypisujemy do hLPT uchwyt naszego portu, dzieki niemu możemy teraz wysyłać na port dane. Do wysyłania danych używamy fonkcji WriteFile dane które chcemy wysłać zapisujemy do zmiennej data a nastepnie wywołujemy powyższą funkcję.

var
hLPT:HWND;
ret:dword;
data:integer; // tu bedą zapisywane dane wysyłane na port
begin
hLPT:=CreateFile('LPT1',GENERIC_WRITE,0,nil,OPEN_EXISTING,0,0);
data:=1;      //00000001 binarnie czyli syg "1" na pinie zerowym (D0)
WriteFile(hLPT,data,1,ret,nil);
data:=8; // 00001000 binarnie czyli syg "1" na pinie trzecim (D3)
WriteFile(hLPT,data,1,ret,nil);
data:=0; // czyli wyzerowanie portu
WriteFile(hLPT,data,1,ret,nil);
CloseHandle(hLPT);  //zamknięcie portu
end;