Zlportio odczyt

Odpowiedz Nowy wątek
2006-09-21 10:24

Rejestracja: 14 lat temu

Ostatnio: 2 lata temu

0

Witam mam pytanie co do procedury odczytu danych przez port Lpt za pomoca komponentu Zlportio.
Zapis i kontrola nad 8 diodami przez port lpt to były proste <ort>żeczy</ort>. A odczyt??
Aby odczytac dane z portu lpt należy na nie go podac jakis sygnał znam sposób łatwy a zarazmem bezpieczny i prosty. Tylko program jak napisałem pokazuje ze nic nie ma na tym porcie. Sciagnolem z Net-u jakis prorogram to juz bylo lepiej bo pokazywal ze cos jest podawane na port.

I własnie tu moja <ort>proźba </ort>czy ktos próbował odczytac dane przez port lpt za pomoca tego komponentu Zlportio. Jesli tak to czy byłby tak uprzejmy zaprezentowac te kilka linijek procedury odczytu.
Z góry dzieki.

Pozostało 580 znaków

2006-09-21 18:04

Rejestracja: 17 lat temu

Ostatnio: 4 lata temu

0

napisz cos wiecej... bo nawet nie wiem, piszesz np ze "podac jakis sygnał ".. jakis... wiesz jaki, czy nie?

na port wysylasz byte:255 (albo 0, wlasnie cholera nie jestem pewien) a potem odczytujesz bajt z portu.
dzielisz go na bity i masz stany dla pojedynczych pinow portu...

Pozostało 580 znaków

2006-09-21 19:27

Rejestracja: 17 lat temu

Ostatnio: 7 lat temu

0

255 trzeba rzucić, jak dasz 0, to wszystkie wysłane na port jedynki zejdą do masy i nic nie odczytasz :).

Pozostało 580 znaków

2006-09-21 20:02

Rejestracja: 14 lat temu

Ostatnio: 2 lata temu

0

Znaczy tak chce podac +5V na jeden z 8 bitów albo na wszyskie i zeby w programie wyswietliła mi sie wartośc od 0 do 255. A podawałem tak zwirejąc 13 pin online gdzie zawsze jest 5V (podobno) do jednego z bitów przez rezystor. (Ale zastosuje bufor pradowy ucy74244 bedzie bezpieczniej i z zewnetrzym zasilanie) Zmieniałem adresy bazowe portów ale duzo to nie dało bo po uruchomieniu programu wyswietlał jakas wartosc po zwarciu inna ale na kazdym z bitów taka sama.

Poprostu jak ustawic port na odczyt program bym był sobie w stanie napisac. A jak <ort>kozystałem </ort>z gotowych programow nic nie działało chć używałem UserPort bo mam XP

Pozostało 580 znaków

2006-09-21 23:28

Rejestracja: 14 lat temu

Ostatnio: 2 lata temu

0

Już skumałem o co chodzi. Przetestuje jak bedzie działać to rzuce tu kod programu. :-)

Pozostało 580 znaków

2006-09-22 11:30

Rejestracja: 14 lat temu

Ostatnio: 2 lata temu

0

Do któregos z Pinów bitów podłączm +5V a do pinu 25 GND
To kod programu. Ale niestety nadal widze 0. Mozę mi ktos powiedzić gdzie popełniam błąd?? A może problem tkwi w tym które piny poza GND i Bit trzba podłaczyć. Będe wdzięczny za każda uwage.

var
B:Byte;

procedure TForm1.Button1Click(Sender: TObject);
begin
B:=portreadb($378);
Label1.Caption:=IntToStr(B);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
Zlportio.ZlIOStarted:=True;
if Zlportio.zliostarted then
Zlportio.zlioportwrite($378+2,B,16)
else
Showmessage('bład');
end;
end.

Pozostało 580 znaków

2006-09-22 20:37

Rejestracja: 16 lat temu

Ostatnio: 2 lata temu

0

