Thank you for the proposal, but seems no change at all :(
I have played a litle arround and came if i in a task have a debug print out, it seems to work much better, almost without errors, but do i delete this print out so the task actually is empty i get hard fault error. It is properly not this there is the error, but maybe it can give a hint.
for(;;)
{
result = os_evt_wait_or (0x0001,250);
if (result == OS_R_TMO)
{
printf(''BT Timed Out\n\r'');
}
}
It is the printf line i comment out to not have it working :(
Just a propoal; I didn't use an STM32F2 device. Try to run it at lower frequency (like 24 MHz) and check if you get the same behavior.HerzlichMCU Lüfter
Beside from checking for errors in your applications, please also check the stack size for the tasks in your RTX configuration file. Which version of the RTX you are using?
There is shown the fault window of keil, and the call stack is shown... Maybe not as detailed as the other version for the stack. I can see what the error flags are, but then i am still clueless, i am maybe not to experienced in this area :( Kasper
PSR = 4100000b). So the problem happen inside SVC which is inside the OS.
This also match the stacked PC value (
i.rt_get_first) which is
i.rt_get_first.
From CFSR it seems to indicate the fault is caused by a imprecise bus fault (BFAR is no use in this case).
It might be possible that somehow an IRQ handler could have corrupt the kernel stack, so an exception trace might be useful. (to see which exception/interrupt take place before the fault).