Forum: Compiler & IDEs Device-Typ mit #ifdef abfragen


von Matthias (Gast)


Lesenswert?

Kann man im eigenen Programm den CPU-Typ abfragen, welchen man bei 
DEVICE in der AVR-Studio Projektkonfiguration einstellt. Finde den 
#define Bezeichner nicht. Im Tutorial hab ich es nicht gefunden oder 
überlesen.

von Stefan E. (sternst)


Lesenswert?


von Mehmet K. (mkmk)


Lesenswert?

1
#if defined (__AVR_ATmega324P__)
2
  blablabla
3
#else 
4
  #error "falscher MCU selektiert"
5
#endif

Die Bezeichnungen der verschiedenen MCU's kannst Du in io.h nachschauen.
Direkt aus dem Programm heraus geht es nur, indem du die Signature 
ausliest und auswertest.
Z.Bsp. so:
1
FLASH.signature_0 = boot_signature_byte_get(0x0000);
2
FLASH.signature_1 = boot_signature_byte_get(0x0002);
3
FLASH.signature_2 = boot_signature_byte_get(0x0004);

von Martin T. (mthomas) (Moderator) Benutzerseite


Lesenswert?

Matthias schrieb:
> ... Im Tutorial hab ich es nicht gefunden oder
> überlesen.

Eher letzteres. Prinzip ist im avr-gcc-Tutorial erläutert:
http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial#Zugriff_auf_Register
Man kan sich bei eigenen Fallunterscheidungen an avr/io.h (avr-libc) 
orientieren.

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.