Forum: Mikrocontroller und Digitale Elektronik RS485 und RS232-USB-Konverter


von Hagebuttenmarkt (Gast)


Lesenswert?

Guten Morgen,

ich habe zwei USB-Konverter, einen, der nach RS232 ummodelt und ein 
anderer, der eine Ummodellung nach RS485 macht.

Auf beiden gibt es RxD und TxD.

Stöppsel ich den RS232 rein und verbinde RxD und TxD mit einem Kabel, 
dann kann ich in Putty das Zeichen, dass ich eintippe, sehen.

Ich dachte mir nun - ok - das gleiche müsste ja dann auch bei dem 
anderen Pegelwandler klappen. Aber dort klappt es leider nicht. Es gibt 
kleine Kontroll-Birnen in dem Wandler. Also - tippe ich ein Zeichen in 
Putty ein - das ich ja so am Bildschirm nicht sehe, wenn ich das Echo 
geabschaltet habe, dann blinkt aber immer die Lampe kurz auf (ich habe 
auch eine sehr langsame Baudrate genommen).

Verbinde ich RxD und TxD miteinander, dann blinkt auch die Leuchte bei 
RxD auf - weil sie da die Daten von TxD gekriegt hat. Leider empfange 
ich aber im Putty-Anzeigefenster nicht das RxD-Signal und ich verstehe 
noch nicht, warum das so ist.

Falls mir jemand von Euch helfen könnte, würde ich mich sehr darüber 
freuen.

von Purzel H. (hacky)


Lesenswert?

Naja, waehrend RS232 bidirektional ist, ist RS485 nur unidirektional. 
Die Richtung muss umgeschalten werden

von Hagebuttenmarkt (Gast)


Lesenswert?

Siebzehn Zu Fuenfzehn schrieb:
> Naja, waehrend RS232 bidirektional ist, ist RS485 nur unidirektional.
> Die Richtung muss umgeschalten werden

ach so. Das heisst - ich kann nicht senden und gleichzeitig emfpangen? 
Weil bei dem RS232 war es doch so - wenn ich es noch richtig in 
Erinnerung habe, dass es zwei Speicherstellen für die Schnittstelle 
gibt, einmal - wo das RxD-Signal gespeichert wird, wenn es empfangen 
wird - und einen Speicher für das TxD-Signal. Und der uC oder der 
Treiber auf Windows holt "selber" beim Auslesezyklus - das Signal aus 
der Speicherstelle.

Kann ich denn einen RS485-Wandler per Software umschalten? Oder brauche 
ich dann zwei Wandler - einen, der auf Senden eingestellt ist - und 
einen anderen, der auf Empfangen eingestellt wurde?  Weil, der hat ja 
zwei Eingänge - RxD und TxD - deshalb dachte ich, dass er auch in 
Analogie zur seriellen Schnittstelle mit RS232-Pegeln so arbeiten würde.

von Achim K. (aks)


Lesenswert?

Auch wenn es jetzt dann wahrscheinlich einen Sturm von 
"Richtigstellungen" gibt, meine Erfahrung mir RS485 ist, dass der 
Begriff nicht nur für die halbduplex (2 bzw. 3 Drähte), sondern auf für 
vollduplex (4 bzw. 5 Drähte) benutzt wird, obwohl der eigentlich eher 
RS422 heißen könnte.

Wenn Dein Konverter mehr als 3 Anschlüsse hat (also mehr als GND, A, B) 
sondern 5 (Tx-, Tx+, Rx-, Rx+, GND) dann kannst Du Dein Experiment mit 4 
Drähten wiederholen. Manchmal muss man dazu aber auch noch etwas "DIP 
switchen" oder "Jumpern". Kann z.B. "voll/halbduplex" heißen.

von Achim K. (aks)


Lesenswert?

>
> Kann ich denn einen RS485-Wandler per Software umschalten? Oder brauche
> ich dann zwei Wandler - einen, der auf Senden eingestellt ist - und
> einen anderen, der auf Empfangen eingestellt wurde?  Weil, der hat ja
> zwei Eingänge - RxD und TxD - deshalb dachte ich, dass er auch in
> Analogie zur seriellen Schnittstelle mit RS232-Pegeln so arbeiten würde.

Das funktioniert meiner Erfahrung noch so, dass sobald Du Daten sendest, 
dass Modul auf "Senden" geht, wenn es keine Daten zum "Senden" hat, ist 
es auf "Empfang". Es braucht oft auch kurze Pausen für das Schalten, was 
sich aber meist eh ergibt, außer man hat einen schnellen 
MikroController, denn man dann halt explizit etwas Ausbremsen muss.

Es gibt keine Absicherung auf auf Hardware-Ebene, dass nicht zwei 
gleichzeitig Senden, dass muss die Firmware machen. Oft wird daher eine 
Master / Slaves protokoll eingesetzt.

Es gibt mit google eigentlich recht viel Infos, so dass man mit den 
Startinfos hier und einer Internet Recherche eigentlich ganz gut klar 
kommen sollte.

von Hagebuttenmarkt (Gast)


Lesenswert?

Achim K. schrieb:
> Wenn Dein Konverter mehr als 3 Anschlüsse hat (also mehr als GND, A, B)
> sondern 5

Mein Konverter hat nur drei Kontaktbeine - GND, A und B. Leider nicht B+ 
und B- und so :-(

Also geht das jetzt garnicht, dass ich gleichzeitig senden - und was 
empfangen kann?

von Achim K. (aks)


Lesenswert?

Bei 3 Anschlüssen nicht. Dafür können mehr als 2 Geräte verbunden 
werden, aber das Protokoll muss sicherstellen, dass nur 1 Gerät sendet. 
Bei Vollduplex ist eine Verbindung mit mehreren Geräten im Grundsatz 
nicht möglich, außer man macht so was zwischen voll- und halbduplex, wie 
manche RS422 Systeme.

Also, zweiten Adapter besorgen.

von Uwe (Gast)


Lesenswert?

Hi,
>Also geht das jetzt garnicht, dass ich gleichzeitig senden - und was
>empfangen kann?

Nein. Jedenfalls nicht mit RS485.

viel Spass, Uwe

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
Noch kein Account? Hier anmelden.