Flash_Speicher blockweise lesen und schreiben

OP #1046951
Tag alle,

ich kann C nicht so gut...
habe aber kleine Aufgabe wobei ich den Speicher
Sektorenweise lesen, löschen und schreiben will.
Ich möchte nur pro Datenpacket einen ganzen sektor verwenden und falls 
Daten in sektor zu verändern sind, den kompletten sektor löschen und 
wieder neu
beschreiben.
Sollte jemand einem Code Beispiel haben, würde mich sehr freuen.

mfG.
sandra(sandrametampa@yahoo.fr)
Gast
Hallo,

auf welchem Prozessor soll das denn passieren?
Welcher Speicher wird verwendet (Internes Flash, extern seriell oder 
parallel oder Speicherkarten)?

Gruß,

Peter
OP
Tag alle,

mir ist wichtig wie man im Speicher einen sektor  im Speicher lesen und 
schreiben kann...
ein Beispiel mit irgend einem Prozessor X und einem Speicher Y wird mir 
schon helfen...
Sollte jemand irgend einem Code Beispiel mit solche Aufgabe haben, würde 
mich sehr freuen.

mfG.
sandra(sandrametampa@yahoo.fr)
Sandra Sandra wrote:
> es geht hier um einem ATmega32 Prozessor
> der verwendete Speicher ist "internes Flash"

Das ist nicht trivial.
Die Aufgabe ist nicht allgemein in C lösbar, da der C-Standard nicht die 
Architektur eines speziellen MCs kennt.
Es hängt also hautpsächlich von Deinem unbekannten Compiler ab.


Eine Möglichkeit wäre, erstmal einen Bootloader mit API-Call 
reinzubrennen.

Die andere Möglichkeit, durch spezielle Linkeranweisungen die 
Flashroutine in den Bootbereich zu plazieren.


Peter
Sowas steht immer im Datenblatt des Flashspeichers genau beschrieben. 
Die Befehle die an den Speicher geschickt werden müssen musst du halt 
einfach einen Schreibzugriff auf den Flashspeicher machen. Meist muss 
man einfach ein bestimmtes Datum an eine bestimmte Adresse schreiben

Antwort schreiben

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