Decoder von Tran, Zimo, D&H

Grundlagen der Decoder-Programmierung

Für den Einsteiger erscheint das Programmieren anfangs oft verwirrend, manche haben sogar ein wenig Angst davor. Auf dieser Seite möchten wir euch die Grundlagen möglichst einfach und verständlich erklären. Ihr werdet sehen... Es ist kein Hexenwerk! Wir haben die einzelnen Punkte ein wenig unterteilt:

Und liebe Einsteiger: Wenn ihr der Meinung seid, dass ich hier zu weit aushole oder die Erklärungen euch nicht weiter bringen, lasst es mich wissen! Diese Seiten sind speziell für euch und sollen euch helfen, die ersten Schritte ohne digitales Fragezeichen über'm Kopf zu machen :)

Was ist eine CV?

Die kurze Version: Eine CV ist ein Einstellparameter des Decoders. CV bedeutet Configuration Variable.

Und etwas ausführlicher: Mit Hilfe der CVs werden Einstellungen des Decoders verändert. Jede CV kann dabei einen Wert von 0 bis 255 haben. Ein Decoder hat in der Regel sehr viele CVs, die einfach mit Nummern bezeichnet werden (CV 1, CV 2,...). Man benötigt in der Regel allerdings nur sehr wenige davon unbedingt. Meistens ändert man nur CV 1 (die Adresse) und es geht los.

Im einfachsten Fall trägt man den gewünschten Wert in die CV ein, beispielsweise in CV 1 für die Adresse. Speichert man dort den Wert 5, kann man die Lok anschließend unter der Adresse 5 steuern.

Etwas trickreicher sind CVs, die eher eine Ansammlung von Schaltern darstellen, wie CV 29. Darüber erfahrt ihr mehr im folgenden Abschnitt.

Bit? Byte? Kann man das trinken?

Bits und Bytes sind Einheiten für Datenmengen, denn Decoder sind ja nichts anderes als winzig kleine, sehr spezielle Computer. Das Bit stellt dabei die kleinste Informationseinheit dar. Es kann lediglich zwei Zustände speichern: 0 und 1 bzw. Aus und An. Acht Bit ergeben dabei ein Byte - Das ist übrigens genau die Größe einer CV.

Und hier kommen wir wieder zum Programmieren des Decoders. Wir können uns ein Bit wie einen Schalter vorstellen. Jeweils acht dieser Schalter bilden eine CV. Und es gibt 256 mögliche Kombinationen der Schalterstellungen, von 0 (alle aus) bis 255 (alle an).

Die Darstellung von CVs

Es gibt zwei Möglichkeiten, den Wert einer CV anzuzeigen oder zu verändern: Entweder als einfache Zahl oder als eine Reihe von acht Schaltern.

Als Zahl ist es recht einfach, denn das ist nichts anderes als ein Wert zwischen 0 und 255. Viele CVs lassen sich damit hervorragend nutzen, eben wie z.B. CV 1 (Adresse).

Die „Schalterdarstellung“ ist für viele erstmal ungewohnt, denn das ist eine achtstellige Zahl, deren einzelne Ziffern immer nur 0 oder 1 sein können. Das kommt uns doch bekannt vor... Und richtig, mit dieser Anzeige werden die einzelnen Bits der CV dargestellt. Jedem Bit, also jedem einzelnen Schalter, kann ein Dezimalwert zugeordnet werden. Bei Bit 0 beginnend ist das 1, 2, 4, 8, 16, 32, 64 und dann 128. Ist ein Schalter an (das Bit steht also auf 1), wird der zugehörige Wert gezählt, bei einem abgeschalteten Bit ist er 0. Will man den "Zahlenwert" der CV ermitteln, dann müssen lediglich die Werte der aktiven Bits addiert werden. Sind Bit 0 (Wert 1) und Bit 2 (Wert 4) an, dann muss die CV auf 5 gesetzt werden. Soll jetzt noch Bit 6 dazu angeschaltet werden, muss 64 addiert werden und der Wert ändert sich auf 69.

Alle mir bekannten Zentralen zeigen den Wert einer CV mindestens als Zahl an. Die besseren Zentralen oder sogar PC-Programme beherrschen auch die bitweise Darstellung, was die Handhabung bestimmter CVs (die wichtigste ist wohl CV 29) sehr vereinfacht.

Bitrechner: Einfache Umrechnung zwischen bitweiser Darstellung und CV-Wert

Eure Zentrale kann nur den Zahlenwert anzeigen? Dieser kleine Rechner rechnet für euch den einzutragenden Wert aus, wenn ihr die einzelnen Schalter betätigt. Andersherum könnt ihr auch einfach eine Zahl in das Feld schreiben, dann werden die Schalter entsprechend gesetzt.

Erklärung

Jedem Bit ist ein dezimaler Zahlenwert zugeordnet, (steht unter dem Schalter in Klammern). Um den Dezimalwert zu erhalten, wird bei jedem Bit geschaut, ob es 1 oder 0 ist. Ist es 0, also der Schalter aus, ist auch sein dezimaler Wert 0. Ist das Bit 1, also der Schalter an, wird der in Klammern stehende Wert verwendet. Zum Schluss werden alle Werte addiert. Aus dem oben eingestellten Beispiel ergibt sich also:

Bitweise:

Dezimal:

CV-Wert: