RS-232 Schnittstelle

Die RS-232 Standards befassen sich vor allem mit seriellen Schnittstellen, die bei Computern vorkommen. Eingeführt wurde die ganze Thematik in den frühen 1960ern durch ein US-amerikanisches Komitee zur Festlegung von Standardisierungen im Bereich der Informationstechnik und Industriellen Kommunikation. Die aktuelle amerikanische Version stammt hierbei aus dem Jahre 1997 und trägt offiziell die Bezeichnung ANSI EIA-232-F oder auch TIA-232-F. Innerhalb der USA und in weiten Teilen Europas ist dieser Standard jedoch besser unter der Kennung RS-232 verbreitet. Dabei stand die Abkürzung RS in frühen Zeiten für den Radio Sector, da sich die Organisation aus dem Zusammenschluss von Radioherstellern entwickelt hat. Heutzutage versteht man hierunter jedoch den Recommended Standard.

Die Funktionsweise der RS-232 Standards

Unter diesem Standard wird die Verbindung definiert, welche zwischen dem Terminal und dem Modem erfolgt. Demnach geht es um die Kommunikation zwischen den Datenendeinrichtungen und den Datenübertragungseinrichtungen. Der eigentliche Datentransfer findet in Form von Wörtern statt, wobei ein Wort je nach Art der Konfiguration fünf bis neun Bits umfassen kann. In diesen Bits ist dann ein einzelnes Zeichen kodiert, was in der Regel gemäß der ASCII-Tabelle erfolgt. Oft existieren auch weitere Steuercodes, die sich an dem „American Standard Code for Information Interchange“ orientieren und der Ansteuerung von Terminals dienen können. Allerdings findet keine klare Definition dieser Codes in den RS-232 Standards statt. Aufgrund dessen werden in der Praxis eher Wörter von sieben bis acht Datenbits übertragen, obwohl bei entsprechender Anpassung des Signalpegels beispielweise auch die Verarbeitung eines Fernschreibcodes möglich ist, der nur fünf Bits enthält. Der Aufbau einer Kommunikation geschieht Bit-seriell, wobei es für beide Übertragungseinheiten je eine eigene Datenleitung gibt, sodass die Bits nacheinander auf der Leitung verschickt werden können, was im Gegensatz zur herkömmlichen parallelen Datenübertragung steht. Hierfür ist jedoch eine Seriell-Parallel-Wandlung notwendig, die entweder als ein integriertes Modul in einem Mikrocontroller oder als Einzelbaustein in Form der UARTs vonstattengeht.

Die Klassifizierung als serielle Schnittstelle

Es existieren zwar zahlreiche Arten von seriellen Schnittstellen, doch um Ursprung haben nur die RS-232 Standards diese Kennzeichnung inne. Die Grundlage hierfür war die einstige Monopolstellung im PC-Bereich. Damit diese Bezeichnung jedoch auch zutreffend ist, dürfen die Bitraten des Senders und Empfängers nur in wenigen Prozentanteilen voneinander abweichen. Somit ist es unerlässlich, dass jedes Wort, welches übertragen werden soll, einen Startbit erhält, der den logischen Wert 0 besitzt. Von diesem Bit wird die Kommunikation dann initialisiert und ein Stoppbit mit dem logischen Wert 1 signalisiert das Ende der Übertragung. Dabei ist das Stoppbit jedoch kein Bit im herkömmlichen Sinne, da es die Mindestlänge des Ruhezustandes oder der Pause bezeichnet, sodass sich zwischen dem Versand zweiter Wörter beliebig viele solcher Stoppsignale ansiedeln können. So findet sich in der Praxis selbst ein Stoppbit des Werts 1,5. Der Grund hierfür findet sich bei den UARTs, da diese zwischen dem Empfang zweier Wörter in einigen Fällen Pausen brauchen, die mehr als die Dauer eines Bits umfassen. Letztlich werden zwischen den Start-und Stoppbits die Datenbits übertragen, die die eigentlichen Nutzdaten enthalten. Dies passiert ohne eine Veränderung der Taktzeit.

