Leitungspegel RS485

OP #2553613
Lesenswert?

Hallo,

ich habe eine Frage zu den Leitungspegeln, die ich an meinem 
USB-RS485-Wandler gemessen habe. Ich benutze einen Wandler des Typs 
USB-COM485-PLUS1.
Darauf sind im wesentlichen ein FT232R und ein SP481EE verbaut.

Ich habe mit einem Terminalprogramm eine Bitfolge an die Schnittstelle 
gesendet. Einstellungen des Programms:
Bitrate: 19200
Datenbits: 8
Stoppbits: 2
Parität: keine
übermitteltes Byte: 5A (hex)

Die Pegel habe ich dann an den beiden RS-485-Klemmen gemessen.
Dann habe ich die Bitfolgen analysiert. Vor dem Startbit wird scheinbar 
eine logische "1" übermittelt, die ich mir nicht so recht erklären kann.
Weiß jemand, woher dieses zusätzliche Bit kommt? Die Senderaktivierung 
(über TX_Enable des FTDIs) wird zusammen mit dieser "überzähligen 1" 
aktiv.

Wenn ihr noch weitere Informationen braucht oder ich was messen soll, 
dann sagt bitte Bescheid.

Danke und Grüße Lukas
Angehängte Dateien:
OP #2553786
Lesenswert?

@Oliver: A, B sind die Ausgänge des SP481EE gegen GND

@A. K.: genau, ich hab gerade mal mit einem Multimeter gegen GND 
gemessen.
A 0V und B ~1V

Aber woran liegt das? eigentlich sollte man die "überflüssige 1" 
garnicht sehen oder? Das erste was von dem Telegramm, was man bermekten 
sollte, sollte doch das Startbit sein. Oder sehe ich das falsch?

Danke euch beiden schonmal.
Gast #2553825
Lesenswert?

Ich glaube es kommt vom den DE (DRIVER ENABLE), wenn der kurz vor senden 
aktiv wird, zieht der Treiber die A und B pins auf die richtige Pegeln, 
dann wird gesendet.  Wenn dir Leitungen vorher nicht sonst wie (durch 
andere Bus Teilnehmer oder Terminierung) auf die richtigen Pegeln 
gezogen wird, dann siehts aus wie auf deinem Bilder.

Da ist keinem extra Bit, sondern DE wird lediglich Aktiv.
#2553838
Lesenswert?

Also nochmal, diesmal deutlicher: Wie sieht der Abschluss auf dem 
RS485-Bus aus? Normalerweise findet man pro Ende des Busses einen eher 
niederohmigen Widerstand zwischen A und B und nicht selten auch noch 
zwei höher dimensionierte Ziehwiderstände nach VCC/GND. Hier sieht es 
nicht danach aus, als ob diese Art Abschluss dran wäre.
OP #2553906
Lesenswert?

Ich verstehe nicht, wie ein Terminierungswiderstand (du meinst die 
obligatorischen 120 Ohm zwischen A und B?) B im Ruhezustand auf ein 
höheres Spannungsniveau ziehen soll.
Oder wie meinst du das mit der Terminierung?

Ich werde das, aber auf alle Fälle ausprobieren. Geht allerdings erst am 
Montag, vorher hab ich kein Oszi.
Gast #2553933
Lesenswert?

Lukas P. schrieb:
> Dann habe ich die Bitfolgen analysiert. Vor dem Startbit wird scheinbar
>
> eine logische "1" übermittelt, die ich mir nicht so recht erklären kann.

Ist ganz einfach:

Der SP481 ist ein Halbduplex-RS485-Transceiver.
Normalerweise sind die Leitungen /RE (Receive Enable) und DE (Drive 
Enable) verbunden. Ein Halbduplex-Transceiver steht im Ruhezustand immer 
auf Empfang, die Leitungen A und B sind dann High Impedance.
Ruhepegel der TXD-Leitung einer seriellen Schnittstelle ist High.
Wenn jetzt an DI der Ruhepegel High anliegt und der SP481 auf Senden 
umgeschaltet wird (DE = High), wechselt Ausgang A auf High und Ausgang B 
auf Low.
Siehe Datenblatt.
Ist auch völlig egal, da der Empfänger nur auf eine Flanke von High nach 
Low reagiert.
#2553955
Lesenswert?

Lukas P. schrieb:

> Ich verstehe nicht, wie ein Terminierungswiderstand (du meinst die
> obligatorischen 120 Ohm zwischen A und B?) B im Ruhezustand auf ein
> höheres Spannungsniveau ziehen soll.

Wenn der Bus inaktiv ist, d.h. der Transmitter abgeschaltet ist, dann 
sind die Leitungen A,B fast stromlos. Folglich sorgt der Widerstand 
dafür, dass gleicher Pegel vorliegt. Welcher absolute Pegel das dann 
ist, das ist im Rahmen des zulässigen Bereichs von RS485 egal.

> Ich werde das, aber auf alle Fälle ausprobieren. Geht allerdings erst am
> Montag, vorher hab ich kein Oszi.

Dafür tuts ein Multimeter. Mit dem kannst du den Pegel der Leitungen im 
inaktiven Zustand auch messen. Wenn sie lang genug inaktiv bleiben.
OP #2560794
Lesenswert?

Gregor B. schrieb:
> Ist ganz einfach:
>
> Der SP481 ist ein Halbduplex-RS485-Transceiver.
> Normalerweise sind die Leitungen /RE (Receive Enable) und DE (Drive
> Enable) verbunden.
Funktioniert das tatsächlich? Dann wären ja Ansätze mit z.B. einem FTDI 
unnötig, oder nicht?

> Ein Halbduplex-Transceiver steht im Ruhezustand immer
> auf Empfang, die Leitungen A und B sind dann High Impedance.
> Ruhepegel der TXD-Leitung einer seriellen Schnittstelle ist High.
> Wenn jetzt an DI der Ruhepegel High anliegt und der SP481 auf Senden
> umgeschaltet wird (DE = High), wechselt Ausgang A auf High und Ausgang B
> auf Low.
> Siehe Datenblatt.
Ok jetzt ist mir klar, woher der SPrung kommt. Dankeschön!

> Ist auch völlig egal, da der Empfänger nur auf eine Flanke von High nach
> Low reagiert.

Ich dachte immer, RS485 wäre Pegelgesteuert? Oder bezieht sich deine 
Aussage nur auf das Startbit?

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren