www.mikrocontroller.net

Forum: Compiler & IDEs [EEPROM] Speicherzellen immer 0 beim Deklarieren eines Arrays?


Autor: Bernhard N. (bernieserver)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich deklariere in AVR Studio ein Array in einem EEPROM folgendermaßen:

uint32_t EE_MemoryPartition[512] EEMEM

Ich habe mir dann mal nach Hochladen den Speicherbereich angeschaut und 
festgestellt, dass dort alles mit Nullen voll ist - genau so wie ich es 
brauche.

Nur wie zuverlässig ist das?

Kann man sich darauf verlassen, dass es immer so ist? Oder würdet Ihr 
das Array mit einer Schleife noch zusätzlich manuell mit Nullen füllen?


Gruß
Bernhard

Autor: Oliver (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Radio Eriwan - es kommt darauf an, wie die EESAVE-Fuse steht.

Bei nicht gesetzter Fuse wird bei einem Chip-Erase vor dem programmieren 
auch das EEPROM gelöscht, bei gesetzter Fuse nicht. Beides sehr 
zuverlässig ;)

Oliver

Autor: Bernhard N. (bernieserver)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Oh sorry, habe natürlich das EESave aus. :)

Also zuverlässig?

Autor: Oliver (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bernhard N. schrieb:
> Also zuverlässig?

Guggst du ins Datenblatt. Mit gesetzer EESAVE-Fuse steht nach Chip-Erase 
das drin, was vorher auch drin stand, ohne EESAVE-Fuse steht 0xFF drin, 
wie im gelöschten Flash auch.

Wenn dein Programmer beim "Hochladen" auch das EEPROM schreibt, dann 
steht 0x00 drin. Lezteres unabhängig von der EESAVE-Fuse, da das EEPROM 
ja überschrieben wird.

Such dir was aus. Und schau nach, was dein Programmer bzw. dein 
Flash-Skript tatsächlich macht.

Oliver

Autor: zufaulzumeinloggen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Habe ich bereits, zumindest mein AVR JTAG MK2 machts so wie ich 
beschrieb.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.