I’m using the V4.2.0 ARM7_LPC2000 port of the FreeRTOS and have a almost working system with 5 tasks (including the Idle task) using cooperative task switching. My problem is I consistently get an undef irq occurring which resets the system. If I break the system at the point the undef handler is executed the call stack is only one function deep. The position it seems to have jumped from to the undef handler is consistent but not meaningful. (Possibly looks like the stack has been corrupted?) This position in the code normally executes fine and is very simple.
I’ve looked for stack overflows for the tasks and cannot seem to see any. I’ve also tried to reduce my use of pointers to the bare minimum and the ones I must use I’ve checked over very carefully. Does anyone have any ideas to what this bug might be?
Thanks in advance.