Atmega328 Flash beschreiben

Gast #7142341
Lesenswert?

Ist es möglich während der Laufzeit den internen Flash zu beschreiben? 
Ich habe eine Lookup table, die von Zeit zu Zeit mal geändert wird und 
berechnet werden muss. Das dauert aufgrund von Floating Point 
Operationen alleridngs zu lange um es während des eigentliches 
Messvorgangs zu machen.
Gast #7142387
Lesenswert?

Carsten S. schrieb:

> Ist es möglich während der Laufzeit den internen Flash zu beschreiben?

Teils, teils.

Es gibt Bereiche im Flash, die tatsächlich "zur Laufzeit" beschrieben 
werden können. Damit ist konkret gemeint: währenddessen kann anderer 
Code tatsächlich u.U. noch laufen.

Es gibt aber auch Bereiche im Flash, wo das nicht möglich ist.

Du findest den Unterschied im Datenblatt unter den Stichworten "NRWW" 
respektive "RWW".
Gast #7142389
Lesenswert?

Carsten S. schrieb:
> Ich meine nicht das beschreiben
> aus dem bootloader sondern aus dem "normalen" Programm heraus.

Du musst dafür in den Bootloaderbereich springen.
Also deine Schreibefunktion per Linkerscript in den Bootloaderbereich 
lokatieren.
Bootbereichfuse aktivieren.
Wenn du keinen wirklichen Bootloader hast, dann aus dem Boot-Resetvector 
in den normalen Resetvector springen.
Gast #7142393
Lesenswert?

Carsten S. schrieb:

> Ich finde da in der AVR-libc nichts zu. Ich meine nicht das beschreiben
> aus dem bootloader sondern aus dem "normalen" Programm heraus.

Ein "normales" Programm (außerhalb des Bootloader-Bereichs) kann 
generell nicht in den Flash schreiben. Es muß mindestens ein kleines 
Stück Code im Bootloader-Bereich aufrufen.

Sprich: theoretisch muß mindestens der Kern der Sache, nämlich die 
"spm"-Instruktion im Bootloader-Bereich liegen. Praktisch muß noch etwas 
mehr dort liegen, insbesondere dann, wenn es sich beim Aufrufer um ein 
C-Programm handelt...
Gast #7142491
Lesenswert?

SPI/TWI FRAM wäre vielleicht eine interessante Alternative und verträgt 
praktisch unbegrenzte Lese- und Schreibzugriffe. Ausserdem sind keine 
komplizierte FLASH Programmierungsmethoden notwendig.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren