Schematy i opisy portów


0x08 graphic
Schematy i opisy portów (LPT, COM, Gameport)

Poradnik: Jak podłączyć własnoręcznie skonstruowane urządzenia do komputera.

-
Schematy i opisy portów - LPT, COM, Gameport
-
Programy do sterowania portami
-
Napisz własny program
-
Konstruowanie urządzenia

LPT / port równoległy / interfejs Centronics / parallel port / IEEE 1284 / D-SUB

UWAGA: Port na obrazku ma 25 pinów. Tak wygląda port od strony komputera. Od strony kabla (drukarki) ma 36. Niektóre różnią się. Piny od 1 do 14 są identyczne w obu złączach.

Pozostałe:

25-pin

Nazwa

36-pin

15

Error

32

16

Initialize

31

17

Select In

36

Od strony komputera: 25 PIN D-SUB [więcej]
Od strony drukarki: 36 PIN CENTRONICS [więcej]

- rejestr danych (wyjścia) - 8 bitów (D0 - D7) Napięcie +5V
- rejestr dwukierunkowy - 4 bity (bit0 STROBE, bit 1 AUTO, bit 2 INIT, bit 3 SELECT)
- rejestr wejściowy (bit 3 ERROR, bit 4 ONLINE, bit 5 PE, bit 6 ACK, bit 7 BUSY).

Adresy rejestrów podaje się zwykle w odniesieniu macierzystego adresu bazowego:
- 00h -> rejestr danych (Data), służy do zapisu i odczytu, odczytywać może jedynie dane wpisane tam przez siebie.
- 01h -> rejestr wejściowy (Status), służy do odczytu.
- 02h -> rejestr sterujący (Control) jest dwukierunkowy, służy do zapisu i odczytu.

0x01 graphic


Jak ustalić adresy rejestrów (czyli adres portu potrzebny podczas pisania programu):
Podobno najczęściej jest to 278h. U mnie jest H378 (tak wpisuję w Visual Basic - w Win98, Me i WinXP wszystko działa.)
Można to sprawdzić za pomocą programu (zob. dział programy).

Możesz to zobaczyć na przykład w Menadżerze Urządzeń (Windows 98, Me, XP). Wybierz Porty => Port drukarki (LPT) => Właściwości => Zasoby => Zakres We/Wy => W Ustawieniach jest podana liczba (może to być np.: 0378-037F).
Ta sama informacja jest w Informacjach o systemie: Start => Programy => Akcesoria => Narzędzia systemowe => Informacje o systemie => Zasoby sprzętowe => We/Wy (może to być np.: 0x00000378-0x0000037F).

Adresy rejestrów po uwzględnieniu przemieszczenia (offset) w systemie szesnastkowym: (W dziale Napisz własny program jest to pokazane na przykładzie).

port

szyna danych

rejestr wejściowy

rejestr dwukierunkowy

LPT1:

378

379

37A

LPT2:

278

279

27A

LPT3:

3BC

3BD

3BE

Jeśli ustawi się dany bit rejestru na 1, to na odpowiedniej końcówce LPT pojawi się napięcie +5V.

0x01 graphic


Rejestr danych:
Osiem (D0 - D7) wyjść, które można zaprogramować poprzez wysłanie liczby od 0 do 255. Każda liczba z tego zakresu odpowiada konkretnej kombinacji wyjść. Bardzo dobrze to widać po podłączeniu diód do LPT (zanim zaczniesz konstruować jakieś urządzenie zrób prosty układ z 8 diód - zobaczysz jak to wszystko działa). Można zauważyć, że każda kombinacja w systemie dziesiętnym (0-255) odpowiada liczbie w systemie dwójkowym (binarnym) zapisanej w postaci zapalonych lub zgaszonych diód - jedynki i zera.

Rejestr wejściowy:
Odpowiednio łącząc metalową obudowę LPT z którymś z pinów (10, 11, 12, 13, 32) możesz zmienić wartość na tym rejestrze, która może być odczytana przez program.

Rejestr sterujący:
(W praktyce jeszcze z niego nie korzystałem, poniższa informacja to cytat)
Można nim przesyłać informację w obu kierunkach: komputer - świat zewnętrzny oraz świat - komputer. Praktycznie jest czterobitowy. Praktycznie, gdyż cztery starsze bity nie są dostępne i nie wolno w nie ingerować, bo spowoduje to awarię systemu. Dostępne są cztery młodsze bity. Bit 0 (STROBE), 1 (AUTO) i 3 (SELECT) są negowane sprzętowo. Bez negacji jest bit 2 (INIT). Powoduje to trochę komplikacji przy odczycie lub wysyłaniu wartości do portu. Na przykład aby ustawić bit 4 STROBE należy wysłać do portu o adresie np. 379h (378h + 1h =379h) liczbę dziesiętna 10. Aby ustawić AUTO - 9, a dla INIT - 15. Wysłanie liczby 11 powoduje ustawienie na wszystkich bitach portu wartości 0 logicznego. Wysłanie 4 ustawi same jedynki.

0x01 graphic

Zastosowanie:

Według mnie port LPT jest najbardziej uniwersalny i najprostszy w obsłudze. Zwykle potrzeba więcej wyjść niż wejść. LPT ma 8, które bardzo łatwo zaprogramować oraz jeszcze 3 (gdyby 8 nie wystarczyło). Wejść ma 5. Jednak jeśli to urządzenie ma sterować komputerem to lepiej użyć Gameportu. Dużo osób ma drukarkę, więc bez problemu można odłączyć kabel, położyć koło komputera i pokombinować. Prosty program do sterowania 8 diodami ma tylko kilka linijek kodu.
[na górę strony]

COM / RS232 / DB9 / PC 9 / port szeregowy / serial port

0x08 graphic
Złącze żeńskie:
<== wejście
==> wyjście

Pin

Name

RS232

Kierunek

Opis

1

CD

CF

<==

Carrier Detect

2

RXD

BB

<==

Receive Data

3

TXD

BA

==>

Transmit Data

4

DTR

CD

==>

Data Terminal Ready

5

GND

AB

==

System Ground (Uziemienie)

6

DSR

CC

<==

Data Set Ready

7

RTS

CA

==>

Request to Send

8

CTS

CB

<==

Clear to Send

9

RI

CE

<==

Ring Indicator

Podczas pisania programu do sterowania urządzeniem przez COM z tej tabelki istotne jest tylko to, który z pinów to wejście, który wyjście, a który uziemienie (minus).

Adres portu można znaleźć w tan sam sposób co wcześniej opisałem dla LPT.

Zastosowanie:

Dobry do prostych układów (np. mail2led). Zaletą COM-a może być to, że obecnie jest raczej niewykorzystywany więc nie ma potrzeby odłączania innego urządzenia.
[na górę strony]

Gameport / joystick / MIDI

PIN

Znaczenie

Rysunek

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

  +5v
  Joystick A, Button 1
  Joystick A, X Axis
  Gnd
  Gnd
  Joystick A, Y Axis
  Joystick A, Button 2
  +5v
  +5v
  Joystick B, Button 1
  Joystick B, X Axis
  Gnd
  Joystick B, Y Axis
  Joystick B, Button 2
  +5v

0x01 graphic
0x01 graphic

Gameport nie jest standardowo umieszczony na płycie głównej. Jest elementem karty dźwiękowej (służy również jako wejście/wyjście MIDI). Jeśli ktoś ma zintegrowaną kartę muzyczną i nie ma Gameportu, to ... ma problem. Zawsze jednak można kupić jakąś starą używaną kartę dla samego portu.
Port joysticka znajduje się pod adresem 201h w Win98.

Zastosowanie:

Jak wynika z tabelki Gameport ma 4 wyjścia i aż 8 wejść. Taka duża liczba czasem może się bardzo przydać. Na przykład pełne sterowanie komputerem - można zastąpić myszkę.

Zastosowań może być bardzo dużo (to zależy tylko od inwencji twórcy).
A może ktoś chce zrobić alarm, który monitoruje 8 punktów w domu - program, który wyświetla na monitorze, które drzwi są otwarte, a które zamknięte.



Wyszukiwarka

Podobne podstrony:
936 schematy opisy instukcje
06 pamięć proceduralna schematy, skrypty, ramyid 6150 ppt
7 aglebra schematow bloczkowych
wZ 2 Budowa wiedzy społecznej teoria schematów
3 ogolny schemat replikacji i onkogeza DNA wirusowa
Schematy animacji
wykład 5 schematy, przywileje, role
schemat mechanika
schemacik prezentacji
5 Algorytmy i schematy blokowe
Propozycja przygotowania schema Nieznany
f Obraz 6 plan 1 schemat
GH 7 082 schemat
poznawczo behawioralne schematy poznawcze
ICh S schemat rozw zad konwekcja
notatek pl W,ANATOMIA,SCHEMAT B Nieznany

więcej podobnych podstron