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

ARM926 Interrupt exception

Note: This was originally posted on 27th August 2009 at http://forums.arm.com

Hi,

I would like to program an interrupt handler for ARM926ej.

According to reference, when CPU is interrupted, it jumps to address 0xFFFF0018 (interrupt vector).

Then, I suppose I have to program a jump instruction to my handler in that address. But I don't know how.

I'm using GNU toolchain.

Thank you very much
Ricardo
Parents
  • Note: This was originally posted on 14th September 2009 at http://forums.arm.com

    Hi again,

    Problem solved. It all was due to branching to relative address. Being in high mem it is quite difficult to branch back to low mem (where ram is).

    It is not possible to load 32 bits constant to register (PC) neither MOV. Then it is difficult to branch back to low mem. I've done it by really ugly code, shifting a constant and adding offset to interrupt handler.

    Thanks
    And any recommendations are welcome. There MUST to be a much more smart solution.

    Ricardo
Reply
  • Note: This was originally posted on 14th September 2009 at http://forums.arm.com

    Hi again,

    Problem solved. It all was due to branching to relative address. Being in high mem it is quite difficult to branch back to low mem (where ram is).

    It is not possible to load 32 bits constant to register (PC) neither MOV. Then it is difficult to branch back to low mem. I've done it by really ugly code, shifting a constant and adding offset to interrupt handler.

    Thanks
    And any recommendations are welcome. There MUST to be a much more smart solution.

    Ricardo
Children
No data