[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [avr-gcc-list] Issue with interrupt handler on Atmel Mega 8
From: |
Jerome Kerdreux |
Subject: |
Re: [avr-gcc-list] Issue with interrupt handler on Atmel Mega 8 |
Date: |
Wed, 2 Nov 2005 00:03:48 +0100 |
On Tue, 1 Nov 2005 17:52:57 +0100
Jerome Kerdreux <address@hidden> wrote:
> I'm trying to use the timer 0 on a mega 8. Everything works fine,
> (I mean, i can see the timer TCNT0 incrementing) but when I want
> to route the interrupt to an handler, I get a infinite reset.
>
>
> Here a snipset of the code (full code, is attached)
>
> SIGNAL(SIG_OVERFLOW0)
> {
> uptime ++;
> return 0;
> }
>
> void inittimer()
> {
> // 1024 prescaler
> sbi(TCCR0,CS02);
> cbi(TCCR0,CS01);
> sbi(TCCR0,CS00);
>
> // set the interrupt handle
> sbi(TIMSK,TOIE0);
> uptime = 0;
> }
I check out the vector table with avr-objdump -S, and I get something
like this:
00000000 <__vectors>:
0: 12 c0 rjmp .+36 ; 0x26
2: 2b c0 rjmp .+86 ; 0x5a
4: 2a c0 rjmp .+84 ; 0x5a
6: 29 c0 rjmp .+82 ; 0x5a
8: 28 c0 rjmp .+80 ; 0x5a
a: 27 c0 rjmp .+78 ; 0x5a
c: 26 c0 rjmp .+76 ; 0x5a
e: 25 c0 rjmp .+74 ; 0x5a
10: 24 c0 rjmp .+72 ; 0x5a
12: 23 c0 rjmp .+70 ; 0x5a
14: 22 c0 rjmp .+68 ; 0x5a
16: 21 c0 rjmp .+66 ; 0x5a
18: 20 c0 rjmp .+64 ; 0x5a
1a: 1f c0 rjmp .+62 ; 0x5a
1c: 1e c0 rjmp .+60 ; 0x5a
1e: 1d c0 rjmp .+58 ; 0x5a
20: 1c c0 rjmp .+56 ; 0x5a
22: 1b c0 rjmp .+54 ; 0x5a
24: 1a c0 rjmp .+52 ; 0x5a
As you can see, vector 10 (timer0 overflow) go to the bad_interrupt.
Somebody with an idea ?
Bye Bye..