We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Hi, I'm using Keil MCB2300 evaluation board and Real view compiler. I'm trying to port ucos-II onto this. The timer tick successfully executes if there is no OSTimeTick call inside it. Once we include code for multitasking (enable OSTimeTick function in timer0 isr), then the control goes to "Prefetch abort state". It stays there and never returns. Anyone has any solution for this? How to recover from such abort states? In the normal program run, should control never go to these abort states?
Thanks in advance,
Please try to set MAMTIM to 7 and check if this has any influence on the problem.
Hi, The changing of MAMTIM setting did not help much. Instead I disabled MAM setup in configuration wizard. That led to some improvement. Moreover I noticed that after this assembly instruction was executed, the control was going to prefetch abort. LDMFD SP!, {R0-R12, LR, PC}^
So, I've excluded the ^ symbol and rewritten the entire instruction in separate lines. This seems to have temporarily solved the problem of prefetch abort.
But I'm noticing that a timer that I've enabled stops running after some time. I observe that interrupts are and timer are enabled but the prescaler is reduced to 0. What could be this problem?
Please suggest.
Thanks,