Forum: Mikrocontroller und Digitale Elektronik direktes schreiben geht, über #define nicht


von svan s. (svanschu)


Lesenswert?

Aloha,

ich hab die avr/io.h includiert. Dadurch ist OCR1AL bekannt.

In einer Datei hab ich stehen:
1
#define pwmAl OCR1AL;

Diese Headerdatei ist ebenfalls eingebunden und bekannt. Jetzt hab ich 
im Code stehen:
1
pwmAl = 255;

Dann bringt er mir den Fehler:
../main.c:76:8: error: expected expression before '=' token

Wenn ich aber
1
OCR1AL = 255;
 schreibe frist der Compiler es.

Wo liegt da der Fehler/Unterschied?
von Andreas B. (andreasb)


Lesenswert?

svan schu schrieb:
>
1
#define pwmAl OCR1AL

Am Simikolon?

Das gehört da nicht hin, # = Präprozessor = Kein Semikolon (ausser es 
soll eins eingesetzt werden beim define)

mfg Andreas
von Peter II (Gast)


Lesenswert?

svan schu schrieb:
> Wo liegt da der Fehler/Unterschied?

> #define pwmAl OCR1AL;
das ; ist zuviel, dabei kommt dann

OCR1AL; = 255;

raus.
von PittyJ (Gast)


Lesenswert?

Das Semikolon hinter
#define pwmAl OCR1AL;
muss weg.

#define's werden nie mit Semikolon abgeschlossen.
von Christoph M. (maturant)


Lesenswert?

#define pwmAl OCR1AL

ohne Strichpunkt am Ende, dann sollts gehen.
von svan s. (svanschu)


Lesenswert?

OMG dass weiß ich doch eigentlich -.- Ich glaub das ist ein Anzeichen, 
dass ich mal Pause machen sollte ...
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.