C/C++ - Modellbahn-Digitaltechnik

C/C++

Der Gläserne Zug vor einem Signal
Der Gläserne Zug vor einem Signal

Mit C/C++ programmieren wir unsere Schaltungen für das Steuern der Signale und Weichen. Diese sehr robusten Programme laufen auf einem ATtiny2313, der nicht nur leistungsstark, sondern auch recht preisgünstig ist. Entwickelt wird die Software im ATMEL-Studio 4. Ein Upgrade auf neuere Studio-Versionen ist nicht mehr möglich. Daher betreiben wir virtuelle Maschinen (HYPER-Vi) mit Windows XP. Hier kann die benötigte Umgebung zur Programmierung abgebildet werden.

Weitere Lichtdecoder werden auf der Basis ebenfalls entwickelt und programmiert. Es sind Lichtdecoder, mit eher einfacheren Aufgaben, bei denen ein ATtiny2313 reicht.

Komplexe Lichtaufgaben übernehmen die neuen Decoder, die auf Basis eines ATmega328 funktionieren. Meist werden die dann auch mit der Arduino IDE programmiert.

Für ganz kleine Aufgaben, die ohne die Ansteuerung durch einen DCC-Bus laufen (autark also), werden auch gerne mit BASCOM bei uns entwickelt. Diese Entwicklungsumgebung hilft sehr, kleine Aufgaben und Programme für einen Mikrocontroller umzusetzen. Gerade entlang der Modellbahn gibt es viele dieser kleinen Aufgaben.

Unterschiede der Decoder

Der Weichen- und Signaldecoder unterscheidet sich im Wesentlichen, neben der Software des Mikrocontrollers, an den Anschlüssen der Verbraucher. Die reinen Signaldecoder haben eine Steckleiste zum Einstecken eines Signals mit ggf. Vorsignal. Die Weichendecoder haben hingegen Schraubklemmen.

Die Signaldecoder haben die Vorwiderstände und die Dioden für das Vorsignal (Oder-Schaltung) bereits auf der Platine. Die Weichendecoder, die auch als Signaldecoder für einfache Signale oder Lichtdecoder (…) benutzt werden können, haben die Möglichkeit, vor den Ausgängen Widerstände, Sicherungen oder Drahtbrücken einzusetzen.

Somit sind diese beide Decodertypen hochflexibel für jeden Einsatz auf der Modellbahn-Anlage.