Forum: Mikrocontroller und Digitale Elektronik Zwei CMOS Ausgänge kurzgeschlossen, aber es funktioniert. Warum?


von Matthias M. (Firma: privat) (quadraturencoder)


Lesenswert?

In einem alten Mac-ähnliche Gerät habe ich eine Schaltung gefunden, die 
mich nachdenklich macht: zwei LTC1323 Transceiver sind intern an den 
gleichen CMOS seriellen Port angeschlossen, also RX und RX an den selben 
Eingang.

Meine Logik sagt mir, das macht man nicht. Aber die Schaltung 
funktioniert. Ich kann währen des Betriebes das serielle Kabel von Port 
1 auf Port 2 umstecken, und die Übertragung läuft in beide Richtungen 
weiter. Auch TxD, RTS, CTS, DCD, DTR sind so verbunden.

Kann mir jemand erklären, warum. Und ob das riskant ist für die Chips, 
oder egal? Danke! Ist das ne CMOS Besonderheit?

PS: Ich habe im Datenblatt nichts von OpenCollector oder TriState 
gesehen. Auch OutputEnable und die anderen Kontrollsignale sind direkt 
miteinander verbunden/

                  +-------< LTC1323 (1) RXD0 serial Out
                  |
CPU Serial In <---o
                  |
                  +-------< LTC1323 (2) RXD0 serial Out


http://www.linear.com/product/LTC1323

: Bearbeitet durch User
von Clemens L. (c_l)


Lesenswert?

Die Kurven für RXDO in Figure 13 implizieren, dass es keinen aktiven 
Treiber für das deaktivierte Signal gibt.

von Matthias M. (Firma: privat) (quadraturencoder)


Lesenswert?

Danke, Clemens.

Wow, hab ich nicht erkannt.

Heisst das, dass ich den Port der mit "Output Normally Low" bezeichnet 
ist, dann gefahrlos auf "High" ziehen kann? Und umgekehrt?

Matthias

von Joe F. (easylife)


Lesenswert?

Matthias M. schrieb:
> Heisst das, dass ich den Port der mit "Output Normally Low" bezeichnet
> ist, dann gefahrlos auf "High" ziehen kann? Und umgekehrt?

Nein.

Matthias M. schrieb:
> Auch OutputEnable und die anderen Kontrollsignale sind direkt
> miteinander verbunden/

Welches OutputEnable meinst du?
Mir sieht es so aus, also ob zumindest RXEN# der beiden Transceiver 
nicht zusammengelegt sein dürften.

RXEN# bestimmt, welcher der Transceiver die Leitungen RXO, RXO# und RXDO 
treibt.
Beide sollten natürlich nie gleichzeitig treiben.

PS:
Da CPEN#, TXDEN# und RXEN# ver-odert werden, reicht es aus, wenn nur 
eines dieser Signale an beiden ICs unterschiedlich ist.

: Bearbeitet durch User
von Hp M. (nachtmix)


Lesenswert?

Matthias M. schrieb:
>                   +-------< LTC1323 (1) RXD0 serial Out
>                   |
> CPU Serial In <---o
>                   |
>                   +-------< LTC1323 (2) RXD0 serial Out

Abgesehen davon, dass der nicht benutzte Ausgang evtl. durch die 
Software abgeschaltet wird, ist oft der Transistor für Low deutlich 
stärker als der für High.
Wenn du dann die Ausgänge parallel schaltest, ergibt sich so etwas wie 
ein Wired-OR: Der für Low zuständige Transistor gewinnt.
Man kann das auch im Datenblatt sehen, unter "Receivers":
VOH Output High Voltage IO = –4mA  3.5 V
VOL Output Low Voltage IO = 4mA  0.4 V

von Matthias M. (Firma: privat) (quadraturencoder)


Lesenswert?

@easylife: nein, das ist ja das kuriose. Die "linke Seite" beider Chips 
ist genau gleich verschaltet, also direkt mit Leiterbahnen verbunden. 
Habe ich auf einer unbestückten Platine nachverfolgt.

@machtnix: ah, das klingt plausibel. RXD0 ist ja H wenn keine Daten 
empfangen werden (start bit ist L). So könnten dann beide Chips RXD0 
jeweils für sich auf L ziehen (wobei dann aber auch schlimmstenfalls 
85mA fliessen, wenn ich das richtig verstanden habe):

"Receiver Iss Short_Circuit current max 85mA"

Das ist dann zwar nicht wirklich gut, aber durch die thermische 
Sicherung wohl auch nicht zerstörerisch?

Danke.

von Joe F. (easylife)


Lesenswert?

