Forum: Mikrocontroller und Digitale Elektronik RS232 auf RS485 ohne Handschake


von Detenverwurster (Gast)


Lesenswert?

Hallo

Ich habe das Problem dass ich am RS232 nur TXD und RXD zur verfügung 
habe und ich jetzt nicht weiß wie ich den Sender vom RS485 Treiber am 
sinvollsten ein und ausschalte.

von Georg (Gast)


Lesenswert?

Hallo,

eine 100% sichere Lösung gibt es nicht. Du kannst den Sender, wenn Daten 
kommen, sofort einschalten, und wenn keine mehr kommen, um eine 
Byte-Zeit verzögert ausschalten, aber dazu muss die Baudrate bekannt 
sein.

Georg

von Ingo S. (schicki)


Lesenswert?

Hallo,

definiere doch am besten ein Steuerzeichen hierzu (z.B. Start of Text 
oder End of Text. So mache ich das immer.

Grüße
Ingo

von Dietmar M. (trafo_teufel)


Lesenswert?

Lösung: Der Konverter steht grundsätzlich auf lesen und schaltet nur um 
wenn er ein Byte senden muss.
Oder ADAM4520 kaufen, der kann das

von Mehmet K. (mkmk)


Angehängte Dateien:

Lesenswert?

Detenverwurster schrieb:
> Ich habe (...) nur TXD und RXD zur verfügung  und ich jetzt nicht weiß wie ich 
den Sender vom RS485 Treiber am sinvollsten ein und ausschalte.

Der Fragestellung ist zu entnehmen, dass Du RS485-Halfduplex faehrst. In 
diesem Fall geht das nur mit einem Monoflop.
Ein Beispiel: ftp://www.wickenhaeuser.de/anleitungen/flash_m1.pdf
Das andere Beispiel habe ich als Gif Datei angehaengt.
Ob's was taugt, weiss ich nicht.

von Marc V. (Firma: Vescomp) (logarithmus)


Lesenswert?

Detenverwurster schrieb:
> Ich habe das Problem dass ich am RS232 nur TXD und RXD zur verfügung
> habe und ich jetzt nicht weiß wie ich den Sender vom RS485 Treiber am
> sinvollsten ein und ausschalte.

 Normalerweise steht Treiber auf Empfang, beim schreiben wird auf
 Senden umgeschaltet, in TxD ISR dann wieder auf Empfang.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Marc Vesely schrieb:
> Normalerweise steht Treiber auf Empfang, beim schreiben wird auf
>  Senden umgeschaltet, in TxD ISR dann wieder auf Empfang.

Ja. Wenn aber die zur Umschaltung nötige Handshakeleitung nicht 
vorhanden bzw. nicht ansteuerbar ist, dann geht das so nicht.

von Nosnibor (Gast)


Lesenswert?

Es gibt Chips, die das machen; das funktioniert folgendermaßen:
Der RS-485 muß Pullups/Pulldowns haben, damit er einen sauberen 
Ruhepegel (H, 1, mark) annimt, solange niemand sendet. Solange vom 
RS-232 ein 0-Pegel kommt, treibt der Konverter einen 0-Pegel auf den 
RS-485. Wenn der Eingang auf 1 wechselt, treibt der Konverter 1, bis der 
Pegel auf dem RS-485 tatsächlich sauber 1 angenommen hat, dann schaltet 
er den Treiber aus und verläßt sich darauf, daß die Widerstände den 
Pegel halten. Dann ist es egal, ob der Eingang auf 1 steht, weil es 
nichts zu senden gibt, oder weil gerade ein 1-Bit übertragen wird.

von Marcus P. (marc2100)


Lesenswert?

Hi,
wenn du auf der Gegenseite auch wieder auf RS232 zurück willst,
dann nimm doch einfach 2 Transceiver auf jeder Seite, jeweils ein Sender 
und Empfänger, die auch fest so verdrahtet sind.

RS232_TX -> RS485_Sender    -> 2-Draht -> RS485_Empfänger -> RS232_RX
RS232_RX <- RS485_Empfänger <- 2-Draht <- RS485_Sender    <- RS232_TX

So kannst du gleichzeitig Senden und Empfangen, und musst keine 
Steuerleitungen benutzen, das geht natürlich nicht wenn du das an ein 
vorhandenes RS485-Netzwerk hängen willst, und du brauchst natürlich mehr 
Adern (4x Daten + 1 GND).

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.