PS/2-Schnittstelle

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche
PS/2-Buchsen eines PCs (oben: Maus, grün; unten: Tastatur, violett)

Die PS/2-Schnittstelle (PS/2-Anschluss, PS/2-Port, ursprünglich Auxiliary Port) war eine weit verbreitete serielle Schnittstelle für Eingabegeräte; meist wurden Tastatur und Maus, seltener andere Zeigegeräte wie Trackball oder Grafiktablett angeschlossen. Sie wurde beispielsweise bei Personal Computern eingesetzt, jedoch ist sie durch den USB teilweise verdrängt worden; einige neuere Hauptplatinen besitzen teilweise nur noch eine oder gar keine PS/2-Buchse mehr.

Geschichte[Bearbeiten]

Zunächst war die PS/2-Schnittstelle nur an Computern der RS/6000- und Personal System/2-Reihe (daher der Name) von IBM zu finden und erlangte nur wenig Bedeutung. Nach dem Ende der Personal System/2-Reihe führte die Firma jedoch die IBM-PC-Reihe wieder fort und verwendete dort nun ebenfalls PS/2-Anschlüsse für die Eingabegeräte. Damit konnte sich der PS/2-Anschluss auch auf dem Markt der PC-Nachbauten etablieren und tauchte in den späten 1990er Jahren mit Einführung des ATX-Standards für Hauptplatinen vermehrt auf. Sogar Hewlett-Packard verwendete ihn für die HP 9000-Computer, ebenso die Digital Equipment Corporation für einige Terminals.

Adapter[Bearbeiten]

Die vielen Mäusen und einigen Tastaturen beigelegten Adapter von oder auf USB sind rein mechanische Adapter zur Anpassung der Steckernorm bzw. -form; angeschlossene Geräte müssen anhand der Signalpegel unterscheiden, ob sie an eine USB- oder PS/2-Schnittstelle angeschlossen sind, und sich dementsprechend verhalten. Ein nicht auf USB ausgelegter PS/2-Anschluss funktioniert mit diesen Adaptern genauso wenig wie ein nicht auf PS/2 ausgelegtes USB-Gerät.

Typisches Kennzeichen für einen „echten“ PS/2-USB-Umwandler, an den auch reine PS/2-Geräte angeschlossen werden können, ist zum einen ein Gehäuse für die Elektronik (meistens integriert im Kabel), zum anderen bieten fast alle Umwandler zwei PS/2-Anschlüsse, je einen für Maus und Tastatur. Derartige Adapter können etwas teurer sein als sehr billige Tastaturen und Mäuse, sind aber eine immer noch lohnende Möglichkeit, hochwertige PS/2-Tastaturen an Rechnern zu betreiben, die USB-, aber keine PS/2-Anschlüsse mehr haben.

Anschluss[Bearbeiten]

Steckerbelegung (Sicht auf die Buchse):
1 = Datenleitung (DATA),
3 = Masse (GND),
4 = Spannungsversorgung +5 V,
5 = Taktsignal (CLK),
2 und 6 sind nicht beschaltet (NC)
Elektronischer Adapter für den Anschluss von PS/2-Geräten an die USB-Schnittstelle

Die PS/2-Schnittstelle verwendet einen sechspoligen Mini-DIN-Stecker, während die Tastaturschnittstelle beim vorhergehenden AT-Format mit dem größeren fünfpoligen DIN-Stecker ausgestattet war. Beide Anschlüsse sind von den elektrischen Eigenschaften her identisch, so dass sich Tastaturen mit DIN-Stecker über ein einfaches Adapterkabel an die PS/2-Schnittstelle anschließen lassen und umgekehrt. Eine Ausnahme bildet lediglich die noch ältere XT-Tastatur (aus der Zeit des IBM PC XT), die zwar die gleiche Steckerform wie beim AT verwendet, aber elektrisch weder mit der PS/2- noch mit der AT-Schnittstelle kompatibel ist, einige ältere Tastaturen haben Umschalter eingebaut. Mäuse wurden beim AT-Format normalerweise über die RS-232-Schnittstelle angeschlossen.

Bei Desktop-PCs sind üblicherweise zwei PS/2-Buchsen vorhanden, je eine für Maus (oder ein anderes Zeigegerät) und Tastatur. Obwohl sie die gleichen Steckverbinder und sogar die gleiche Pinbelegung haben, kommen für Maus und Tastatur unterschiedliche Protokolle zum Einsatz, so dass die Stecker nicht vertauscht werden dürfen. Die Anschlüsse sind ab Ende der 90er in der Regel farbkodiert; die Tastatur hat violette und die Maus grüne Stecker beziehungsweise Buchsen. Die Farbtöne sind im PC 99 System Design Guide von Intel und Microsoft festgelegt. In ihrem PC 2001 System Design Guide findet sich das nicht mehr. Diese und andere führende Hersteller empfehlen bereits seit den 1990er Jahren die Alternative USB.[1]

