Forum: Mikrocontroller und Digitale Elektronik AVR Flashspeicher als Datenspeicher nutzbar?


von Dirk (Gast)


Lesenswert?

Hallo allerseits,

Ist der Flashspeicher auch als Datenspeicher zu gebrauchen?
z.B. zur Abspeicherung des gesamten EEPROM Inhaltes ins Flash?

Danke für Antworten

Dirk

von Andreas S. (andreas) (Admin) Benutzerseite


Lesenswert?


von Dirk (Gast)


Lesenswert?

Hallo Andreas,

danke erst einmal für deine Antwort.  :-))
Ich glaube ich habe mich nicht exakt ausgedrückt. Ich möchte Daten die 
ich zur Laufzeit erhalte im Flash abspeichern. Der Hintergrund ist die 
geringe EEPROM Größe der Controller. Meine Idee war dann eventuell das 
FLASH als Speicher benutzen zu können. Ich weiß aber auch: das FLASH hat 
nur garantierte 1000 Schreibzyklen. ;-)

Gruß
Dirk

von Bernhard (Gast)


Lesenswert?

Ich bin nur AVR Anfänger aber schau dir mal im AVR-Instruction Set 
(http://www.atmel.com/atmel/acrobat/doc0856.pdf  den SPM / Store Program 
Memory Befehl an. Wenn ich das Beispielprogramm nicht total falsch 
verstehe könnte das was für dich sein.

von Dirk (Gast)


Lesenswert?

Danke Bernhard der Tip war gut. Es gibt im Instruction Set der Mega 
Reihe Befehle zum schreiben bzw. lesen des Flashspeichers(SPM, LPM). Ich 
hatte am Anfang mit dem AV8535 geliebäugelt, dort gibt es dieses 
Befehlspaar aber nicht. Bin gerade mit dem AVRStudio am testen ob es für 
meinen Einsatzfall funktionieren kann.

Dirk

von Stefan L. Fuchs (Gast)


Lesenswert?

Hallo Dirk,

Entscheidend fuer die Nutzung des Flashspeichers als Datenpuffer zur 
Laufzeit ist die sogenannte "Selfprogrammable"-Eigenschaft des Flashes 
(bzw. ob diese vom Core unterstuetzt wird). Aus dem Stehgreif sehe ich 
diese Moeglichkeit nur bei einigen MEGA-AVR's. Allerdings gibt es von 
Atmel neuerdings den MEGA8535, welcher zum AT8535 funktions- und 
Pinkompatibel ist und diese Eigenschaft unterstuetzt. Vielleicht ist der 
ja eine Alternative fuer Dich.


PS: Der Aufwand fuer die Nutzung des Features ist nicht zu 
unterschaetzen, da die meisten Flashtechnologien ein quasiparalles 
Schreiben und Lesen (und nichts anderes passiert beim normalen 
Programmfluss, welcher den Flash beschreiben soll) nicht unterstuetzen, 
d.h. Die Flashprogrammierroutine muss vorher ins RAM kopiert und von 
dort aus operieren (Routine muss relocativ programmiert sein)

Viel Spass weiterhin
    welcher dass

von Peter Kutsch (Gast)


Lesenswert?

Hi
ich denke, du bist mit einem i2c eprom besser dran.
Mfg
Peter

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.