Eeprom mit Standardwert beschreiben und bei Programmstart auslesen

Gast #1025536
Hallo zusammen,

ich habe ein Problemchen, und zwar bastel ich grad an einer sache mit 
geschwindigkeitsmessung und Gesamtkilometererfassung.

Nun möchte ich den aktuellen Gesamtkilometerstand ins Eeprom schreiben, 
damit er nach ausschalten des Controllers wieder eingelesen werden kann 
um die Km weiterzuzählen. Wie mache ich das am besten?

Ich dachte mir mittels der schreib-funktionen aus dem tutorial den wert 
zu sichern und ihn im hauptprogramm wieder zu lesen. doch woher soll 
nach dem ausschalten des controllers die adresse der angelegten variable 
herkommen? woher weiß das programm später diese adresse wenn ich die 
variable über ihren namen ansprechen will um sie auszulesen?

ist es nicht so, dass wenn ich zu programmstart diese variable z.B. mit

double Gesamtkm EEMEM;

anlege, diese eine neue adresse im eeprom bekommt?

hilfe
A.N. wrote:
> ist es nicht so, dass wenn ich zu programmstart diese variable z.B. mit
>
> double Gesamtkm EEMEM;
>
> anlege, diese eine neue adresse im eeprom bekommt?

Ja, damit wird der Variable eine bisher im Programm unbenutzte 
Speicherstelle im EEPROM zugewiesen. Nach dem Ausschalten ist das aber 
immer noch die selbe Adresse - ist ja fest im Flash eingetragen.

Wenn Du deinen Code änderst und neu kompilierst kann es passieren das 
sich die Adresse ändert wenn du noch andere EEMEM Variablen (vor 
'Gesamtkm' definierst). Sollte aber eigentlich kein Problem sein, da 
Dein Programm ja weiß wo die Variable liegt...

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 18 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.