Zitat Zitat von Siro Beitrag anzeigen
Ich erweitere mal meinen Thread, da es noch unmittelbar dazugehört.

zum Ablegen einer bestimmten Struktur oder Daten, hab ich folgendes probiert:

so kann ich an Speicherstelle 0x07F0 meine Struktur ablegen und auch
gleich initialisieren beim Programmieren des Chips
Ein MemoryDump (zumindest in der IDE) zeigt, dass meine Daten (Konstanten) tatsächlich auch dort gelandet sind
Mit const packt der Compiler (XC8 und XC16) Daten ins Flash, das ist normal. Das tut er auch, ohne daß du eine Adresse angibst. Du mußt nur aufpassen, daß er dir nicht von alleine irgendwelche andere Daten in diese 128 Byte packt.
ich staune grad, ich kann so sogar direkt aus dem Array lesen:
Das folgt aus dem gesagten.
muss das evtl. sogar volatile const sein ? tut zumindest nicht weh.
Doch tut es. Es verhindert, daß Zugriffe auf diese Variable optimiert werden. Und solange du die Daten nicht im Interrupt-Handler änderst, sind sie nicht volatile sondern das Gegenteil: const.

MfG Klebwax