This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

stack overflow how isnt one...

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...

Parents
  • 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????

Reply
  • 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????

Children
No data