I am using CW 11.1 with DSC 2.7.3 on MC56F83000-EVK. When I call a subroutine from an ISR I get vectored to the following default interrupt routine:
/* misaligned long word access interrupt ($0A) */
#ifndef INT_VECTOR_ADDR_5
#define INT_VECTOR_ADDR_5 misalign
static asm void misalign(void)
{
debughlt
nop
rti
}
#endif
If I do not call the subroutine, the ISR performs correctly. What is the cause of this misaligned long word access interrupt error?
Hi,
Can you post the ISR code which will fire the unaligned ISR?
As a workaround, if the api function you called in ISR takes a long time, I suggest you just set a bool flag in the ISR, in the main while(1), you can poll the flag, if it is set, call the api function, then clear the flag.
Hope it can help you
BR
XiangJun Rong
Having continued to develop the code for other functionality, the misaligned long word acccess has gone away. If it pops up again, I will post the offending code.