C30 Compiler Bitfeld mit fester Adressierung

Gast #1137359
Lesenswert?
• ▲
▼
Hallo,

im Thread vorher wurde mir erklärt wie ich mit dem C30 C-Compiler(16Bit 
PIC24F) ein Bitfeld deklariere.

Jetzt habe ich eine weitere Problematik, bei der ihr mir hoffentlich 
helfen könnt.

Es wird in meinem Programm eine feste Adressierung benötigt,
deswegen gehe ich wie folgt vor:
1
UWORD eineVariable __attribute__ ((address(0x800))); //auf Adresse 800hex

wie kann ich jetzt ein Bitfeld festadressieren?

habe folgendes Probiert, das hat der Compiler aber abgewiesen:
1
struct bar {
2
  unsigned char A:1;
3
  unsigned char B:1;
4
  unsigned char C:1;
5
};
6
struct bar y __attribute__ ((address(0x899 ));

Danke euch schonmal im Vorraus!!!

Gruß
CManiac
Gast #1137406
Lesenswert?
• ▲
▼
Habe nur eine generelle Frage,

da ich mich gerade in die Geschichte mit den Compilerdirektiven von dem 
GCC einarbeite (habe vorher auf 8051 Basis [Keil] programmiert).

Wenn ich das über define mache, dann kann ich aber die Variable nicht 
ins Watchfenster übernehmen, richtig?

Würdest du, es generell mit define Anweisungen machen, oder über die 
__attribute (adress) Anweisung???

Der Nachteil von define wäre wohl, das der Compiler es nicht überwacht, 
da man direkt adressiert, oder?

Danke schonmal vorab :-)

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