Wie kombiniert man das Active Record Pattern mit EEPROM- oder Flash-Speicher?

In C oder C++ kann man das Active Record Pattern so anpassen, dass save() und load() direkt auf EEPROM- oder Flash-Speicher zugreifen. Das funktioniert über Low-Level-APIs oder HAL-Funktionen (Hardware Abstraction Layer). Dabei wird typischerweise der Speicherblock einer festen Adresse zugeordnet.

void ConfigRecord::save() {
    eeprom_write(address, reinterpret_cast<uint8_t*>(this), sizeof(ConfigRecord));
}

Wichtig ist, dass Datenstrukturen korrekt gepackt sind (#pragma pack) und auf Speichergrenzen geachtet wird.

com

Newsletter Anmeldung

Bleiben Sie informiert! Wir informieren Sie über alle neuen Beiträge (max. 1 Mail pro Woche – versprochen)