Keil™, An ARM® Company

Technical Support

RL-ARM: INTERRUPTS ON STR9


Information in this article applies to:

  • RL-ARM All Versions
  • RTX Kernel

QUESTION

I am using the RTX Kernel and I have doubts on how to setup the STR9 interrupt system. Can you give me some hints? Can I use the STR9 library together with RTX applications?

ANSWER

The STR9 has two daisy chained Vectored Interrupt Controllers which allows the direct usage of interrupt functions. For an RTX application it is strongly recommended to avoid a common interrupt handler routine.

The STR9 library can be used together but not the exception handlers of this library. You must ensure that the option Setup Library Exception Handlers is disabled in the STR9 Startup file (symbol LEH_SETUP).

Interrupt functions can be added as C functions using the __irq attribute. You must acknowledge both VIC at the end of each interrupt function as shown in the example below:

__irq void ADC_IRQ_Handler (void) {

  ...              /* ADC Handler Code */

  VIC0->VAR = 0;   /* Acknowledge Interrupt */
  VIC1->VAR = 0;
}

FORUM THREADS

The following Discussion Forum threads may provide information related to this topic.

Last Reviewed: Monday, October 16, 2006


Did this article provide the answer you needed?
 
Yes
No
Not Sure