Also:
Die Krux an der Sache mit der RS232 besteht darin, dass
verschiedene Geräte bei gleichem Ausgang (Männlein oder
Weiblein) verschiedene Belegungen haben können.
Normalerweise ist es so, dass auf dem Gerät, dass als
'hauptsächlicher Sender' fungiert, eine männliche Buchse drauf
ist. Das Gerät, das als 'hauptsächlicher Empfänger' fungiert
besizt eine weibliche Buchse. Ein Beispiel wäre zb. ein
Terminal oder ein Drucker, dass an einen Computer angeschlossen
wird. Der Computer ist der 'hauptsächliche Sender' und das
Terminal ist der 'hauptsächliche Empfänger'. Beide haben
zb. eine 24 polige RS232.
Dann sendet der Computer dort am Pin 2 und das Terminal erwartet
seine Daten am Pin 2. Hat das Terminal dem Computer etwas mitzu-
teilen, dann macht es das am Pin 3 und der Computer erwartet das
auch am Pin 3.
Daraus folgt: Ein Kabel für so eine Verbindung ist ein Nicht-
gekreuztes Kabel. Pin 2 auf der einen Seite ist mit Pin 2 auf
der anderen Seite verbunden. Ditto für Pin 3.
Was ist aber wenn ich jetzt 2 Computer miteinander verbinden
möchte. Nun in dem Fall haben normalerweise beide einen
männliche Buchse, d.h. man braucht schon mal ein anderes
Kabel, alleine wegen der unterschiedlichen Stecker.
Der Eine, Computer A sendet auf Pin 2, der andere Computer B
möchte das Gesendete auf seinem Pin 3. Umgekehrt genauso:
Computer B sendet auf Pin 3 was der Computer A wiederum auf
Pin 2 empfangen möchte. In diesem Fall benötigt man also
ein gekreuztes Kabel.
Wenn nur alles so einfach wäre! In der Praxis ist es so,
dass es eher 6 unterschiedlche Konfigurationen gibt:
gekreuztes Kabel mit Männchen an beiden Seiten
gekreuztes Kabel mit Weibchen an beiden Seiten
nicht gekreuztes Kabel mit Mänchen an beiden Seiten
nicht gekreuztes Kabel mit Weibchen an beiden Seiten
gekreuztes Kabel mit Männchen / Weibchen
nicht gekreuztes Kabel mit Männchen / Weibchen
Vor allem früher hatte daher jeder Sysadmin kleine
Zwischenstecker, die aus einem Männchen ein Weibchen
machten und umgekehrt. Noch ein Zwischenstecker um
das Kabel zu kreuzen bzw. auszukreuzen und man war eigentlich
für alle Fälle gerüstet. Mit der Verbreitung des PC ist
das etwas besser geworden :-)
Nun gibt es im Kabel ja nicht nur die Leitungen für die Daten.
Da sind zb. noch die Leitungen für das Handshake:
CTS: Clear to send
RTS: request to send
Bei einer 24 poligen RS232 sind das die Pins 4 und 5. Für sie
gilt dasselbe wie für die Datenleitungen 2 und 3. Mit der einen
Leitung signalisiert Partner A zum Partner B: Ich bin bereit
etwas zu empfangen, bzw. ich bin nicht bereit dazu. Mit der
anderen Leitung geht das selbe Spiel in der Rückleitung.
Wenn dein PC also in der Einstellung stehen hat, dass er
Harware Handshake machen soll, dann sendet der so lange nichts
wie die CTS Leitung den falschen Pegel hat. Diesen falschen
Pegel hat sie zb auch dann, wenn am anderen Ende der Pin gar
nicht beschaltet ist. Auf einem µC werden traditionell die
CTS/RTS nicht beachtet, sodass die entsprechenden Pins auf der
RSR232 frei bleiben würden. Nur: In dem Fall würde der PC
nicht senden, falls er zufällig auf Hardware-Handshae steht.
Daher macht man einen Trick: Man lässt den PC sich selbst die
Hardware-Freigabe geben, indem man CTS mit RTS verbindet.
Der PC beschickt ja eine der beiden (weiss nicht mehr welchen)
mit dem richtigen Pegel. Der geht durchs Kabel, wird durch die
Brücke auf der µC-RSR323 Seite auf der anderen Ader wieder
zurückgeschickt und der PC weiss: Ja der Empfänger ist aufnahme-
bereit. Das er sich selbst die Freigabe gegeben hat, merkt der
nicht.