Matthias M. schrieb:
> So könnten dann beide Chips RXD0
> jeweils für sich auf L ziehen (wobei dann aber auch schlimmstenfalls
> 85mA fliessen, wenn ich das richtig verstanden habe)

So verstehe ich das Datenblatt auch. Und 85mA sind auf Dauer eher nicht 
witzig.
Ich verstehe sowieso nicht, warum das Gerät 2 Ports hat, wenn man 
offenbar nur jeweils in einen Port ein externes Gerät einstecken kann 
und darf...

Ich würde in diesem Fall eher mal von einem sehr schlechten Design 
ausgehen als von einer zulässigen Beschaltung.

von Matthias M. (Firma: privat) (quadraturencoder)


Lesenswert?

Joe F. schrieb:
> Ich würde in diesem Fall eher mal von einem sehr schlechten Design
> ausgehen als von einer zulässigen Beschaltung.

Ja, zu dem Schluss bin ich inzwischen auch gekommen. Das ist übel, lässt 
sich aber nicht ändern. Und erschwert mir die Lösung.

Danke noch mal für die Hilfe!

von leeer (Gast)


Lesenswert?

Joe F. schrieb:
> Ich würde in diesem Fall eher mal von einem sehr schlechten Design
> ausgehen als von einer zulässigen Beschaltung.

Da wir nicht mehr über das Gerät wissen, kann es auch einen anderen 
Grund haben. Vielleicht war nie vorgesehen, dass auf beiden was steckt, 
was auch sendet.
"Zwei Stecker - zwei Ausbauoptionen - beide zugleich wird im 
vorgesehenen Betrieb nie passieren."

von Matthias M. (Firma: privat) (quadraturencoder)


Lesenswert?

leeer schrieb:
> Da wir nicht mehr über das Gerät wissen, kann es auch einen anderen
> Grund haben.

Oh, Entschuldigung. Ich dachte es würde vielleicht tl;dr .

Es geht um den Apple Newton MessagePad, so ziemlich der allererste PDA 
von 1994. Das MessagePad ist ein geniales Gerät für seine Zeit, 
Handschrifterkennung, 4MB Flash, usw. . Der PalmPilot und WindowsCE 
kamen erst einiges später:

https://de.wikipedia.org/wiki/Newton_(PDA)

Leider kann das Gerät kaum noch mit der Umwelt kommunizieren. Die 
serielle Schnittstelle hat eine Spezialbuchse, für die es heute keine 
Kabel mehr gibt. Alternativ kann man per WLan kommunizieren durch eine 
PCMCIA WLan Karte. Leider kann aber keine dieser Karten WPA2, also de 
facto nicht mehr ins Netz. Ausserdem kriegt man ohne serielles Kabel den 
PCMCIA Treiber nicht in das Gerät.

Was bleibt ist ein interner Stecker, auf den Apple ursprünglich mal ein 
Modem stecken wollte, dass aber nie gebaut wurde. Um jetzt wieder die 
verbleibenden 50 oder so MessagePads online zu bekommen, wollte ich eine 
interne Platine mit ESP8266 WLan chip entwerfen, die sich wie ein Modem 
verhält, aber eben per WPA2 in's Netz kann. Das würde alle Probleme mit 
einem Schlag lösen. Dieser Erweiterungsstecker hat sogar einen Pin, mit 
dem man den Treiber der internen Schnittstelle abschalten könnte.

Könnte. Kann man aber nicht. Denn weil das Modem nie gebaut wurde, hat 
man auch dieses Feature in ROM nie aktiviert. Mist!

Trotzdem gibt es eine einzige interne Karte von einem privaten 
Entwickler, die seltsamerweise funktioniert. Sie hat den gleichen 
Treiberchip wie die Hauptplatine und bietet einen Apple DIN differential 
serial port (also ebenfalls relativ nutzlos). Ich habe mich immer 
gewundert, ob ich irgendetwas nicht verstanden habe, denn die Karte 
funktioniert, obwohl ich im ROM keine Code gefunden habe, der den 
internen Treiber abschaltet und mir das auch im Schaltplan nicht 
erklären konnte.

Meine Frage ist insofern abschliessend beantwortet: die serielle Karte 
funktioniert durch Zufall und belastet die internen Chips, was bei 
historischen Geräten eine gaaanz schlechte Idee ist. Ich muss also meine 
Karte so bauen, dass sie diesen Fehler nicht macht.

Das geht, benötigt aber zusätzliche Software, die ich aber nur 
einspielen kann, wenn ich ein serielles Kabel habe. Also genau das 
Kabel, dass ich ja eigentlich ersetzen will. AAAAaaaaah.

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
Noch kein Account? Hier anmelden.