RS485: 4-Draht zu 2-Draht

Gast #1065673
Hallo zusammen!

Ich muss ein Projekt entwerfen, welches bei einer RS485-Schnittstelle 
erkennt, ob Daten im Halb- oder Vollduplex-Modus geschickt werden. 
Sobald der entsprechende Modus erkannt wird, muss die RS485-Leitung von 
4-Draht zu 2-Draht oder umgekehrt "umgeswitched" werden.
Hardwaremässig wäre das ganze kein Problem, weiss aber nicht wie ich den 
Modus softwaremässig erkennen soll. Hat jemand schon mal so was gemacht 
oder weiss wie das funktioniert?

Danke & Gruss
Sandra
Ganz einfach, rs485 im Full-Duplex ist rs422, also benutzt du 
warscheinlich
zwei rs485 receiver, einer dauernd auf Empfang, sowie die Enable für RX
am Controller angeschlossen. Mittels Enable aktivierst du dann die 
verschiedenen Empfänger, jedoch nur einen zur gleichen Zeit. Der RX-Pin
wird bei allen zusammengeführt, ev. mit Wiederstand.
Gast
Nein, RS485 kann sowohl im Halbduplex (2-Draht) und Vollduplex (4-Draht) 
betrieben werden.
Bsp. von Wikipedia:
"Die EIA-485 Schnittstelle benutzt in der Regel nur ein Adernpaar und 
wird halbduplex betrieben, mit zwei Adernpaaren ist aber auch 
Vollduplexbetrieb möglich."

Nun sendet ein Gerät unserer Firma manchmal im Halb-, manchmal im 
Vollduplex-Betrieb. Mit Hilfe eines Microcontrollers will ich nun 
irgendwie feststellen können, in welchem Betrieb sich das Gerät gerade 
befindet. Weiss aber nicht wie..
Kann ich davon ausgehen, dass bei RS485-Übertragung die Datagrammlänge 
immer gleich gross ist? Und senden im Halbduplex-Betrieb immer Master 
und Slave abwechseld ein Datagramm oder kann dies variieren?
Das Übertragungsprotokoll ist leider nicht bekannt.

Gruss
Sandra
>Kann ich davon ausgehen, dass bei RS485-Übertragung die Datagrammlänge
>immer gleich gross ist?

Nein kannst du nicht. Es gibt bei RS485 kein genormtes Protokoll hier 
kocht jeder sein eignes Sueppchen.

>Und senden im Halbduplex-Betrieb immer Master
>und Slave abwechseld ein Datagramm oder kann dies variieren?

Das ist nicht gesagt das die sich immer abwechseln.

>Das Übertragungsprotokoll ist leider nicht bekannt.
Das sollte es aber sonst kann man nur rumraten.
Gast
>Nun sendet ein Gerät unserer Firma manchmal im Halb-, manchmal im
>Vollduplex-Betrieb.

Wenn es ein eigenes Gerät ist, sollte sich doch klären lassen, wann es 
was macht.
Gast
Naja, wenn Du nur zwei Geräte hast, die als "Blackbox" arbeiten, aber 
beide ordentlich terminiert sind (!!!), könntest Du die Datenleitungen 
über Shunts verbinden und aus der Polarität der abfallenden Spannungen 
darauf schliessen

a) wer Quelle und wer Senke ist
b) was gesendet wurde

Zu beachten: Spannungsabfall nicht zu groß, Kapazitätsbelastung vs. 
Übertragungsrate...


Könnte aber gehen.
Gast
Meinst du sowas (Anhang)?
Das Problem ist nur, ich sollte bevor ich die Datenleitungen verbinden 
wissen, ob der Halb- oder Vollduplexmodus aktiv ist. Ansonsten riskiere 
ich Kollisionen..
Angehängte Dateien:

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 17 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.