Umschalt IC für 2 bis 6 TX Pins
Hallo zusammen,
ich würde gerne eine SSC-32 mit Daten von mehreren ATmegas beschicken. Diese kann aber nur TTL-RS232, was dazu führt das keinen Daten mehr bei direkt Anschluss von mehreren TX-Pins auf den einen RX-Pin empfangen werden.
Die AVR's sollen in einer bestimmten Reihenfolge ihre Daten zur SSC senden und sich dann wieder von RX trennen damit der Nächste sich verbinden kann usw usw. Das Ganze soll dann in einem Ring laufen, in dem maximal 6 TX-Pins zu trenen/verbinden wären.
Jetzt ist mein Problem mit welchem IC ich die TX Pins so von einander trennen kann dass der Datenaustauch nicht durch andere TX-PIns unterbunden oder gestört wird?
Würde sich ein Demultiplexer (reichelt) dazu eignen? Nur das Problem ist auch das jeder µC sich selbst rauf oder runter schalten müsste vom IC, da ich keine andere zusätzliche Syncronisation vorgesehen habe.
Hat jemand vielleicht schon etwas Erfahrung mit so einer Sache und kann weitere Tipps geben oder vielleicht auch etwas ganz Anderes empfehlen was vorraussichtlich besser funktionieren könnte?
Vielen Dank und Grüße
Jörg
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo Jörg,
mit welcher Baudrate werden die Daten übertragen? Ich überlege gerade, ob folgende Schaltung funktionieren könnte. Ich denke solange du dafür sorgst, dass immer nur einer sendet müsste es klappen:
Anhang 29146
Der Ruhepegel ist high, dieser wird pro Sender invertiert und dann zusammen auf einen NPN-Transistor mit Pull-Up geführt, der das Signal noch mal invertiert und "verstärkt". Es könnte sein, dass noch Dioden in Reihe zu den 6 Ausgangswiderstände müssen, da ja immer 5 Ausgänge das Signal schon auf low ziehen und nur einer auf high. Das könnte zu wenig zum durchsteuern des Transistors sein. Aber ansonsten sehe ich bei nicht allzuhohen Baudraten keine Probleme mit der Schaltung.
Ich bin mir gerade bezüglich des Ruhepegles nicht sicher, aber falls der Ruhepegel low ist wäre es sogar noch einfacher. Dann könnte man sich die erste Invertierung per 6x-Nicht-Gatter sparen und alle sende-Pins per Diode zusammenschalten und somit "verodern" und dann einfach mit einer doppelten NPN-Transistor + Pull-Up "verstärken". (Zwei mal, weil das Signal invertiert wird pro Stufe)
Oder noch einfacher, aber gefährlich: Einfach alle sende-Pins als Eingang konfigurieren und nur im Sende-Fall als RS232-Ausgang konfigurieren. Die Sende-Pins können dann alle verbunden werden und sollten zusätzlich mit einem Widerstand auf dem Ruhepegel gehalten werden. Das ist aber wie gesagt gefährlich, da bei einem Software-Fehler eventuell mehrere Ausgänge gegeneinander "kämpfen". Wenn man das nicht schnell genug merkt gewinnt der stärke und der oder die anderen werden nie mehr was senden...
Viele Grüße
Andreas