|
|
- Beschreibung:
-
PIO bedeutet beim Baustein 8255 Parallel
Input/Output Adapter. Hinter ihm verbirgt sich ein
Schnittstellen-, oder Interface-Baustein für die parallele
Ein- und Ausgabe von Daten an periphere Geräte eines
Computers. Der Baustein besitzt drei 8 Bit breite
Eingabetreiber sowie drei 8 Bit breite Ausgabespeicher. Je ein
Eingabetreiber und ein Ausgabespeicher bilden ein Tor (Port).
Die drei daraus resultierenden Tore sind mit A, B und C
gekennzeichnet. Ihre Anschlusspins besitzen die Bezeichnungen
PA0-PA7, PB0-PB7 und PC0-PC7.
-
-
Ob ein Tor mit seinem Eingabetreiber oder
mit seinem Ausgabespeicher betrieben werden soll, wird in einem
Kontrollregister festgelegt.
-
In dem Kontrollregister kann auch
bestimmt werden, ob eines der Tore A oder B zusammen mit je
einigen Bits des Tores C zusammenarbeiten soll. Die sich
hieraus ergebenden verschiedenen Betriebszustände werden
Modi genannt. Es gibt die Modi 0, 1 und 2. Bei diesen
Torkombinationen übertragen die Tore A und B, 8 Bit breite
Datenströme und Tor C erzeugt automatische Meldesignale,
mit denen eine sichere Datenübertragung gewährleistet
wird. Solche Signale werden Handshakesignale genannt.
(Handshake - Hände schütteln)
-
-
Die Torspeicher und das Kontrollregister
können von einem Computer aus, über einen Datenbus
D0..D7, mit Daten beschrieben oder gelesen werden. Die
Adressleitungen A0 und A1 ermöglichen dabei die Auswahl
des gewünschten Torspeichers bzw. des Kontrollregisters.
Ob der gewählte Torspeicher Daten vom Datenbus erhält,
oder Daten von den Toreingängen liefern soll, kann mit den
Lese/Schreib-Signalen des Computers, die an den Eingängen
/RD (read) und /WR (write) angeschlossen sind, bestimmt werden.
-
Damit der Baustein überhaupt
arbeitet, muss er mit dem Anschluss /CS auf LOW freigegeben
sein. Mit dem Resetanschluss RES kurzzeitig auf HIGH kann der
PIO8255 in einen definierten Anfangszustand gebracht werden. Im
Betrieb liegt RES auf LOW. Nach einem Reset befinden sich alle
Tore im Modus 0 und sind als Eingabetore definiert. Ihre Pins
sind hochohmig was bedeutet, dass sie über einen sehr
grossen Widerstand an +5V liegen. (Achtung es gibt
herstellerbedingte Abweichungen.)
-
Nach der Umsteuerung eines Eingabetores
zu einem Ausgabetor über das Kontrollregister, werden alle
Torbits des Tores auf LOW gesetzt. Dies gilt auch, wenn das Tor
zuvor schon einmal als Ausgabetor benutzt wurde, der
Ausgabespeicher also einen Ausgabewert besitzen könnte.
Das bedeutet, bei der Umsteuerung zum Ausgabetor wird der
Ausgabespeicher auf 0 gelöscht.
-
-
Tore schreiben und lesen
-
Die Tore werden durch die Adresssignale
an den Anschlüssen A0 und A1 ausgewählt. Die
Adresszahlen, die sich aus A0 und A1 bilden lassen werden
relative Adressen genannt. Abhängig von den Signalen RD
und WR lassen sich die Tore lesen oder beschreiben: lesen:
/RD=0 /WR=1 schreiben: /RD=1 /WR=0
-
Ist ein Tor über das
Kontrollregister als Eingabetor definiert, bewirken
Schreibvorgänge auf dieses Tor beim PIO8255 nichts. Beim
Lesen werden die hardwaremässigen Setzungen an den
Toreingängen zurückgeliefert.
-
Ist ein Tor über das
Kontrollregister als Ausgabetor definiert, so kann von diesem
Tor auch gelesen werden. In diesem Fall wird der Inhalt des
Ausgabespeichers zurückgegeben. Dieser Inhalt entspricht
im Normalfall den tatsächlichen Signalen an den Torbits.
Ein Schreibvorgang auf das Tor bewirkt, dass die Daten des
Computers in dem Ausgabespeicher des Tores abgelegt werden und
von hier hardwaremässig zu den Torbits Px0-Px7 gelangen.
Die nachfolgende Tabelle fasst dies zusammen ..
|
|