Forum: Compiler & IDEs Section im EEPROM anlegen?


von AVRli (Gast)


Lesenswert?

Hallo! :-)

Ich möchte gerne von den 2kb EEPROM Speicher meines ATmega's die letzten 
128 Byte immer als Extra Speicherstelle behandeln auch wenn sich vorn 
mal was ändert.

Dazu habe ich mir eine Section angelegt...

In den Memorysettings habe ich eine neue angelegt.
Memory Typ: Eeporm
Name: .eep_fix_section
Adress (HEX): 0x780

Im Quelltext dann das angegeben...

1
///////////////////////////////////////////////////////////////////////////////
2
// EEPROM Fix section ist unter Compiler-Opt. festgelegt und begint genau
3
// 128 Byte vor EEPROM Ende
4
///////////////////////////////////////////////////////////////////////////////
5
#define EEMEM_FIX __attribute__ ((section (".eep_fix_section")))
6
char str_fix[64] EEMEM_FIX = "Zeichenkette mit fester Position.";



Wenn ich nun in den EEPROM nach Daten suche (JTAG), finde ich str_fix 
nicht :( alles FF außer meine Variablen die im normalen EEMEM Bereich 
liegen, werden so initialisiert wie es sein soll.

Was hab ich übersehen?


Gruß AVRli...

von Richard U. (ronw)


Lesenswert?

Hast du den EEPROM auch entsprechend programmiert? Das Aufspielen des 
Programms (.hex) hat da noch keinen Einfluss.

von Oliver (Gast)


Lesenswert?

>Memory Typ: Eeporm

Ob Eeporm ein dem System bekannter Speichetyp ist?

Oliver

von AVRli (Gast)


Lesenswert?

Puhh...

also wenn ich in den str_fix Bereich schreibe dann ist das auch da drin!
Ich glaubte er würde den Wert initialisieren. Tut er aber nicht, 
Holzweg. :-)

Dann ist alles richtig... :D

Danke!
AVRli...

von Stefan E. (sternst)


Lesenswert?

AVRli wrote:

> Ich glaubte er würde den Wert initialisieren. Tut er aber nicht,
> Holzweg. :-)

Dazu müsstest du den Inhalt dieser Section aus dem ELF-File extrahieren, 
und in den µC programmieren.

von andi (Gast)


Angehängte Dateien:

Lesenswert?

> Dazu müsstest du den Inhalt dieser Section aus dem ELF-File extrahieren,
> und in den µC programmieren.

s. Anhang

von Stefan E. (sternst)


Lesenswert?

andi wrote:

> s. Anhang

Das alleine reicht allerdings nicht, denn das vom Studio generierte 
Makefile erzeugt das entsprechende Hex-File gar nicht (da keine 
Standard-Section).

von andi (Gast)


Lesenswert?

das stimmt allerdings. Ich nehme aber meistens mein eigenes Makefile. 
Das ist ja kein grosses Ding so eins zu schreiben. Hier im Forum gibts 
genug Projekte, wo man sich das Makefile abgucken kann.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.