3 - Serielle Schnittstelle [ID:36109]
50 von 66 angezeigt

Als ich vor etwas über 20 Jahren, bevor Netzwerk im Heimbereich Einzug hielt, Multiplayer-Spiele

wie Doom über Rechner hinweg spielen wollte, griff ich auf ein sogenanntes Null-Mode im

Kabel zurück.

Heutzutage jedoch sind diese seriellen Anschlüsse eigentlich nur noch für die Server-Administration

relevant.

Hier ist ein entsprechender 9-Polyger-D-Substecker abgebildet.

Um genau zu sein handelt es sich hier jedoch nur um eine Verlängerung.

Dieser Stecker wird bei PCs für serielle Schnittstellen nach den Standard RS232 eingesetzt.

Entsprechend sind hier extra Leitungen für Sendeanforderung, Senderlaubnis und Empfangsstatus.

Wirklich wichtig sind allerdings nur drei Leitungen.

Einmal elektrisch bedingt die gemeinsame Signalmasse, sowie die ausgehende und eingehende Datenleitung.

Missen wir nun die Datenleitung, kann sich über die Zeit folgendes Bild ergeben.

Diverse Pegeländerungen zwischen –15 bis –15 Volt.

Um die einzelnen Pegel nun interpretieren zu können, wandeln wir es in ein diskretes

Signal um, indem wir es in vorher definierte Zeitfenster einteilen.

Nun ordnen wir den Pegel eines jeden Zeitfensters einem Wert zu.

Die Spannung liegt beim niedrigen Pegel zwischen –15 und –3 Volt, was als 1 interpretiert

wird.

Ein hoher Pegel zwischen –3 und –15 Volt wird zu einer Null.

Dabei sind die invertierte Interpretation der Pegel als auch die höhere Spannung die

wichtigen Unterschiede zu TTL-Serial, welcher beispielsweise von Arduino bekannt ist.

Diese Wertefolgen entsprechen nun einem bestimmten Übertragungsformat.

Der erste Wechsel von 1 auf 0 kennt sein den Start der Übermittlung, gefolgt von den

Datenbits und gegebenenfalls ein Prüfbit, bevor das Stoppbit wieder auf den Ruhepegel

zieht.

Die Anzahl der Datenbits und ob bzw. welches Paritätsbit, gerade oder ungerade, verwendet

wird, muss vorher ebenso wie die Übertragungsgeschwindigkeit von beiden Kommunikationspartnern gleich

festgelegt werden.

Die Übertragungsrate muss dabei ein ganzzähliger Teiler von 115.200 sein und entspricht den

Symbolen die pro Sekunde übertragen werden können.

Wenn wir keine großen Datenmengen übertragen wollen, reicht eine niedrige Baudrate, welche

dafür unter Umständen stabiler läuft.

Heutige PCs besitzen meist nur noch eine einzige solche Hardware-Schnittstelle, wenn überhaupt.

Früher, als diese noch wichtiger waren, waren es bis zu vier.

Die Programmierung erfolgt über je 8 IOPorts pro Anschluss, womit jeweils 12 Register

angesprochen werden können.

Die Dekodierung der Signale gemäß des Übertragungsformats wird zum Glück von der Hardware übernommen.

Wir müssen uns dabei nur im Empfang und Versand der Daten kümmern.

Eine detaillierte Beschreibung über die Programmierung der seriellen Schnittstelle findet ihr neben

den Datenblättern, auch in den Wikis von OSDEV.org sowie LowLevel.eu, welche auch insgesamt

gute Adressen für die Betriebssystementwicklung sind.

Wer nun diese Schnittstelle ordentlich in Stubs implementiert, kann sich dann in die

ESA der Informatik-Sammlung Erlangen beim Rechenzentrum schleichen und dieses 1978

von DEC veröffentlichte Gerät anschließen.

Ein VT100-Terminal, welches über die RS232-Schnittstelle Ein- und Ausgaben erlaubt.

Bekannt ist sie aber vor allem durch die von ihr unterstützten sogenannten Unsee-Escape-Sequenzen,

die Steuereinweisungen, welche beispielsweise Farben und Cursor-Positionen ändern können

und die auch von den heutigen Terminal-Emulatoren, wie ihr sie auf eurem PC nutzt, größtenteils

unterstützt werden.

Diese Steuereinweisungen beginnen alle mit dem Escape-Zeichen, beispielsweise gefolgt

Teil einer Videoserie :
Teil eines Kapitels:
Ein- und Ausgabe

Zugänglich über

Offener Zugang

Dauer

00:05:02 Min

Aufnahmedatum

2020-07-26

Hochgeladen am

2021-09-20 18:36:26

Sprache

de-DE

Kommunikation über die Serielle Schnittstelle, optional für Aufgabe 1 der Lehrveranstaltung Betriebssysteme.

Folien und Transkript zum Video.

Tags

betriebssysteme serial operating systems stubs
Einbetten
Wordpress FAU Plugin
iFrame
Teilen