DEVICE: KE06/KEA128 (two examples of each were tested)
To begin, I checked the value of VTOR and it reported the value of '0' for the offset. I took this to mean the table is not offset. So I attempted to load the address value of my IRQ handler routine into that table location. During execution It faulted on that assignment statement into the "DefaultISR," which is simply a loop found in "startup_SKEAZ1284.S."
Here are some of the relevant code bits:
...
...
#define KBI0_IRQ ( * ( volatile uint32_t * ) 0x000000A0 )
...
void __attribute__ ((interrupt)) Handler_IRQ (void) {...}
...
int main(){...
...
KBI0_IRQ = (uint32_t)&Handler_IRQ;
KBI0_IRQ = (uint32_t)Handler_IRQ;
...
It was my impression the vector table was part of code space and not privileged, however I could be wrong. Is there a write protection or boundary issue I'm not aware of? Is this a little/big endian issue? I also tried to write before and after enabling both the KBI module and the NVIC. Thank you for any light you can shed on this situation.
Thanks again,
Tom