An Notebooks und einigen kompakten Industrie-PC-Hauptplatinen ist dagegen nur eine PS/2-Buchse vorhanden, die fast immer für Maus und Tastatur geeignet ist und – außer bei sehr alten Modellen – auch für beides gleichzeitig. Maus und Tastatur unterscheiden sich in ihrem Verhalten beim Einschalten und beim Reset, so dass das Notebook zwischen beiden unterscheiden kann, wenn sie direkt angeschlossen sind. Um beide gleichzeitig anschließen zu können, werden die beiden ansonsten ungenutzten Pins in der Buchse als zusätzliche Takt- und Datenleitungen benutzt. Ein Y-Kabel verbindet +5 V und GND des Steckers (Notebook) mit beiden Kupplungen, und je ein Paar aus Takt- und Datenleitungen mit je einer Kupplung. Es werden also nicht einfach alle Kontakte parallel geschaltet, sonst würden sich Maus und Tastatur gegenseitig blockieren.

Einige Hersteller haben die freien Pins auch für andere Zwecke benutzt, beispielsweise um eine Maus für den kombinierten Betrieb an PS/2 und RS-232 auszulegen oder um mit einer zusätzlichen Taste auf der Tastatur den PC einzuschalten. Das kann bei bestimmten Kombinationen von Computern und Mäusen beziehungsweise Tastaturen zu Problemen führen.

Bei einigen aktuellen PC-Systemen haben die Hersteller die PS/2-Schnittstelle zugunsten des hot-plug-fähigen USB ganz aufgegeben. Für alte Betriebssysteme emuliert das BIOS aber weiterhin mehr oder weniger gut die PS/2-Schnittstelle, auch wenn Maus und Tastatur tatsächlich über USB angeschlossen sind.

Elektrische Schnittstelle[Bearbeiten]

Prinzip-Schaltplan der PS2-Schnittstelle

Das physikalische Interface der PS/2-Schnittstelle ist mit dem der AT- und MF2-Tastatur identisch. Es hat ähnlich wie die I2C-Schnittstelle eine Datenleitung Data und eine Taktleitung Clock. Die Pegel auf diesen Leitungen sind circa 5 V. Wie man in den Diagrammen oder dem Schaltplan sehen kann, kann jeder Teilnehmer die Daten- oder Taktleitung aktiv auf Low ziehen. Der High-Pegel wird passiv, durch jeweils einen Pullup-Widerstand an Clock und Data (hier im Beispiel 4,7 kOhm), realisiert. Um eine Datenkollision zu vermeiden, muss jeder Teilnehmer prüfen, ob vielleicht während der Übertragung ein anderer Teilnehmer dieselbe deaktivierte Leitung = high, auf low = aktiv zieht. Der Pegel low = aktiv ist also dominant gegenüber dem Pegel high = passiv.

Die Schnittstelle ist nicht für Hot Plugging, also Stecken im laufenden Betrieb, vorgesehen, weder das Protokoll noch die Steckverbinder erlauben das.[2] In vielen Fällen funktioniert es zwar (eher bei Tastaturen als bei Mäusen), theoretisch könnten aber Mainboard oder Tastatur beziehungsweise Maus dabei zerstört werden – zumindest aber einfach nicht erkannt. Gerne hängte sich früher auch beim Einstecken einer PS/2-Maus das Betriebssystem auf.

Protokoll[Bearbeiten]

Wie die Artikel Scancode oder Tastatur bereits beschreiben, ist das Protokoll bei einer PC/XT-Tastatur als geschichtlicher Vorgänger der übrigen Tastaturen anders. Hier wird lediglich das aktuell benutzte Protokoll einer MF2-Tastatur (AT-Tastatur) beschrieben.

Clock Data Beschreibung
1 1 PC ist bereit, Daten von der Tastatur zu empfangen.
1 0 PC zeigt mit Startbit an, dass er Daten zur Tastatur schicken will.
0 1 PC ist busy (beschäftigt) und kann zur Zeit nichts empfangen.
0 0 PC wird gerade zurückgesetzt.

