Archiv verlassen und diese Seite im Standarddesign anzeigen : Anfängerfragen zu WinAVR - AVR Studio
BuckWheat
28.01.2010, 11:59
Hallo !
Ich fange gerade an mit WinAVR auf dem AVR-Studio zu programmieren.
Beim Benutzen der Definition "#define F_CPU 8000000" in meinem Programm hat mir der Compiler eine Warnung gegeben. Die Definition F_CPU wurde redefiniert.
Nach einem Blick ins Makefile habe ich gesehen, daß dort eine Definition DF_CPU aus den Projektdaten des AVR-Studios erzeugt und an den Compiler übergeben wird.
Hängen diese Definitionen zusammen DF_CPU=F_CPU ? Wenn ja, wo werden die Definitioen verarbeitet, in einem Headerfile oder im Compiler.
Vielen Dank für Antworten...
Buck
KingTobi
28.01.2010, 12:12
Verarbeitet wird im Headerfile garnichts.
Und DF_CPU und F_CPU sind natürlich nicht gleich.
Die Definition kann auch in irgendeiner "tiefer liegenden" Header definiert sein, hast ja nicht geschrieben um welche Header es geht.
Du kannst schreiben:
#ifndef F_CPU
#define F_CPU 8000000
#endif
Dann dürfte die Warnung weg sein.
Aber dann kannst es haben das F_CPU falsch definiert ist, also musst du es einach neu definieren.
DF_CPU ist die Option, die F_CPU definiert.
"Dxy = z" im Makefile ist das "Gleiche" wie im Quellcode ein "#define xy z".
BuckWheat
28.01.2010, 12:23
Danke für die schnellen Antworten..
@jaecko
so etwas habe ich mir schon gedacht, jetzt ist es "amtlich"
Thx
KingTobi
28.01.2010, 12:23
Ok, wieder was gelernt
oberallgeier
28.01.2010, 13:13
Hi BuckWheat,
... mit ... AVR-Studio ... programmieren ... Compiler ... Warnung ... Die Definition F_CPU wurde redefiniert ...Im AV RStudio gibts in der oberen Leiste einen Button mit einem Zahnrad und dem Quick-Info [Edit Current Configuration Options]. Wenn Du diesen Button nicht siehst, dann in der Statusleiste auf [Projekt] klicken. Es kommt in beiden Fällen dasselbe Fenster [x-dein-file Projekt Options]. Auf dieser ersten Seite gibts in der Mitte ein kleines Eingabefenster, links davon steht "Frequency:". Hier tippst Du die aktuelle Frequenz ein - UND LÖSCHT die Frequenz-#define in Deiner Quelle. Dieses Vorgehen ist eigentlich der Standard (*ggg* - zumindest bei mir).
Dieses ganze, mehrseitige Fenster ist sozusagen das GUI, das beim AV R-Studio den makefile ersetzt. SEHR praktisch !
BuckWheat
28.01.2010, 15:20
@oberallgeier
Jepp..so hab ich es jetzt eingestellt.
thx
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.