atxmega128a1 Flash Page beschreiben

OP #2372779
Lesenswert?
• ▲
▼
Hallo,
Ich scheitere derzeit daran, eine komplette 512 Byte Page der flash zu 
beschreiben.  Der nachfolgende Code schreibt in die ersten 2 Byte auf 
jeder Page 0x00. Ich verstehe nicht,warum.

void ReadAndWriteFlash(void)
{
  /* Assume success until proven otherwise. */
  bool success = true;
  PMIC_SetVectorLocationToBoot();
  /* Fill the entire application section of the flash memory with bogus 
data */
  for (uint32_t address = 0; address < APP_END; 
address+=FLASH_PAGE_SIZE) {

       /* Load flash buffer with data */
    ClearFlashBuffer(); //Clear the flash buffer first to avoid data 
corruption
    for (uint16_t i = 0; i < FLASH_PAGE_SIZE; i += 2) {
      uint8_t lowByte = i;
      uint8_t highByte = i+1;

      LoadFlashWord((uint32_t)i, ((uint16_t) highByte << 8) | lowByte);
      SP_WaitForSPM();
      PORTE.OUTTGL = 0x01;
    }

    /* Perform erase-page write. */
     EraseWriteApplicatioPage(address);
OP #2376160
Lesenswert?
• ▲
▼
Hallo,

hat niemand eine Idee oder Erfahrungen mit diesem code, der von Atmel 
zur Verfügung gestellt wurde? Mir ist rätselhaft, warum dieser Code nur 
das erste Word jeder 512 Byte Page beschreibt. Und dann noch mit 0x00...

Habe den Code im Rahmen eines Bootloaders in der Bootloader Section 
getestet.

Gruss
JSC

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.