Grundsätzlich kommt der Takt von der Tastatur, sowohl zum Senden von Daten an den PC als auch zum Empfang von Daten vom PC. Die Frequenz kann beträchtlich schwanken, da der Takt per Software im Mikrocontroller der Tastatur erzeugt wird. Die Kommunikation zwischen Tastatur und PC geschieht nur über zwei Leitungen (Data und Clock) bidirektional. Somit sind grundsätzlich nur vier unterschiedliche Anfangszustände möglich.

Zieht der PC zu irgendeinem Zeitpunkt die Taktleitung auf low, muss die Tastatur eine eventuell laufende Übertragung sofort abbrechen und erst wieder beginnen, wenn die Taktleitung freigegeben ist. Leider beachten viele Tastaturen das nicht, was häufig zu Problemen mit Adaptern und KVM-Switches führt.

In den Diagrammen sind die Übergänge als Flanken gezeichnet, um den Verlauf leichter erkennbar zu machen. Nimmt man es ganz genau, geschieht der Übergang von high auf low nahezu abrupt (durch den niederohmigen Transistor). Der Übergang von low auf high ist dagegen eher langsam und folgt der Form einer e-Funktion (RC-Glied aus Transistorkapazitäten und Pullup-Widerstand).

Diagramm PS2-Schnittstelle: Daten vom KBD

Das erste Diagramm zeigt den Verlauf der Daten kurz nach dem Einschalten des Computers. In diesem Beispiel wird von der Tastatur ein BAT = $AA geschickt.

  1. Im Einschaltmoment des Computers werden Clock und Data vom PC auf low gezogen. Die Tastatur erkennt dieses und macht einen Selbsttest (basic assurance test).
  2. Nachdem die Software im PC eine Initialisierung (Grundeinstellung aller nötigen Peripherie-Bausteine) vorgenommen hat, wird zunächst Data nicht mehr vom PC auf low gezogen. Ist der PC nun bereit zum Empfang, wird auch Clock deaktiviert und geht durch den Pullupwiderstand auf high.
  3. Da nun Clock und Data high sind, kann die Tastatur Daten schicken. Die Pause dieses Zustandes ist hier aus Platzgründen verkürzt dargestellt.
  4. Zuerst zieht die Tastatur Data auf low (Startbit), um den Beginn eines zu übertragenden Bytes zu kennzeichnen. Danach wird von der Tastatur Clock für eine Weile auf low gezogen.
  5. Auf gleiche Art und Weise werden die folgenden Datenbits D0...D7, odd Parity und Stopbit (Data = 1) übertragen. In dem Beispiel ist D7...D0 = 1010 1010 welches $AA = BAT entspricht. Da die Anzahl der enthaltenen Einsen gerade ist, ist das Parity-Bit für odd Parity gesetzt.
  6. Am Ende des Stopbits sind Data und Clock wieder beide high.
  7. Zur Bestätigung der empfangenen Daten legt der PC Clock auf low, bis die interne Verarbeitung abgeschlossen ist.
Diagramm PS2-Schnittstelle: Daten vom PC
  1. Zunächst muss der PC Clock wieder deaktivieren (negativ True logic), damit eine Übertragung ermöglicht wird. Knapp danach legt der PC Data auf low, um mit dem Startbit einen Übertragungswunsch zu signalisieren.
  2. Hat die Tastatur das Startbit erkannt, legt sie Clock auf low, um damit das nächste Bit anzufordern.
  3. Nun folgen die Daten-Bits D0...D7, Parity und Stopbit nach gleichem Schema. Hier im Beispiel wird 1110 1101 = $ED = Set LED gesendet.
  4. Während Clock im Stopbit noch high ist, legt die Tastatur zur Quittierung auf Bitebene Data auf low und dann Clock für eine Weile auf low.
  5. Danach wird Data von der Tastatur wieder zurückgenommen, und sowohl Data als auch Clock sind high.
  6. Schließlich setzt der PC Clock wieder auf low, um die Daten zu verarbeiten.

Nach diesem Befehl Set LED würde die Tastatur mit Ack auf Byte-Ebene den Befehl als ‚verstanden‘ quittieren. Als Nächstes kann dann der PC zum Beispiel den Parameter $02 übertragen (NumLock-LED an). Die Befehlsübersicht steht unter Scancode.

Belege[Bearbeiten]

  1. Network PC System Design Guidelines (PDF; 481 kB) Intel. 5. August 1997. Abgerufen am 28. Mai 2011.
  2. PS/2-Hotplugging. c't (Heft 9/2004). 2004. Abgerufen am 13. Februar 2012.

Weblinks[Bearbeiten]

 Commons: PS/2-Schnittstelle – Album mit Bildern, Videos und Audiodateien