C18 pragma romdata

Gast #2608334
Lesenswert?

Hallo C18 User,
1
#pragma romdata eeprom_section = 0x1FF
2
rom uint8_t v0;
3
rom uint8_t v1;
4
rom uint32_t v2;
5
#pragma romdata
6

7
#pragma romdata eeprom_section = 0x2FF
8
rom uint8_t w0;
9
rom uint8_t w1;
10
rom uint32_t w3;
11
#pragma romdata

gibt
Error [1050] section address permitted only at definition

diese Zeile ist das Problem
#pragma romdata eeprom_section = 0x2FF

ohne Adresse 0x2FF geht Code durch den Compiler
Wahrscheinlich liegen die w-Variablen direkt nach v-Variablen.
Sprich die Sektionen werden zusammengefasst.

Ich portiere ein altes Programm und will die alten Speicherorte
beibehalten (um nicht versehentlich anderen Code zu brechen)

Wie kann ich in C18 die Variablen unterschiedliche Adressen zuweisen?
Wäre euch echt dankbar. Auch längere Suche hat leider nichts ergeben.

Gruße
Martin

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren