Bzgl. Gesamtkilometer: Der Atmel hat ja 512bytes EEPROM, vielleicht ist da nochwas frei. Im KFZ wird auch das EEPROM zum speichern des Kilometerstandes verwendet. Fuer gewoehnlich nimmt man eine handvoll bytes und baut ein Ring-Register auf, um die maximalen W/E-cycles nicht zu ueberschreiten. (Oder wenn kein Platz ist, wird erst geschrieben, wenn der PowerDown aktiviert wird)
Aktueller Zwischenstand:
Mein Cousin war in den letzten Tagen extrem fleissig und hat das Hauptproblem (Programmspeicher voll) durch umfangreiche Neucodierungen lösen können (sämtliche Gleitkommaoperationen wurden durch Ganzzahlberechnungen mit Kommaverschiebung ersetzt)! Dadurch muss nicht mehr die Bibliothek für Gleitkomma eingebunden werden und es wurden kostbare 1.8kB von insgesamt 8kB Programmspeicher frei
Anschliessend hat er noch die EEPROM-Speicherung wie von Dir beschrieben umgesetzt sowie Vorkehrungen für die Datensicherheit getroffen.
Kurz- ich fahre seit 2 Tagen mit einer neuen Firmware rum... diese speichert jetzt "Gesamtkilometer", Gesamtfahrzeit und Anzahl der Prozessorstarts und läuft zur allgemeinen Überraschung fehlerfrei, zuverlässig und verblüffend genau.
Jetzt wird das bestehende (letzte?) Hardwareproblem der fehlenden Signale bei Laderabschaltung wegen "Akkus voll" angegangen.