Hallo,
also ich häng jetz mal mein Beispiel für den mega8 ms timer an.
läuft nur timer0 über so wird in die timer isr gesprungen. hoffe ich konnt dir helfen. Ach übrigens 0x05 ist 0b00000101.Code:#include <avr/io.h> #include <avr/interrupt.h> #define F_CPU 16000000 #define timer (256-F_CPU/64/1000) int ms; ISR(TIMER0_OVF_vect) //Timer Interrupt Vector {TCNT0 = timer; ms++; } int main(void) { //Ports Init DDRC |= (1<<PORTC3); //Timer Init TIMSK |= (1<<TOIE0); //Timerinterrupt freigeben TCCR0 |= (1<<CS00) | (1<<CS01) | (!(1<<CS02)); //Timer Prescaler = 64 sei(); //Interrupts global aktivieren //main Schleife for (;;) { if(ms >=100) {PORTC ^= (1<<PORTC3);ms = 0;} } }
mfg franz







Zitieren

Lesezeichen