Dann mach mal ein Update. In irgendeiner Version ist eine fehlerhafte util/delay.h enthalten, die um den Faktor 4 zu langsam ist.Ich programmiere mit AVR Studio 5.
Dann mach mal ein Update. In irgendeiner Version ist eine fehlerhafte util/delay.h enthalten, die um den Faktor 4 zu langsam ist.Ich programmiere mit AVR Studio 5.
Geändert von sternst (17.01.2012 um 20:40 Uhr)
MfG
Stefan
Hi,
AVR-Studio 5 ist up to date und der Fehler ist auch in der 4 vorhanden. Komischer weise geht es auf dem Xmega128A1 ohne Probleme. Fast der selbe Programmcode. Dort läuft es richtig, auf dem Mega 328P nicht.
thx Filzlaus
Unser Wissen ist ein Tropfen, unser Unwissen ist wie ein Ozean.
Sir Isaac Newton
Das F_CPU wird nach dem Inkludieren von util/delay.h definiert. Wenn trotzdem beim Compilieren keine Meldung kommt, dann bedeutet das, dass eine F_CPU-Definition bereits über das Makefile "reinkommt". Ist das auch 8000000?Code:#include <AVR/io.h> #include <util/delay.h> #ifndef F_CPU #define F_CPU 8000000UL /* Quarz mit 8 Mhz */ #endif
MfG
Stefan
Damit delay.h funktioniert mußt Du die Optimierung einstellen, -Os.
Mach das mal.
Schau mal unter Fehler oder so ähnlich ob da warnungen sind, die werden nicht automatisch angezeigt.
Hi,
ich habe mal nachgeschaut. Externes Makefile ist abgeschaltet.
Aber wie vorhergesagt gibt es beim Copilieren eine Warnung:
Witzig ist nur, dass ich in einem anderen PRogramm den gleich Kram bei nem Programm mit nem Xmega stehen habe, alsoWarnung 1 #warning "F_CPU not defined for <util/delay.h>" c:\program files (x86)\atmel\avr studio 5.0\avr toolchain\bin\../lib/gcc/avr/4.5.1/../../../../avr/include/util/delay.h 89 3 Blinker
und da gehts super. Noch irgend jemand ein Tip wieso ich diese Warnung bekomme?#include <avr/io.h>
#include <util/delay.h>
// Define default CPU frequency (2 MHz), if this is not already defined.
#ifndef F_CPU
#define F_CPU 32000000UL
#endif
thx Filzlaus
Unser Wissen ist ein Tropfen, unser Unwissen ist wie ein Ozean.
Sir Isaac Newton
Lesezeichen