Und hier haben wir gleich den einen Sonderfall, bei dem ein DECBUS doch irgendwie über einen Isolator geführt wird und mit der Stromversorgung getrickst wird, um eine Masseschleife zu verhindern.
U1 versorgt den FDEC mit einer 5V Betriebsspannung (VCC). Er bekommt die 18V Eingangsspannung aus dem DECBUS, bezieht sich aber auf den GND-Anschluss der 'Sekundärseite'. (Der FDEC wird sich daher auch nicht am DECBUS melden, solange nicht der GND-Anschluss P6 Pin 5 an einem Gleis angeschlossen ist!)
U2 und U3 dienen zur Verbindung des bidirektionalen DATA Pins am DECBUS mit getrennten TX und RX Signalen des Microcontrollers, U4 isoliert die Signale.
U6 und die Parts QU1, LED1, P2 und R3-5 sind praktisch die Basis jedes FDECs und immer gleich. P2 dient zum initialen Programmieren des Microcontrollers ATMEGA168 und ist als Reihe von Kontaktflächen auf der Unterseite des PCB realisiert.

Die 16 Gleisanschlüsse sind hier. Funktionsweise:
Der Port wird normalerweise durch einen NFET (zB Q1:A) gegen GND kurzgeschlossen. Das hält er aus, obwohl er winzig ist: Bei 6A (realistisch mit 1 Lok auf dem Gleisabschnitt ist eher 1A) fallen an seinem Drain-Source-Widerstand von 0.015Ohm gerade mal 90mV ab, macht eine Verlustleistung von 0,54W. Für beide Transistoren in dem Gehäuse also 1,08W. Bei einem thermischen Widerstand von 60°/W also etwa 65°C Temperaturerhöhung. Da würde ich jetzt nicht mehr dranfassen, aber aushalten würde er das. Bei realistischen 1A haben wir aber nur 2 * 15mW, also weniger als 2°C.
Der Transistor wird nur für wenige msec immer wieder mal abgeschaltet, um den Status des Gleisabschnitts zu testen. Belegt = Kurzschluß gegen Masse = low. Frei = Pullup gegen VCC = high. Das mache ich, damit die Lok(s) möglichst lange beide Schienen als Masse nutzen können.