Die verschiedenen Methoden zur Realisierung der binären Zustände

Hinter den RS-232 Standards versteckt sich im Grunde eine Spannungsschnittstelle, bei denen binäre Zustände erreicht werden sollen. Hinter dem Begriff „binär“ steckt dabei die Bedeutung „zweiwertig“, „dual“ oder auch „bivalent“, womit ferner die vorhandenen Eigenschaften einer Speicherzelle beschrieben werden, die gebraucht werden, um einen von zwei Werten anzunehmen. Bei Systemen die der Datenverarbeitung dienlich sind, lassen sich im Falle der elektronischen Bauelemente immer nur zwei Zustände annehmen, sodass diese Komponenten rückwirkend als binäre oder duale Bauelemente definiert werden. Dabei haben alle zweiwertigen Zustände die Gemeinsamkeit, dass sie sich innerhalb kürzester Zeit in ihrer Form verändern lassen. Dies bewirkt unter anderem die Geschwindigkeitsrate, mit welcher moderne Rechner heutzutage arbeiten können. Damit sich die binären Zustände jedoch auch außerhalb des Rechners darstellen lassen, kommt ein entsprechendes Zahlensystem zum Einsatz, bei welchem die Ziffern 0 und 1 stellvertretend für die möglichen Werte stehen. Um die binären Zustände zu realisieren finden sich unterschiedliche elektrische Spannungspegel:

  • Datenleitungen – bei diesen Leitungen wird eine negative Logik eingesetzt, wobei die logische Eins durch eine Spannung im Intervall zwischen – 3V und – 15V dargestellt und die logische Null im Bereich von + 3V und + 15V definiert wird. Signalpegel die sich zwischen den Spannungen von – 3V und + 3V bewegen gelten aus diesem Grunde als undefiniert.
  • Steuerleitungen – hier wird der aktive Zustand innerhalb des Spannungspegels von + 3V und + 15V wiedergespiegelt. Der inaktive Zustand findet seine Darstellung im Intervall von – 3V und – 15 V. Dabei muss jedoch beachtet werden, dass die angegebenen Bezeichnungen für die Steuerleitungen, die in der Praxis im Normalfall auch angewandt werden, so im Originalstandard überhaupt nicht existent sind.

Wichtige Aspekte bei der Umsetzung von RS-232 Standards

Ein System soll in der modernen Technik ein Netzwerk widerspiegeln, welches in der Gesamtheit aller angeschlossenen Komponenten zu einer Kommunikation befähigt ist. Erforderlich sind solche Anwendungen besonders in Industriebereichen, bei denen Produktionen gesteigert werden sollen, wobei gleichzeitig die Qualität der Arbeit und die Einfachheit der Durchführung berücksichtigt werden müssen. Zahlreiche Organisationen, Verbände und Entwickler beschäftigen sich mit der Entwicklung eines Kommunikationsprogrammes, welches unabhängig von der Art der Geräte und den Herstellern ist. Besonders hervorgestochen sind dabei die Arbeiten der Electronic Industries Alliance, die eine große Menge an technischen Komponenten entworfen hat, die sogar den Status eines Standards erreicht haben und somit gemeinhin als anerkannt gelten. In diesem Text sollen die RS-232 Standards behandelt werden, bei denen es sich im Grunde um eine serielle Schnittstelle handelt, die einen einfachen Aufbau einer Kommunikation zum Datentransfer ermöglicht.

Die Handshakes

