Servus,
jeder kennt ja bestimmt Makros wie z.B.
1 | #define LED_PORT PORTB
|
2 | #define LED_AN(NUMMER) (LEDPORT |= (1 << NUMMER))
|
Jetzt würde ich gern ein Makro schreiben, dass mir einen Port oder
Register auf einen bestimmten Wert setzt, z.B.
1 | #define WRITE_REGISTER(REGISTER, VALUE) (REGISTER = VALUE)
|
Soweit kein Problem. Funktioniert (Der Nutzen sei mal dahingestellt).
Wenn ich aber Value erst berechnen muss, wie krieg ich dann so ein Makro
hin?
Beispiel:
1 | WRITE_REGISTER(PORTA, var1 | var2);
|
Sowas nimmt er mir nicht.
Ich denke dass die Lösung nicht so schwer ist, nur steh ich grad aufn
Schlauch. Klammern um den Ausdruck bringen auch nichts.
Kann mir wer weiterhelfen?
Grüße,
lex