Hallo Kai,
ein paar Tips zu deinen Problemen:
Zitat von 50921825 im Beitrag #924
wie schon beschrieben habe ich den code entsprechend geändert.
Wenn Du Code zeigst ( also auch z.B. die .h-Dateien), dann bitte nicht als Bild, sondern als Text in Code-Tags ( das kleine Symbol mit <> rechts im Editor). Dann kann man den Code gegebenenfalss auch zum Test kopieren und auf den eigenen Arduino laden.
Zitat von 50921825 im Beitrag #924
wenn ich jetzt über die intellibox die weichenadresse 19 schalte
Bei deiner Konfigdatei wäre der FCOIL-Eintrag aber Adresse 22. ( Erste Adresse ist 17, und dann einfach weiterzählen ... )
Zitat von 50921825 im Beitrag #924
was meinst du mit die alte datei zerstören? ich habe in der hilfedatei nichts dazu gefunden.
Ich denke, Michael meint das Laden einer geänderten Konfig-Datei. Sind bereits gültige CV-Daten im Arduino, so wird diese beim erneuten Hochladen des Programms nicht automatisch in die CV's übernommen. Das dient dazu, dass manuell geänderte CV-Werte nicht bei jedem Hochladen wieder überschrieben werden. Dazu findest Du Hinweise im Manual unter 'Inbetriebnahme'. Es gibt verschiedene Möglichkeiten, das Übernehmen der Werte aus der Konfig-Datei in die CV's zu erzwingen.
Die Werte in der Konfig-Datei werden auch dann übernommen, wenn Du den Decoder komplett umkonfigurierst, also die iniTyp-Werte änderst. Dann macht es keinen Sinn die alten CV-Werte zu behalten. Aber das hast Du ja nicht gemacht.
Wenn Du das nicht beachtest, bleiben die Daten des ersten Hochladens erhalten, egal was Du in der Konfig-Datei veränderst.
Im Moment kann ich nicht nachvollziehen, was in deinem Decoder passiert, da nicht klar ist, wie die CV's im Decoder tatsächlich gesetzt sind.
Edit: Michael war schneller und hat ja schon alle Fragen beantwortet
Edit2:
Während Du noch mit der Konfig-Datei experimentierst, kann es sinnvoll sein, die Werte beim Hochladen grundsätzlich in die CV's zu übernehmen. Dazu kannst Du diese Zeilen:
2
3
4
// #define FIXMODE NORMALMODE // Ist dieses define aktiv, wird der Betriebsmode fest gesetzt, betrModeP wird dann
// nicht gelesen und ignoriert. Mögliche Werte:
// NORMALMODE, POMMODE, INIMODE, ADDRMODE
ändern in
2
3
4
#define FIXMODE INIMODE // Ist dieses define aktiv, wird der Betriebsmode fest gesetzt, betrModeP wird dann
// nicht gelesen und ignoriert. Mögliche Werte:
// NORMALMODE, POMMODE, INIMODE, ADDRMODE