Damit es beim Datentransfer nicht zu Verlusten der zu übermittelenden Informationen kommen kann, ist es erforderlich, dass der Empfänger jederzeit dazu berechtigt ist, die Datenübertragung anzuhalten, wenn eine Verarbeitung weiterer Daten aufgrund von Überbelastung nicht mehr möglich ist. Dies wird in der Fachsprache auch als Handshake bezeichnet, wobei sich dieser entweder hardwareseitig über Leitungen oder softwareseitig durch spezielle Steuercodes realisieren lässt:

  • Software Handshake – bei dieser Methode sendet der Empfänger spezielle Zeichen, die der Steuerung des Datenflusses dienen und an den Sender gerichtet sind. Entsprechend dieser Vorgehensweise finden sich drei unterschiedliche Leitungen, die für den Versand von Daten benötigt werden. Allerdings kann ein Software-Handshake nur durchgeführt werden, wenn die beiden Steuercodes innerhalb der Nutzdaten nicht erfasst sind.
  • Hardware Handshake – über zusätzlich zur Verfügung gestellte Steuerleitungen senden die beiden Geräte Signale an den Gegenüber, die den jeweiligen Status beinhalten. Bei einem Minimal-Interface setzt sich ein Hardware-Shake aus ganzen fünf Leitungen zusammen.

Begrenzende Faktoren bei den RS-232 Standards

Aufgrund der jeweils verwendeten Spannungsübertragung kann es dazu kommen, dass die Spannung am Empfänger durch eine Zunahme der Leitungslänge abnimmt, wenn eine Leitungslänge begrenzt ist. Darüber hinaus ist auch die Laufzeit des Signals ein begrenzter Faktor bei diesen seriellen Schnittstellen. Die RS-232 Standards sind an ihren Leitungsenden nicht über einen Wellenwiderstand von 120 Ohm abgeschlossen, sodass zwangsläufig Leitungsreflexionen entstehen. Nehmen die Übertragungsrate und Kabellänge dann immer noch zu, so werden durch die auftretenden Reflexionen Störungen während der Übertragung von Daten verursacht. Deshalb sieht die Norm eine Begrenzung der Flankensteilheit am Sender vor, sodass sich die Auswirkungen der Reflexionen in einem ertragbaren Rahmen bewegen. Von Seiten des Empfängers wird anschließend mittels eines Schmitt-Triggers wieder ein Rechtecksignal hergestellt, dass eine hohe Flankensteilheit besitzt. Ein weiterer, wesentlicher Aspekt in der Umsetzung von RS-232 Schnittstellen ist der asymmetrische Verlauf der Signalübertragung. Dabei beinhaltet das zu übertragende Signal in der Regel einen Gleichspannungsanteil, sodass es relativ empfindlich auf Störungen des Gleichtakts reagiert. Da die Signale zwischen den Leitungen oft in Bezug zueinander stehen kann es hierdurch zu Störungen im Datenfluss der anderen beteiligen Leitungen kommen, da es in einigen Fällen zu einer Potentialverschiebung kommt.

Die Verbindungsmöglichkeiten mit den RS-232 Standards

Die RS-232 Standards sind serielle Schnittstellen. Damit über diese zwei Geräte miteinander verbunden werden können, ist es erforderlich, dass die „hörenden“ und „sprechenden“ Leitungen miteinander in Kontakt treten. Wenn diese Standards bei Terminals oder Rechnern zum Einsatz kommen soll, so handelt es sich bei den Leitungen, die die Kommunikation starten um Txd, RTS oder DTR. Die „hörenden“ Leitungen, welche den Wunsch nach einem Verbindungsaufbau empfangen, werden durch Leitungen wie RxD, CTS, DSR oder auch DCD und RI gestellt. Handelt es sich jedoch um den Einsatz an Modems, so liegt diese Situation genau umgekehrt vor. Hierbei werden die vom Terminal gesandten Signale an die Gegenseite weitervermittelt, die auf diese dann reagieren muss. Im Umkehrschluss werden die empfangenden Signale anschließend wieder an das Terminal zurückgeschickt. Bei der Verbindung zwischen einem Terminal oder Rechner mit einem Modem bedarf eines 1:1-Kabels. Werden hingegen Geräte desselben Typs miteinander in Kontakt gesetzt, so muss eine Kreuzung der Leitungen erfolgen, welches dann auch als Nullmodem-Kabel definiert ist. Das seriell laufende Sendesignal des einen Geräts kann zudem durch einen Loopback-Stecker oder eine entsprechende Buchse direkt zur Empfangseinheit des gleichen Geräts gesandt werden. Diese Form der Verbindung tritt vor allem bei Entwicklungen für Kommunikationsprogramme auf. Grundsätzlich lassen sich bei den RS-232 Standards auch noch die DTE-Geräte und DCE-Geräte praktisch identifizieren, indem eine Messung des Ruhepegels vorgenommen wird. Bei modernen Systemen kann es vorkommen, dass unbeschaltete Anschlüsse erkannt werden, sodass die Ausgangstreiber ausgeschaltet werden. Tritt dieser Spezialfall ein, so muss ein Gegenüber an den vermutlichen Ausgängen durch einen geeigneten Widerstand zwischen dem Signalanschluss und GND simuliert werden. Auch eine Verbindung auf dem Niveau eines Vollduplex-Verfahrens kann durch die getrennten Datenleitungen zum Senden und Empfangen von Nachrichten realisiert werden.

Die technischen Ursprünge und das Leitungssystem der RS-232 Standards

In seinen Grundzügen sollte diese serielle Schnittstelle nur für Schrittgeschwindigkeit von 19200 Baud spezifiziert sein und als eine Standardbaudrate hatte sich ein Wert von 9600 Baud festgesetzt. Dank der Entwicklung modernster Hardware kann jedoch mittlerweile eine Schrittgeschwindigkeit erzielt werden, die technisch gesehen bis zu einem Wert von 1.500.000 Baud hochgehen kann. Allerdings gibt es innerhalb der RS-232 Standards zahlreiche Abhängigkeiten. So entscheidet eine Abnahme der maximal zu erreichen Datenrate auch eine Reduzierung der verfügbaren Leitungslänge. Ursprünglich war es einmal vorgesehen, dass Leitungen maximal über eine Distanz von siebzehn Metern verlaufen sollten. Bei dieser Kabellänge sind dann auch die anfänglich zulässigen Schrittgeschwindigkeiten von 19200 Baud vorhanden. Allerdings lassen sich durch das Herabsenken der Baudrate auch die Kabellängen erweitern. So ermöglicht beispielweise eine Datenrate, welche um die Hälfte gekürzt wurde, eine Übertragungsstrecke, die das 10fache der eigentlichen Kapazität umfasst. Ist somit eine Schrittgeschwindigkeit von 2400 Baud vorhanden, beläuft sich die maximale Kabellänge schon auf einen Kilometer. Letztlich hat jedoch auch noch die Kapazität des verwendeten Datenkabels einen Einfluss auf die zu erreichende Kabellänge.

Die Leitungen der RS-232 Standards

In seinem Ursprung handelt es sich hierbei um eine serielle Schnittstelle, die dem Anschluss von Computerterminals an langsame Modems dienen sollte. Dabei die Geräte voneinander unterschieden werden können, besitzen sie unterschiedliche Ausrüstungen

  • SUB-D9-Stecker für das Terminal
  • SUB-D-9-Buchse für das Modem

Die Verbindung beider erfolgt jedoch über ein normales serielles Kabel, bei welchem es sich nicht um ein Null-Modem-Kabel handeln kann. Bei früheren DFÜ-Geschwindigkeiten war das Modem niemals dazu in der Lage Daten so schnell zu versenden, wie sie durch das Terminal geliefert werden konnten. Aus diesem Grunde existieren mittlerweile bei den RS-232 Standards auch zwei Steuerleitungen, über welche der Datenfluss gesteuert und notfalls gebremst werden kann. Möchte ein Empfänger die erhaltenen Daten wieder zurücksenden, so bedarf dieser Vorgang erneut einer weiteren Leitung. Diese wird als Daten-Ausgangs-Leitung bezeichnet ist am Modem angeschlossen. Danach erfolgt eine Verbindung zur Daten-Eingangs-Leitung des Senders, in diesem Falle des Computers. Beide Leitungen werden dem Gegenüber ständig als betriebsbereit angezeigt.

Die Verwendung der Leitungen

Die hauptsächlichen beiden Leitungen in den RS-232 Standards sind RTS und CTS. Am Terminal finden sich ein RTS-gebundener Ausgang sowie ein CTS-Eingang. Bei dem Modem ist dies genau umgekehrt, sodass hier ein RTS-Eingang sowie ein CTS-Ausgang vorhanden sind. Kommt es zum Einsatz eines Hardware-Handshakes, so wird zunächst einmal die RTS-Leitung am Terminal aktiviert. Über diese Leitung wird an das Modem eine „request-to-send“ geschickt, also die Nachfrage, ob dieses dazu bereits ist vom Sender verschickte Daten zu empfangen. Gilt ein Modem hierfür als bereit, so wird die CTS-Leitung aktiviert, die dem Empfänger dann die „clear-to-send“ übermittelt, also die Information darüber, dass eine Datenübertragung initialisiert werden kann. Erst nach diesem Signal wird vom Sender das Datenbyte aus Start-und Stoppbits auf die TXD-Datenleitung gelegt. Der Datentransfer findet dabei asynchron statt. Kommt es jedoch einmal dazu, dass ein Modem nicht mehr dazu befähigt ist, die vom Terminal empfangenden Daten schnell zu verarbeiten, so wird die CTS-Leitung deaktiviert. Anschließend erfolgt eine temporäre Unterbrechung des Datentransfers, bis das Modem die notwendige Leitung wieder als aktiv ins Netzwerk einstellt. Durch diese Methode werden dem Modem Ruhezeiten zugesprochen. Allerdings finden sich gleichartigen Bremsen für das Terminal nur selten bis gar nicht, da die Entwickler bei ihrer Arbeit schlichtweg nicht davon ausgingen, dass der Fall eintritt, dass das deutlich schneller Terminal es nicht mehr bewerkstelligen kann, die vom langsamen Modem ankommenden Daten rechtzeitig zu verarbeiten.

Das Null-Modem-Kabel

Natürlich wurden die RS-232 Standards dafür entwickelt, dass ein Computer an langsame Modems angeschlossen werden kann. Dennoch ist es in der heutigen Zeit nicht unüblich, dass zwei Computer direkt über ein entsprechendes RS-232-Kabel verbunden werden. Da jedoch beide Computer Stecker besitzen und somit keine Buchse vorhanden ist, ist ein spezielles Kabel erforderlich, welches über zwei Buchsen verfügt. Hier kommt das sogenannte Null-Modem-Kabel zum Einsatz, welches seinen Namen durch das fehlende Modem erhält. Hierdurch wird die Verknüpfung der PCs über die serielle Schnittstelle ermöglicht. Allerdings müssen sich die Computer nun gegenseitig ein vorhandenes Modem simulieren, sodass es zur Kreuzung der folgenden Leitungen kommen muss:

  • TXD/RTD
  • DSR/DTR
  • CTS/RTS

Dabei ist die Kontrolle des Flusses in beide Richtungen gewährleistet. Solche Kabel finden sich auch in Netzwerken die auf der Technologie des Ethernets basieren. Innerhalb dieses technischen Bereichs handelt es sich bei dem entsprechenden Bauteil um ein sogenanntes Cross-Kabel. Die serielle Verbindung hat jedoch auch einen entscheidenden Nachteil. So haben alle versandten Signale stets die gleiche Masse, sodass es bei langen Leitungen zu Störungen in der Übertragung kommen kann. Dieses Problem lässt sich nur umgehen, indem der Datentransfer langsam durchgeführt wird. Hieraus resultierend verwenden moderne serielle Verbindungen wie USB oder SATA stets die symmetrische Signalübertragung.