www.mikrocontroller.net

Forum: Compiler & IDEs Section im EEPROM anlegen?


Autor: AVRli (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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...

///////////////////////////////////////////////////////////////////////////////
// EEPROM Fix section ist unter Compiler-Opt. festgelegt und begint genau
// 128 Byte vor EEPROM Ende
///////////////////////////////////////////////////////////////////////////////
#define EEMEM_FIX __attribute__ ((section (".eep_fix_section")))
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...

Autor: Richard U. (ronw)
Datum:

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

Autor: Oliver (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Memory Typ: Eeporm

Ob Eeporm ein dem System bekannter Speichetyp ist?

Oliver

Autor: AVRli (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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...

Autor: Stefan Ernst (sternst)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: andi (Gast)
Datum:
Angehängte Dateien:

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

s. Anhang

Autor: Stefan Ernst (sternst)
Datum:

Bewertung
0 lesenswert
nicht 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).

Autor: andi (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.