Gast
#622802
Hallo ich wollte ein einfaches Programm schreiben, zum testen ob ich den Timer richtig verwende. Mein Prg: #include <avr/io.h> // Ein/Ausgangsbelegung, Definitionen #include <stdint.h> // AVR Integer #include <avr/interrupt.h> // Interrupt Routinen, Definitionen #ifndef F_CPU #define F_CPU 18432000 #endif // Module definieren ISR(TIMER1_COMPA_vect); ISR(__vector_default) /* Falls ein nicht programmierter Interrupt auftritt nichts tun damit kein Reset ausgelöst wird */ { // hier sollte der Code stehen } int main (void) { // Ein-/Ausgänge initialisieren // Datenrichtung DDRD |= (1 << DDD3) // Ausgänge // //PORTD &= ~(1 << PD3); PORTD |= 3; <--------------- hier ist der Fehler // Timer, 16 bit, Compare Match Modus, Vorteiler 1024 TCCR1B |= (1 << WGM12) | (1 << CS10) | (1 << CS12); OCR1A = 16000; // Vergleichsregister (~1 s bei Vorteiler 1024) TIMSK |= (1 << OCIE1A); // enable OutputCompareA Interrupt für Timer1 while(1); return 0; } ISR(TIMER1_COMPA_vect) { PORTD ^= (1 << PD3); // LED toggeln } Wenn ich nun compiliere bekomme ich folgenden Fehler: Build started 6.8.2007 at 14:39:51 avr-gcc.exe -I"C:\..\Programme\WinAVR\avr\include" -mmcu=atmega 8 -Wall -gdwarf-2 -DF_CPU=18432000UL -Os -fsigned-char -MD -MP -MT main.o -MF dep/main.o.d -c ../main.c ../main.c: In function 'main': ../main.c:29: error: called object '8' is not a function make: *** [main.o] Error 1 Build failed with 1 errors and 0 warnings... Das von AVR Studio generierte Makefile befindet sich im Anhang