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

__irq instead __fiq

Hi,
I am having the same error as this person described in this thread:
http://www.keil.com/forum/15818/

Well it has been answered there, but my question is If i will use __irq instead of __fiq, how would the compiler know that this ISR is for fiq,
since we use the same __irq directive with vectored IRQs and non vectored IRQs as well.

Regards,
Salman

Parents
  • Your startup file reacts to the IRQ or FIQ event and decides where to jump. It will look a bit different dependingo on processor. This code decides if it should jump directoy to one of your ISR or if it should pick up the vector address to know where to jump.

    The __irq keyword just tells the compiler to produce a different prologue/epilogue, i.e. what processor registers to save, and what to do when leaving the function. It does not control who is calling the function.

Reply
  • Your startup file reacts to the IRQ or FIQ event and decides where to jump. It will look a bit different dependingo on processor. This code decides if it should jump directoy to one of your ISR or if it should pick up the vector address to know where to jump.

    The __irq keyword just tells the compiler to produce a different prologue/epilogue, i.e. what processor registers to save, and what to do when leaving the function. It does not control who is calling the function.

Children
No data