Hab mal ne Frage und zwar zur RS232 Anbindung an den µC. Unter dem Artikel RS232 steht das man die Pins 7 und 8 am Sub-d Stecker verbinden soll und die Pins 1 und 6. Rx TX is klar. Aber im UART Tutorial is die Verbindung ganz anders gestaltet. Wo liegt der der Unterschied außer das die Belegung anders ist...? Dann noch ne frage und zwar habe ich gestern versucht mit einem Nullmodem kabel über die RS232 Schnittstelle zu kommunizieren aber es ging nicht. Ich habe meinen Stecker so beschalten das Pin 7 und 8 verbunden sind und Pin 2 und 3 an den MAX232 gehen. Es geht nicht, is das Nullmodemkabel nicht das richtige wegen der internen Kreuzung? Muss ich ein "normales " Kabel nehmen? Kann ich die interne Kreuzung des Nullmodemkabels durch Brückung nicht aufheben? Danke schon mal
hast Du denn schon mal Rx und Tx an der Buchse / Stecker getauscht? Das wird nämlich u.a. im Nullmodemkabel gekreuzt. Wenn Du es so wie Tutorial machen willst, dann brauchtst Du aber ein 1:1 Kabel. Das steht auch übrigens drin.
Ne habsch noch nich versucht. Also kann man prinzipiell auch mit einem Nullmodem kabel kommunizieren? Hab halt gelesen das das nich geht. Ich müsste nur alle gekreuzten entkreuzen sozusagen?
Zitat aus dem AVR-Tutorial: >>Die Verbindung zwischen PC und Mikrocontroller erfolgt über ein 9-poliges >>Modem-Kabel (nicht Nullmodem-Kabel!), das an den seriellen Port des PCs >>angeschlossen wird.
Also: Ein Nullmodekabel ist auch nur ein Kabel, d.h. paar Drähte mit bisserls Isolator drum rum, wie ein 1:1-Kabel halt auch. Nur daß eben Leitungen gekreuzt sind, RxD und TxD, ob andere auch noch, weiß ich nicht. Wenn Du aber keinen Handshake brauchst, ist das eh wurst. Tausch RxD und TxD in Deinem Nullmodemkabel und mach die Beschaltung wie im AVR-Tutorial und dann sollte das funktionieren.
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.
Willste jetzt noch ein Erfahrungsbericht, wie man aus einen gekreuzen Kabel ein 1:1 Kabel macht? Lötkolben nehmen, oder bastel Dir ein neues Kabel. Buchse und Stecker wirste doch da haben. 2-2, 3-3, 5-5 reicht für nen AVR
Versuchsweise und wenn wegen Ladenschluss Material für ein richtiges Kabel beschafft und zusammengelötet werden kann... ...kann man in Buchsen auch Drähte klemmen und auf Steckerpins passen auch Lötnagelhülsen. Und mit einem Krokodilklemmen-Käbelchen kann man beides verbinden. Den TX Pin an einem Gerät mit RS232 findet man mit einem Voltmeter bei der Messung gegen GND anhand der negativen Spannung -3V bis -15V. Beim Verbinden zweier Geräte ist im einfachsten Fall TX1 auf RX2 und RX1 auf TX2 und GNG1 auf GND2 zu verbinden.
Tolle Bastler, die nicht mal ein paar Centartikel auf Reserve zu liegen haben ;)
So danke für die ausführlichen und weniger brauchbaren Tips(krulli). Ich werds probieren. Schönes we
ok, vielleicht sollte ich doch längere Texte schreiben oder hier doch nicht mehr posten
> Vor allem früher hatte daher jeder Sysadmin kleine > Zwischenstecker Einen Zwischenstecker hab ich noch vergessen, den auch jeder Sysadmin hatte: Auf dem sind Leds drauf, die den Pegel der Leitung anzeigen. Damit kann man zumindest einen Teil der Ratespiele - gekreuzt/nicht gekreuzt umgehen, in dem man das Kabel einfach mal ansteckt und nachsieht ob alle Leds leuchten.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.