Herunterladen Inhalt Inhalt Diese Seite drucken

Asynchrone Serielle Schnittstellen; Signale Der Seriellen Schnittstellen; Bios Funktionen; Hardware-Interrupt Der Seriellen Schnittstellen - taskit 386EX MicroPC Technisches Handbuch

Inhaltsverzeichnis

Werbung

MicroPC

5.7. Asynchrone serielle Schnittstellen

Zwei zu dem bekannten 16C450 kompatible UARTs sind auf dem 386EX-Prozessor integriert. Im
Gegensatz zu den heute auf PC-Mainboards integrierten UARTs (welche zum 16C550 kompatibel
sind) besitzen sie daher auch keine FIFOs.
Die erste serielle Schnittstelle (COM1) wird standardmäßig als Ein-/Ausgabeeinheit des MicroPC
verwendet (Gerät "CON" von DOS). Man kann für CON aber auch die COM2 oder eine externe
serielle Schnittstelle einstellen (möglich sind COM1 bis COM4).

5.7.1. Signale der seriellen Schnittstellen

Beide serielle Schnittstellen besitzen die beim PC üblichen acht Signale: Datenleitungen (RXD, TXD),
Modem-Status-Eingänge (DSR, CTS, DCD und RI) und Modem-Control-Ausgänge (RTS, DTR).
Häufig wird eines der Paare DTR/DSR oder RTS/CTS für "Handshake-Betrieb" verwendet.
Die acht Signale der COM1 können einzeln als Ein- oder Ausgabeports umkonfiguriert werden (s.
Kapitel "I/O-Ports").
Die Signale der RTS, DTR, DSR und RI der COM2 können wahlweise auch als Signale der
synchronen seriellen Schnittstelle verwendet werden (s. dort).

5.7.2. BIOS Funktionen

Das BIOS stellt die PC-üblichen INT 14h-Funktionen zur Bedienung der seriellen Schnittstelle zur
Verfügung. Abweichend von der PC-Tradition werden diese beim MicroPC mit Empfangs-Interrupt
betrieben. Diese Einstellung kann im BIOS-Setup deaktiviert werden. Die im Setup einstellbare Buffer-
Größe ist nur bei Interrupt-Betrieb wirksam. Um einen geringeren Rechenzeitaufwand zu erreichen,
werden die seriellen Schnittstellen in vielen Anwendungen auch direkt, d.h. durch Zugriff auf die
UART-Register, programmiert. Hierbei wird üblicherweise zumindest der Receive-Interrupt verwendet.

5.7.3. Hardware-Interrupt der seriellen Schnittstellen

COM1 und COM2 belegen wie beim PC die IRQ 4 und 3. Falls man für die seriellen Schnittstellen die
Interrupts nicht benötigt, können IRQ4 und 3 auch extern für andere Zwecke verwendet werden.
Es gibt pro UART vier verschiedene Interrupt-Quellen (die aber alle die gleiche IRQ-Leitung
verwenden):
-
Line-Status-Interrupt:
-
Receive-Interrupt:
-
Transmit-Interrupt:
-
Modem-Status-Interrupt:
Dabei bedeutet
Overrun-Error: Das Receive-Buffer-Register wurde durch ein weiteres Zeichen überschrieben, d.h.
das vorige Zeichen wurde vom Prozessor nicht rechtzeitig abgeholt;
Parity-Error: Die Parität oder auch das Paritätsbit (bei forced parity) des empfangenen Zeichens war
ungleich dem Komplement des Even Parity Select (EPS) Bit im Line Control Register. Dies geschieht
nur bei eingeschaltetem Parity-Bit. Bei "forced parity" kann man das Parity-Bit ähnlich wie ein neuntes
Datenbit verwenden, da man es beim Senden mittels des EPS Bits setzen kann und beim Empfangen
mittels des Line Status Interrupts auswerten kann.
Framing-Error: Zeichen hatte kein Stop-Bit (oder ein Stop-Bit zuwenig, wenn 1,5 oder 2 Stopbits
eingestellt sind). Ein gültiges Stop-Bit bedeutet high-Zustand der RXD-Leitung.
Break-Bedingung: Die RXD-Leitung ging für die Dauer von mehr als einem Zeichen auf low. Das hat
immer auch einen Framing-Error zur Folge. Eine Break-Bedingung kann beim Senden durch Setzen
des Break Bits des Line-Control-Registers erzeugt werden. Die Mindestzeitdauer von einem Zeichen
erreicht man, indem man anschließend ein Zeichen sendet und wartet, bis das Transmit Shift Register
leer ist. Danach wird das Break Bit wieder zurückgesetzt. Man kann auf diese Weise dem Empfänger
einen Sonderzustand signalisieren, ohne auf bestimmte Byte-Werte oder Byte-Sequenzen
zurückgreifen zu müssen.
* bei RI: nur steigende Flanken erzeugen einen IRQ.
bei Overrun-, Parity- oder Framing-Error oder Break ;
ein Zeichen wurde komplett empfangen (Receive Buffer full);
ein Zeichen wurde komplett gesendet (Transmit Buffer empty);
der Zustand von DCD, RI, CTS oder DSR hat sich geändert *.
- 18 -
Hardware

Werbung

Inhaltsverzeichnis
loading

Inhaltsverzeichnis