Problem mit RS485 und TV8469

Gast #1063661
Lesenswert?

Hallo,

ich habe ein Problem eine RS485 Strecke zum laufen zu bekommen.
Hardware:
ATmega16 auf STK500 über Experimentierboard und SN75176 über TV8469
verbunden mit PC.
Wenn ich das Testboard direkt mit dem PC verbinde (RS232) bekomme ich
Verbindung. Alles läuft problemlos.
Schalte ich jedoch den Adapter (TV8469) und einen SN75176 dazwischen
erkennt der uP das Protokoll nicht mehr. Mit Oszi sieht alles völlig
normal aus. Ruhepegel usw stimmt alles. Es kommt auch alles beim uP an.
Hat irgendjemand Erfahrung mit TV8469? Braucht das Ding irgendwie eine
spezielle Anpassungsschaltung?
Kann es sein dass die Bytes intern invertiert werden?
Es wäre sehr nett wenn mir jemand helfen könnte bin völlig ratlos.

Grüsse Rainer
Gast #1063678
Lesenswert?

tja, hast du halb- oder vollduplex?
Bei halbduplex muss man die Richtung am den Transceivern umschalten. 
Wenn nicht extra gesteuert, nimmt man dafür ein Monoflop  - getriggert 
(und nachgetriggert) vom Sendesignal. Passiert ne Weile nichts, 
Rückschaltung in Empfangsrichtung.
So eine Sache hat mehrere Tücken:
1. Ist es nie ein vollwertiger Ersatz für eine RS232 (da ist immer 
gleichzeitig Senden und Empfang möglich)
2. Selbst wenn nicht, kannst du ein Problem bekommen, dass die 
Richtungsumschaltung nicht schnell genug geht. Dass Monoflop muss ja 
min. für 9 Bitzeiten aktiv bleiben (getriggert vom Startbit, 8 0-Bits 
Daten, Stopbit) Das muss gesichert sein - heisst aber auch, dass nach 
dem letzten Datenbit eine Bytelänge Verzögerung entsteht.

Ich schätze mal, dass dein Problem daher kommt.
Alternativ ne Vollduplex-Verbindung aufbauen (4 Leitungen), dass muss 
funktionieren.
Gast #1176542
Lesenswert?

Hallo, lese den Beitrag erst jetzt. Falls das Problem mit dem TV8469 
noch besteht, habe ich einen Tipp.
Die interne Schaltung hat einen Design-Fehler, der zu temporären oder 
dauerhaften Ausfällen führen kann. Der eingebaute LMC7660 wandelt normal 
eine positive in eine negative Spannung. Hier ist er vergewaltigt und 
soll eine negative in eine positive wandeln. Das geht aber nur mit einer 
zusätzlichen Diode und einem Widerstand, die leider fehlen. Das Ergebnis 
ist, dass der Wandler oft nicht anläuft und der ADM485 keine 
Versorgungs-Spg bekommt. Wo die Bauteile hingehören steht im Datenblatt 
für den kompatiblen MC7660 von ON.
http://pdf1.alldatasheet.com/datasheet-pdf/view/12329/ONSEMI/MC7660.html

Also, Gehäuse aufhebeln, Bauteile einlöten und läuft - jedenfalls bei 
mir.

Hat einigen Aufwand gekostet, die Schaltung aufzunehmen. Dabei stellt 
man fest, dass am Ausgang 4k7-Widerstände gegen + und - liegen. Mit der 
Hochohmigkeit wie in der RS485-Spezifikation ist es also vorbei. Die 
Ansteuerung des ADM485 ist sehr seltsam. Geht aber wohl nicht anders, 
weil der DE-Pin für Tristate nicht über die RS232 angesteuert werden 
kann.

Viel Spaß
Hermann
Gast #3199452
Lesenswert?

Hallo Leute,
das Problem kann ich bestätigen.
Der TV8469 funktioniert nur mit der von Hermann angegebenen 
Modifikation.
Der LMC7660 erfährt somit folgende Änderung:
An Pin 8 muss über den 10µF Kondensator eine Diode gelötet werden, 
Zwischen Pin 5 und 6 ein 1MOhm Widerstand (Achtung: Pin 6 liegt auf 
Masse und muss somit von dem Lötpad hochgebogen werden).

Figure 11 des von Hermann angegebenen Datenblatts veranschaulicht die 
neue Belegung.
Danach funktioniert es einwandfrei, Pegel sind perfekt.

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