IAR Compiler Anweisungen

Gast #263230
Lesenswert?
• ▲
▼
Angenommen ich habe irgendwo im Quellcode z.B. ein
        #define HALLO 5

Gibt es jetzt eine Compileranweisung ähnlich #ifdef um zu fragen, wie
groß HALLO ist. Also irgendwie so
#if (HALLO > 5)
#define HERBERT
#endif


Ich hoffe ihr versteht was ich meine.


Vielen Dank für eure Antwort
Michael
Gast #263231
Lesenswert?
• ▲
▼
Du kannst die Abfrage ganz genau so durchführen.

Hier ein kurzes Beispiel wie man die Compilerdirektiven nutzen kann:

#if ((UART_BAUDRATE == 4800)||(UART_BAUDRATE == 9600)||(UART_BAUDRATE
== 19200)||(UART_BAUDRATE == 115200))
  #define UART_DIVISOR_LOW
_GET_LOW_BYTE(((XOS2C_CLKIN_KHZ*OS2C_PLL_MULTIPLIER*1000)/OS2C_SYSCLR_DI 
VIDER)/(16*UART_BAUDRATE))
  #define UART_DIVISOR_HIGH
_GET_HIGH_BYTE(((XOS2C_CLKIN_KHZ*OS2C_PLL_MULTIPLIER*1000)/OS2C_SYSCLR_D 
IVIDER)/(16*UART_BAUDRATE))

#else
  #error !! wrong baudrate for UART !!
#endif
Gast #263232
Lesenswert?
• ▲
▼
Vielen Dank!

Und dann hätte ich noch eine Frage, wenn ich mir mit #define ein Makro
definiert habe, wie kann ich dann innerhalb dieses Makros dann
Compileranweisungen machen. Bei mir geht das nämlich leider nciht.

Gruß
Michael

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 20 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.