Hallo,
vielleicht kann mir einer einen Tip geben. Ich wollte mal mit der
seriellen Schnittstelle ein wenig rumspielen. Leider funktioniert es
nicht richtig und ich versuchte das Problem zu finden.
Ich habe eine "echte" serielle Schnittstelle an meiner Dockingstation
(ibm Thinkpad) und mir einen USB-TTL Wandler gekauft (wird mit Silicon
Labs CP210x USB to UART Bridge) erkannt.
Brücke ich nun RXD und TXD an den jeweiligen Schnittstellen und sende
mit einem Terminalprogramm irgendwas, wird dies auch wieder empfangen.
Nun wollte ich von der einen zu anderen senden. Ich habe das
Terminalprogramm zwei mal gestartet und mit dem jeweiligen COM-Port
verbunden. dann habe ich mit ein Kabel gebastelt und GND TXD und RXD
verbunden. Mit TXD RXD Kreuzung kam gar nichts an (Pinbelegung von
Wikipdea). Vielleicht ist die Platine falsch beschriftet (oder gabs da
nicht auch mal ein Dreher bei IBM PCs???)
Leider kommt nur Mist an, also es wird was empfangen, jedoch nur
Hieroglyphen. Alle Einstellungen (Baud, Parität etc.) sind gleich.
Hat jemand eine Idee, ich wäre sehr Dankbar.
Grüße
Johannes
Johannes schrieb:> Ich habe eine "echte" serielle Schnittstelle an meiner Dockingstation> (ibm Thinkpad) und mir einen USB-TTL Wandler gekauft (wird mit Silicon> Labs CP210x USB to UART Bridge) erkannt.
Die kannst Du nicht miteinander verbinden. Die "echte" serielle
Schnittstelle Deiner Dockingstation arbeitet mit RS232-Pegel (-12V für
1, +12V für 0), Dein USB-TTL-Wandler arbeitet, wie der Name impliziert,
mit TTL-Pegel - 5V für 1, 0V für 0.
Verbindest Du die beiden, zerstörst Du den RxD-Eingang des
USB-TTL-Wandlers, weil der eine deutlich zu hohe Spannung abbekommt.
Rufus Τ. Firefly schrieb:> zerstörst Du den RxD-Eingang des> USB-TTL-Wandlers, weil der eine deutlich zu hohe Spannung abbekommt.
Eine RS232-Schnittstelle ist strombegrenzt. Es besteht also eine gewisse
Chance daß der TTL-Eingang das überlebt hat.
Gruß Anja
hilfe ein wahnsinniger schrieb:> Das ein RS232 Treiber invertiert, kommt eh nichts ...
Warum nicht. Irgendwo wird sich auch in dem invertierten Datenstrom ein
Bit finden lassen, das als Startbit interpretierbar ist. Allerdings wird
es Framing Errors hageln.
> Die kannst Du nicht miteinander verbinden. Die "echte" serielle> Schnittstelle Deiner Dockingstation arbeitet mit RS232-Pegel (-12V für> 1, +12V für 0), Dein USB-TTL-Wandler arbeitet, wie der Name impliziert,> mit TTL-Pegel - 5V für 1, 0V für 0.>> Verbindest Du die beiden, zerstörst Du den RxD-Eingang des> USB-TTL-Wandlers, weil der eine deutlich zu hohe Spannung abbekommt.
Danke! Ist klar, wäre ich aber nie drauf gekommen. Das Ding funktioniert
noch. Jetzt muss ich mir noch so ein Ding suchen bzw. einen MAX232.
Vielen Dank!
> Das ein RS232 Treiber invertiert, kommt eh nichts, auch wenn man> USB-Serial-zu TTL verbindet, und die Verbindung das ueberlebt.
Sorry kapier ich nicht, kannst du das noch mal schreiben?
Jörg Esser schrieb:> Aber bei framing errors kommen doch keine falschen daten an oder?
Wenn die Fehler im Übertragung dadurch entstehen, dass irgendwelche
Bits als Startbit interpretiert werden, haben die empfangenen Daten
inhaltlich überhaupt nichts mit den gesendeten zu tun.
Eine fehlende Invertierung führt dazu, dass die vom Sender gesendeten
Startbits wegen der falschen Polarität nicht vom Empfänger erkannt
werden können. Trotzdem versucht der Empfänger das ankommende
Kauderwelsch zu interpretieren und spukt irgendwelchen Mist aus.
Habe ich das jetzt richtig verstanden:
Der RS232 Treiber in meiner Dockingstation invertiert die Pegel auch
noch, d.h. ich brauche ein Max232 für die Pegelanpassung und noch nen
inverter für Rxd und Txd?
Ok der Max232 invertiert ja schon .... hätte ich mal das Datenblatt
gelesen.
Weiß jemand ob bei IBM PCs RxD und TXD vertauscht sind? Irgendwas hatte
ich mal gehört, finde aber keine Informationen bei Google...
Johannes schrieb:> Ok der Max232 invertiert ja schon .... hätte ich mal das Datenblatt> gelesen.>> Weiß jemand ob bei IBM PCs RxD und TXD vertauscht sind? Irgendwas hatte> ich mal gehört, finde aber keine Informationen bei Google...
Das kann man zur Not auch selber feststellen.
Einfach eine LED samt Vorwiderstand an beide Leitungen klemmen,
Terminalprogramm starten und Stein auf die Tastatur legen. Die LED die
flackert ist die Leitung aus der die Daten rauskommen.
Die andere ist dann logischerweise RxD
Es gibt Dinge, die hat man mit einfachen Mitteln schneller selbst
festgestellt, anstatt sie zu ergoogeln.
Abgesehen davon.
Was denkst du? Kann es sich IBM wirklich leisten, eine andere
Steckerbelegung zu verwenden als der Rest der Welt? Was denkst du, was
dann bei denen in der Hotline los wäre, wenn es nicht möglich ist, jedes
x-beliebige Standardgerät einfach anzustecken?
Karl Heinz schrieb:> Das kann man zur Not auch selber feststellen.
Noch bessere Idee: nach der Steckerbelegung googeln. Das ist nichts
vertauscht, gegenüber was denn? Aber nach der Pinbelegung eines Steckers
sollte man sich schon richten, wenn nachher was funktionieren soll, und
nicht bloss einfach drauflosvermuten. Und vom 9poligen COM-Stecker a la
IBM gibt es nur eine Version.
Gruss Reinhard
Reinhard Kern schrieb:> Karl Heinz schrieb:>> Das kann man zur Not auch selber feststellen.>> Noch bessere Idee: nach der Steckerbelegung googeln. Das ist nichts> vertauscht, gegenüber was denn? Aber nach der Pinbelegung eines Steckers> sollte man sich schon richten, wenn nachher was funktionieren soll, und> nicht bloss einfach drauflosvermuten. Und vom 9poligen COM-Stecker a la> IBM gibt es nur eine Version.
Volle Zustimmung.
Allerdings gibt es einem dann auch eine gewisse Sicherheit, wenn man mit
eigenen Augen sieht, dass die Daten tatsächlich auch aus dem Anschluss
rauskommen, aus dem sie kommen sollen. Man glaubt dann schon eher, dass
man selber einen Fehler gemacht hat und nicht IBM
(ditto das berühmte "der Compiler hats verbockt"-Syndrom)
Karl Heinz schrieb:> Reinhard Kern schrieb:>> Karl Heinz schrieb:>>> Das kann man zur Not auch selber feststellen.>>>> Noch bessere Idee: nach der Steckerbelegung googeln. Das ist nichts>> vertauscht, gegenüber was denn? Aber nach der Pinbelegung eines Steckers>> sollte man sich schon richten, wenn nachher was funktionieren soll, und>> nicht bloss einfach drauflosvermuten. Und vom 9poligen COM-Stecker a la>> IBM gibt es nur eine Version.>> Volle Zustimmung.>> Allerdings gibt es einem dann auch eine gewisse Sicherheit, wenn man mit> eigenen Augen sieht, dass die Daten tatsächlich auch aus dem Anschluss> rauskommen, aus dem sie kommen sollen. Man glaubt dann schon eher, dass> man selber einen Fehler gemacht hat und nicht IBM>> (ditto das berühmte "der Compiler hats verbockt"-Syndrom)
Ist ja gut Jungs... kommt wieder runter. Mir ging es am Ende nur um eine
zusätzliche Information. Irgendwas war da und man konnte es nicht mehr
ändern, aber auch ganz gut damit leben. Vielleicht verwechsele ich auch
was...
Trotzdem Danke.
naja, ein Körnchen Wahrheit ist schon drin. Ursprünglich hatten die
COM-Port-Stecker 25 Pins mit TXD auf 2 und RXD auf 3. IBM hat dann die
9-poligen eingeführt und (u.a.) Pin 2 und 3 vertauscht.
Dazu kommt noch die Verwirrung durch die Stecker am Modem. Da ist die
Belegung genau umgekehrt wie am PC, damit man ein 1:1 Kabel verwenden
kann.
Damit es nicht zu einfach wird, verwendet man bei anderen seriellen
Geräten meist die gleiche Belegung wie am PC (und ein gekreuztes Kabel).
Oder eine Hersteller-eigene Belegung, damit die Leute für 48 Euro ein
Spezialkabel kaufen :(
gnd3 schrieb:> Dazu kommt noch die Verwirrung durch die Stecker am Modem.
Deswegen hat das Modem ja auch keinen Stecker, sondern eine Buchse.
Da ist also keine wirkliche Verwirrung. Sondern das ist genau richtig
gemacht.
gnd3 schrieb:> naja, ein Körnchen Wahrheit ist schon drin. Ursprünglich hatten die> COM-Port-Stecker 25 Pins mit TXD auf 2 und RXD auf 3. IBM hat dann die> 9-poligen eingeführt und (u.a.) Pin 2 und 3 vertauscht.
Auf dem 9-poligen Anschluss ist aber noch mehr "vertauscht" gegenüber
dem 25-poligen. Auch GND ist woanders u.s.w. ... ;-)
> Dazu kommt noch die Verwirrung durch die Stecker am Modem. Da ist die> Belegung genau umgekehrt wie am PC, damit man ein 1:1 Kabel verwenden> kann.
Nein! Nicht die Belegung ist umgekehrt, sondern die Richtung. Was beim
PC Eingang ist, ist am Modem Ausgang und umgekehrt.
> Damit es nicht zu einfach wird, verwendet man bei anderen seriellen> Geräten meist die gleiche Belegung wie am PC (und ein gekreuztes Kabel).> Oder eine Hersteller-eigene Belegung, damit die Leute für 48 Euro ein> Spezialkabel kaufen :(
Das ist nur billige Polemik. Wenn du dir die Bedeutung und Verwendung
der RS-232 mal ganz kurz angeschaut hättest, würdest du nicht sowas
schreiben.
;-)
> und mir einen USB-TTL Wandler gekauft
Falls da wirklich ein TTL-Signal rauskommt, kann das direkt mit dem
Mikrocontroller verbunden werden. Zur Sicherheit würde ich 1k
Widerstände in die Leitung schalten. GND muss man natürlich auch
verbinden.
> Vielleicht ist die Platine falsch beschriftet
Das kann ich bestätigen! Einige dieser Teile sind etwas seltsam
beschriftet.
> Einfach eine LED samt Vorwiderstand an beide Leitungen klemmen
Das wurde ja schon geschrieben:
Einfach eine LED mit Vorwiderstand mit der Kathode auf GND schalten.
Wenns flackert, ist es Tx. Ich verwende einen 9-poligen Adapter, der
zwischen den Anschluss gesteckt werden kann. Rot ist für Tx, Grün für
Rx. Ein sehr hilfreiches Tool zu Inbetriebnahme von Schnittstellen.
Ist ein Oszilloskop vorhanden? Dann beim Tx die Dauer des kürzesten
Impulses ermitteln. Der Kehrwert ist die Baudrate.
B e r n d W. schrieb:> Das wurde ja schon geschrieben:> Einfach eine LED mit Vorwiderstand mit der Kathode auf GND schalten.> Wenns flackert, ist es Tx. Ich verwende einen 9-poligen Adapter, der> zwischen den Anschluss gesteckt werden kann. Rot ist für Tx, Grün für> Rx. Ein sehr hilfreiches Tool zu Inbetriebnahme von Schnittstellen.>
das hatte ich probiert.
Am echten Com Port geht das, bei dem TTL-Ding ist die Leitung dauerhaft
high, wenn nichts gesendet wird. Deswegen habe ich eine LED von +5V auf
RXD und TXD gehängt (welche wirklich vertauscht sind auf der china
platine)
Rufus Τ. Firefly schrieb:> gnd3 schrieb:>> Dazu kommt noch die Verwirrung durch die Stecker am Modem.>> Deswegen hat das Modem ja auch keinen Stecker, sondern eine Buchse.>> Da ist also keine wirkliche Verwirrung. Sondern das ist genau richtig> gemacht.
Der PC war ursprünglich als Terminal gedacht und somit wurde auch für
SUB ein Männchen eingesetzt.
IBM hat aber unterschätzt, das der PC selbst plötzlich die Rolle eine
Hostsystems übernahm
(DCE/DTE).
Daher ist die Auslegung des PC' s durchaus aus dieser Sicht nicht
korrekt.
DS.
Hi
Da habt ihr euch schön ausgelassen.. aber mal besser zum Verständnis:
TxD ist "Transmit Data" und RxD ist "Receive Data". Nun ist nur noch
über Google heraus zu bekommen, wie eine RS 232 Buchse belegt ist.
Transmit gehört auf der anderen Seite auf Receive und umgekehrt. Man
spricht gern über "CrossOver" aber im Prinzip ist lediglich klar, das er
Empfangspin ja nur gesendete Daten verarbeiten kann. Eigentlich sollte
ein Controller ein TTL - Signal lesen können, aber ich weiß nicht, ob er
die Daten so liefert, wie es der USART des Controllers erwartet.
(Stichwort : Invertiert) Ein Max schafft da abhilfe. Dann braucht es
keinen Umsetzer, lediglich ein "Crossover" Kabel. Wie das Ding
verschaltet werden muss, da hilft vielleicht ein Download vom Atmel
Evaluationsboard. Oder Google.
gruß oldmax
Martin Vogel schrieb:> Hi> Da habt ihr euch schön ausgelassen.. aber mal besser zum Verständnis: ...
Oje. :-(
> Ein Max schafft da abhilfe. Dann braucht es> keinen Umsetzer, ...
Der MAX232ist der Umsetzer. ;-)