32bit Daten ins Flash eines STM32G4xx schreiben

Gast #6771049
Lesenswert?
• ▲
▼
Sevus,

ich hätte da mal ein Problem, und zwar bin ich gerade von einem 
STM32F3xx auf einen STM32G4xx umgestiegen, und passe derzeit meine FW 
an.
In dem Programm werden 32bit Werte in das Flash geschrieben. Nun kann 
man auf den STM32G4 leider nur noch 64 bittig schreibend auf das Flash 
zugreifen.

Daher war meine Idee jewils 64bit zu schreiben und jeweils die ersten 
oder zweiten 32 bit aufgefüllt entwerder vorne oder hinten mit 
0xFFFFFFFF zu schreiben. Dabei ist mir aufgefallen dass sobald eine 
64bit Adresse einmal beschrieben ist diese erst nach einem page erase 
wieder beschreibbar ist.
Also nicht so das man einzelne Bits "nach unten" kippen kann.

An einigen Stellen des Programms kann ich einfach 2 x 32bit Werte 
zusammenfassen, leider ist dieses jedoch nicht überall möglich da die 
Daten teilweise auch über eine Schnitstelle (welche ich nicht in der 
Hand habe) übertragen werden. Hier müssen die Adressen nicht aufeinander 
folgend sein, und ich kann auch nicht sagen ob es eine gerade oder 
ungerade Anzahl von Daten sind. Des Weiteren bekomme ich an dieser 
Stelle auch nicht mit wenn die Daten vollständig übertragen wurden.


Mir fällt jetzt nur die Möglichkeit ein, bei jedem 32bit Wert der 
eingetragen wird
- die gesammte Page in den Ram laden
- Flashpage löschen
- den einen Wert im Ram neu zu setzen
- Ram in den Flash schreiben.

Das wiederstrebt mir aber massiv, hat jemand vieleicht doch noch einen 
Hack mit dem ich die 32bit Werte in das Flash schreiben kann?

Vielen Dank schon mal für eure Hilfe

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.