Liebes Forum, Ich möchte ein RS485 Hub entwickeln, das grosse Leitungslängen an bis zu 24 Geräten (Slaves) über RS485 ermöglichen soll. Also in etwa so wie in Bild1 gezeigt. Der uC analysiert das Protokoll und sendt nur korrekte Pakete an die Slaves, leitet auch deren Antworten weiter. Dazu habe ich an den LTC485 zwischen Pin 1 (RO) und dem UART eine Schottky Diode platziert (10ns). Die RS485 Seite ist jeweils mit 120 Ohm terminiert und mit Pullups (A)- und Pulldowns (B) versorgt. Das funktioniert in der Regel gut, doch bei mehr als 4 LTC485, die dadurch auf einen UART zusammenreduziert werden, kommt es bei einem zu einem LO auf dem Pin 1, obwohl dort nichts gesendet wird. Habt Ihr eine Idee, wie ich mehrere RS485 Busse zu einem UART so "verjüngen" kann, dass die von RS485 gesendete TX Seite auf einem uC UART RX ankommen kann? Danke Johann
Inverter hinter jedem RO, mit dem Ausgang NPN-Transistor ansteuern - ergibt Open-Collector-Ausgang.
> Dazu habe ich an den LTC485 zwischen Pin 1 (RO) und dem UART eine > Schottky Diode platziert (10ns). Pullup auf der UART-Seite vergessen?
Peter, Gute Idee... Nein, den habe ich auf beiden UART Seiten mit 1k drinnen... Danke!
Das Problem mit der aktiven Ausgangsstufe des LTC485 haben wir über die Dioden gelöst. Anodenseitig hängt ein Pull-Up auf dem RX vom gemeinsamen Bus. Das Problem ist, dass der LTC, außer bei einem negtiven Eingangssignal, der Funktionstabelle nach "High" ausgeben sollte. Manche machen das aber nicht und geben "Low" aus. Dann ist keine Kommunikation mehr möglich. Dann hilft auch keine zusätzliche Umwandlung in einen OC-Ausgang, wie Du es vorschlägst. Die wird dann trotzdem "Low" ausgeben.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.