Gast
#1703902
Hallo Zusammen, ich wiederhole den gesternrigen Post. Ich benutze ein ATmega32 /STK600. Ich möchte anhand der Timer2 (8bits timer) meine LEDs bei 1HZ umschlaten. Aber der nichts. Die LEDs bleiben standig an. Außerdem, habe ich auch nicht richtig verstanden, was der ich der Werte für die OCR2 für den vergleich mit den TCNT2 einstellen soll. Meine Rechnungen 8000000/1024= 7,8KHZ 7800/256= 30 Overflows/s. Wie komme ich auf 1Hz? wer kann mich da weiterhelfen? In dem ISR soll nur was da ist, in der Funktion stehen. Ich habe mir überlge mit ASSR und ORC2 was einzustellen , kapiere da nicht so viel. hier der code: #include <avr/io.h> #include <util/delay.h> #include <inttypes.h> #include <avr/interrupt.h> ISR(TIMER2_COMP_vect) { PORTB^=0xFF;//bitweise XOR } //bei 1hz void main (void) { DDRB = 0xFF; // Set D as output port // Clear Timer on compare match / Timer Clock = system clock / 1024 TCCR2 = (1<<WGM21)|(1<<CS22)|(1<<CS21)|(1<<CS20); //WGM21 control the counting sequence of the counter // (CL_2.0) TIFR = OCF2; // compare match occurs between Timer/counter2 und data in OCR2 // (CL_2.1) TIMSK = 1<<OCIE2; // Enable Timer 2 Output Compare Match Event Interrupt OCR2 = 0x03; // Set Output Compare Value to 10 (Compare with the Timer/Counter to generate Wave forms) sei(); while(1); } danke Axel