Proponuję najpierw zapoznać się ze specyfikacją portu LPT, a później wyciągnąć z niej wnioski. Pierwsza lepsza str. to http://www.rafal.waw.pl/wynalazki/porty/
Podpowiedz:
00h -> rejestr danych (Data), służy do zapisu i odczytu, odczytywać może jedynie dane wpisane tam przez siebie.
Czyli:
Jeśli chcemy sterować diodkami, zapisujemy dane do rejestru bazowego (np. 0x378), jeśli chcemy dane odbierać, odczytujemy je z rejestru bazowy+1 (np 0x379) ktorego piny to: 10, 11, 12, 13, 32.

Jako ciekawostkę powiem, że tylko raz spotkałem się z kontrolerem umożliwiającym odczyt stanu z pinow (D0-D7) (na kosciach goldstara). Ponoć taki tryb "dual" można także włączyć w biosie, w niektorych plytach glownych, lecz jest to "poza standardem".
Pozdrawiam.

Pozostało 580 znaków

2006-09-22 21:52

Rejestracja: 14 lat temu

Ostatnio: 2 lata temu

0

Tak ciekawe informacje na tej stronie.
10 ,11,12,13,32. Bazowy +1. Odczytuje dane. Czyli Na port LPT podaje sobie do pinu np10 +5V i podłaczam GND i powinen odczytywać czy tak??

A i jeszce jedno. Pobrałem program <ort>z tąd</ort> http://www.specosoft.com/en/zlportio.html
i teraz jak zupełnie nic nie ma podłaczonego do portu a dam Read
to dla:
378 mam 0 tu moge zapisac Ten zapis odczyt(To co sam ustawi)
379 mam 127 tu nie moge zpiasc (Odczyt)
37A mam 255 tu moge zapisc(Zapis i Odczyt)

Pozostało 580 znaków

2006-09-22 23:37

Rejestracja: 16 lat temu

Ostatnio: 2 lata temu

0
jorgus1987 napisał(a)

379 mam 127 tu nie moge zpiasc (Odczyt)

Ponieważ bit 7 (busy) jest zanegowany. Podajesz +5V, odczytujesz 0.

Pozostało 580 znaków

2006-09-23 18:46

Rejestracja: 14 lat temu

Ostatnio: 2 lata temu

0

O napisze tak Program mam nawet kilka autorzy pisali ze działa pod XP i mam napisany przez siebie.
Teraz prosze kogos zeby mi napisał w jaki sposób mam podłaczyc napiecie zewnetrzna +5 V do portu nie na które piny bo to wiem Ze ustawiam w rejestrze $378+2 watrosc bitu 5 na 1 przestawiam w ten sposób na odczyt a dane odczytuje z rejestru $378+1 z pinow 10,11,12,13,15 na nie mam opdawać to napięcie a no i jeszcze GND. Tylko chodzi mi o cos w rodzaju schematu jak to podłaczyć przez jaki rezystory czy moze do tego jeszce jakis tranzystor albo moze bufor prądowy poprostu układ który podaje mi +5V na port z zewnetrznym zasilaniem. Chciałbym wiedziec jak to ma wyglądć z góry dzieki

Pozostało 580 znaków

marcinnn
2006-09-24 11:33
marcinnn
0
jorgus1987 napisał(a)

O napisze tak Program mam nawet kilka autorzy pisali ze działa pod XP i mam napisany przez siebie.
Teraz prosze kogos zeby mi napisał w jaki sposób mam podłaczyc napiecie zewnetrzna +5 V do portu nie na które piny bo to wiem Ze ustawiam w rejestrze $378+2 watrosc bitu 5 na 1 przestawiam w ten sposób na odczyt a dane odczytuje z rejestru $378+1 z pinow 10,11,12,13,15 na nie mam opdawać to napięcie a no i jeszcze GND. Tylko chodzi mi o cos w rodzaju schematu jak to podłaczyć przez jaki rezystory czy moze do tego jeszce jakis tranzystor albo moze bufor prądowy poprostu układ który podaje mi +5V na port z zewnetrznym zasilaniem. Chciałbym wiedziec jak to ma wyglądć z góry dzieki

wejsciami steruje sie napieciowo, one nie pobieraja pradu, wiec zadnych buforow pradowych czy rezystorow nie trzeba. Wystarczy, ze podasz +5V lub 0V na odpowiednie wejscie.

Pozostało 580 znaków

Odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0