arm variable in flash lesen/schreiben

Gast #4525960
Hacker R. schrieb:
> wie schreibe ich jetzt auf meine variable?

Da musst du dich wohl mal mit dem Datenblatt des SAM D10 beschäftigen,
genauer: Mit dem Non-Volatile Memory Controller (NVMCTRL) S.349 ff

Datenblatt: 
http://www.atmel.com/images/atmel-42242-sam-d10_datasheet.pdf

Der NVMCTRL ermöglicht eine EEPROM-Emulation, allerdings muss man dazu 
den Controller entsprechend bedienen und man kann (anders als bei echtem 
EEPROM)
nicht einfach Datenworte überschreiben, sondern muss eine Row (= 4 
Pages) löschen, bevor man sie neu beschreiben kann.
Wenn also mehrere Variablen dort liegen, müssen die Daten zuvor 
eingelesen, verändert und wieder geschrieben werden.
Gast #4525983
Einschaltvorgänge zu zählen geht villeicht gerade noch mit der 
EEPROM-Emulation. Wenn du öfter schreiben willst, würde ich ernsthaft 
über ein externes EEPROM bzw. besser gleich ein FRAM nachdenken.
Die lassen sich über I2C-Bus oder per SPI anschließen und Wortweise 
umprogrammieren.
Das FRAM hat ggü. EEPROM noch den Vorteil, daß es keine 
Schreibzyklen-Begrenzung hat, und daß man keinen BUSY-Handshake beim 
Schreiben benötigt, da das Teil so schnell geschrieben, wie gelesen 
werden kann.

Geeignet für den SAM wären 3V-Typen wie z.B. von Cypress
FM24CL64 (I2C) oder FM25CL64 (SPI)
OP #4526195
Hi
Danke für die Antworten.


>> Mit dem Non-Volatile Memory Controller beschäftigen:Also wenn ich variablen 
habe dessen Werte bei Stromausfall bestehen sollen, habe ich keine andere 
möglichkeit als diesen Weg richtig? Abgesehen von hardware Erweiterung mit 
externer FRAM/EEPROM.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 10 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.