Timer Interrupt ATMega 16

Gast #553493
Lesenswert?
• ▲
▼
Hm...

Ich wäre für einen Tipp dankbar, warum die Interrupt-routine nicht 
durchlaufen wird. Oder wird gar am Ende der Timer nicht mal gestartet?
1
#include <avr/io.h>
2
#include <avr/interrupt.h>
3
#define F_CPU 8000000UL
4

5

6

7
int main (void)
8
{
9
DDRD=0xE2;
10
PORTD|=(1<<7);      // LED an
11
sei();        // global IR enable
12
TCNT0=0x04;      // Timer preload
13
while(1){
14
TCCR0|=((1<<0)|(1<<2));   // presacaler 1024, run
15
    }            
16
}
17

18

19
ISR(TIMER0_OVF_vect)
20
{
21
TCNT0=0x04;           // btimer preload 4
22
PORTD^=(1<<7);      // toggle LED
23
}
24

25

26
// Timer müsste alle 32 msec die ISR auslösen

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren