Reset Variablen festlegen

Gast #531363
Lesenswert?
• ▲
▼
Ich habe einen XC167 von Infineon und Programmiere mit dem Keil Compiler 
in C.

Ich möchte Variablen festlegen, die einen Reset überleben.

Derzeit habe ich z.B. den Timer so eingestellt, dass alle 10ms ein 
Interrupt ausgelöst wird. Wenn ich das Intervall auf 20ms ändern will, 
muss ich jedes mal mit den neuen Werten Compilieren und Flashen.

Ich bin auch schon so weit, dass ich den Timer über RS232 ändere, nur 
bei einem Reset der Platine sind wieder die alten Standardwerte drin.
#531398
Lesenswert?
• ▲
▼
Hallo,
was du benötigst ist ein nichtflüchtiger Datenspeicher, z.B. EEPROM
es gibt mind. 2 Möglichkeiten:
- Du speicherst den Wert auf dem internen Flash - Stichwort 
EEPROM-Emulation.
- Du schließt ein externes EEPROM an.

Die 1. Variante ist die elegantere und billigere, dafür aber schwieriger 
zu realisieren (kann aber sein, dass es fertige Bibliotheken hierfür 
gibt)
Für Variante zwei gibt es eine AppNote:
http://www.infineon.com/upload/Document/AIM/Microcontroller/16bit/ap1609510_XC16x_SPI_EEPROM.pdf

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

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.