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.
i have a C167CR, the compiler ist u3v.
When i use the simulator or the debugger, my application is running perfectly. But when i boot my applicaton from the flash, i have after some secounds a stack overflow (i know it, because i use trap.c). But when i write in the initialisation the value 0xAAAA in a part of the stack space (stack space is from 0xF60E-0xFA02), and read it and send it to my pc in traps .c when i have a "stack overflow", then i can see the 0xAAAA i wrote!!!!!!!! --> it look for my, if i haven't realy a stack overflow...
what can i do? i have no idea at the moment...
Did you check the linker map file that all used memory is physically also available in your target system?
What kind of debugging are you using in the hardware?
now i have checked the linker map file (*.M66) again. All used memory is physically aviable. (I use a C167CR-LM, with a IRam from 0xF600-0xFCDE, the stack area is from 0xFA00-0xFBFF (i have checked it with a bigger stack area but the problem is the same))
I'm debbugging about the serial interface with the Monitor.
What possibility exist, how a stack overflow can happen, when the value of the stack Pointer is between the STKOV and STKUN? When i make the stack area smaller (to small) i have a stack overflow normaly when SP < STKOV????