Wysyłanie na LPT

Cześć

W jaki sposób można wysłać sygnał na port LPT? Zależy mi na pinach 2..9. Chodzi mi np. o możliwość wysłania do kompa (przez LPT) prostego (0/1) sygnału z jakiegoś czujnika.

Reply to
OM
Loading thread data ...

nie wiem jak ustawic piny 2..9 jako wejscie, ale moze wystarczy kilka bitow wejsciowych dla zwyklego portu LPT jest chyba ich 4 ?

/piter

Reply to
Piter

czesc;

ja jako osoba o zerowym pojeciu z elektroniki, uzylem do tego linii wejsciowych portu LPT; sa to linie kontrolne; ja uzywalem 10, 11, 12,

13, 15 - czyli wszystkich;

linie wiszace sa interpretowane wysokim sygnalem; zas ja wpialem je w obwod do masy przez przekaznik; po zalaczeniu sie przekaznika linia dostaje niski sygnal;

dziala to ladnie na nowszych komputerach; na kompie 386sx wiszace wejscie rzeczywiscie mialo wysoki stan, ale po podlaczeniu zwyklego przedluzacza LTP, zaczynalo wariowac;

pzdrv; adas;

Reply to
adasiek

Jeśli masz dwukierunkowy port równoległy, to realizujesz to następująco*:

- ustawiasz rejestr wyjściowy portu na 0xFF

- ustawiasz bit kierunku portu w rejestrze kontrolnym: bit 5, maska 0x20

- odczytujesz stan pinów danych portu z rejestru danych Przykładowa funkcja w C realizująca to zadanie - pod systemem Linux: static guchar read_data ( void ){

gint data; guchar rdata;

data = 0xFF; ioctl(ppdev_fd, PPWDATA, &data); // data lines high ioctl(ppdev_fd, PPDATADIR, &data); // input mode ioctl(ppdev_fd, PPRDATA, &rdata); data = 0; ioctl(ppdev_fd, PPWCONTROL, &data); ioctl(ppdev_fd, PPDATADIR, &data); // output mode return rdata; }; gdzie: ppdev_fd jest deskryptorem urządzenia związanego z portem równoległym.

pozdrawiam

Radosław Korzeniewski

*) w chwili obecnej większość, jak nie wszystkie, dostępne układy portu równoległego mogą pracować jako porty dwukierunkowe, czasami należy w BIOSie ustawić odpowiedni tryb pracy portu
Reply to
Radoslaw Korzeniewski

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.