Forum: Compiler & IDEs Studio 4.08, GCC 3.3.1 + C-structs


von Martin Raffelsieper (Gast)


Lesenswert?

was mache ich nur falsch?

so hab ich die Struktur definiert:

typedef struct { u08  status; u08  except; } st_otto;
volatile st_otto otto;

Studio zeigt auch an, dass es eine Struktur ist:

otto    {...}

ich kann die Struktur aber nicht aufblättern, d.h. ich kann die
Strukturelemente nicht sehen.
Muss ich denn noch irgendeine Debug-info generieren lassen oder wo
liegt mein fehler??

So sieht derzeit mein Compileraufruf aus:
avr-gcc -g -Wall -O2 -mmcu=atmega64 -c -o ..\O\main.o main.c

und so der Linker-Aufruf:
avr-gcc ..\O\main.o -Wl,-Map=..\M\reader.map, -o..\M\reader.elf
--cref -mmcu=atmega64

und so die coff-Konvertierung:
avr-objcopy --debugging -O coff-avr --change-section-address
.data-0x800000 --change-section-address .bss-0x800000
--change-section-address .noinit-0x800000 --change-section-address
.eeprom-0x810000 ..\M\reader.elf reader.cof


wer kann mir da helfen

Gruß Martin

von Fiffi (Gast)


Lesenswert?

Hallo Martin,

ich verwende AVR-Studio 4.08 und WinAVR 20030913 und das Makefile aus
dem Verzeichnis "sample".

Ich definiere einen Struktur z.B. so:

#define u08 unsigned char

struct DCF_TIME_STRUCT {
  u08 second;
  u08 minute;
  u08 hour;
  u08 date;
  u08 weekday;
  u08 month;
  u08 year;
} volatile dcf_time;


Nach dem "make all" und "make extcoff" öffne ich die ".cof" Datei
im AVR-Studio und kann die Struktur "aufblättern".


Gruß

Fiffi

von Joerg Wunsch (Gast)


Lesenswert?

struct debugging funktioniert nur mit dem AVR »extended« COFF format
(»make extcoff« bei WinAVR).

von Martin Raffelsieper (Gast)


Lesenswert?

vielen Dank, Fiffi + Jörg,

aber wie geht das genau? muss ich da die coff-Konvertierung ändern oder
was ist ext coff?


so sieht sie bei mir zur Zeit aus:

avr-objcopy --debugging -O coff-avr --change-section-address
.data-0x800000 --change-section-address .bss-0x800000
--change-section-address .noinit-0x800000 --change-section-address
.eeprom-0x810000 ..\M\reader.elf reader.cof

gruß martin

von Joerg Wunsch (Gast)


Lesenswert?

-O coff-ext-avr

von Martin Raffelsieper (Gast)


Lesenswert?

Danke - jetzt klappts!

von Thomas Motz (Gast)


Lesenswert?

Hm, jetzt weiß ich auch, warum es bei mir nicht geklappt hat:
Bitfelder werden leider (noch) nicht richtig aufgelöst.

Hilft da nur umschreiben der Software?

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.