This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Reset Timer_0 Interrupt

Hi!

I wanna reset an Timer0 Interrupt with this Code:

void isr_TIMER0_INT (void) __irq {
T0IR = 1;

// do code
VICVectAddr = 0;
}

But the Problem is, MR0 Interrupt in T0IR won't be resettet. Thus, I'll never receive a 2nd Interrupt.

Has anyone an idea??

Parents Reply Children
  • I don't understand what you mean by resetting the interrupt. T0IR simply tells you what caused the timer 0 irq (mr0-3, cr0-3). Setting T0IR = 1 tells the device that you have acknowledged that a MR0 irq has taken place.

    Setting bit 1 in T0MCR resets the timer back to 0 when you have a MR0 match. This allows you to have another irq the next time the timer = MR0.

    (I assume your referencing a lpc21xx device, else we may be looking at 2 different things)

  • Jeah.

    I know Drew. But when I'm doing T0IR = 1, the processor will do nothing. The Interrupt will not be resettet.