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

Call Stack adresses except variable names - slow debug

Hello,

when I try to debug my project in uVision V4.74.0.22 and the project stops at breakpoint it really slows down (one step in debug about 5s) because of huge amount of adresses in "Call Stack + Locals" window. It looks like this:

Name ................ Location/Value...... Type
CFoo::doFoo ...... 0x0800A6D4 ... void f()
CFoo1::doFoo1 .. 0x20005AA0 ... param - struct SFoo
//Debug mode duplicates this functiontions Call Stack window
CFoo::doFoo ...... 0x0800A6D4 ... void f()
CFoo1::doFoo1 .. 0x20005AA0 ... param - struct SFoo
. .
. //And a lot of this adresses - no name, no type
0xE7AD1922
0x0BE291B2
0x65346294
0xC0072AE0
. .

When I go to callee or caller code of one the adress it shows Disassembly

MOVS r0,r0

But i think the disassembly is not important - more likely is that Stack is somehow corrupted It starts to slow down when I call

NVIC_Init();

-> It duplicates last two functions and add a lot of strange adresses to Call Stack Window.

Does somebody know where to start to resolve this problem?

Thank you very much.

  • Hello MatÄ›j,

    Rows of

    MOVS r0,r0
    

    can be displayed when the device attempts to execute code at addresses that were never defined in any image.

    In debug mode, check Peripherals => Core Peripherals => Fault Reports, to see if there is a fault. One or two checkmarks should normally appear at the bottom of the dialog for breakpoints/stops, but any other checks are faults. If you see one, you may be able to find the offending line, using Application Note 209, if the device is a Cortex-M3+:
    http://www.keil.com/appnotes/files/apnt209.pdf

    For faster debugging, I recommend upgrading to MDKv5.21a and using a USB high-speed debug adapter, like the ULINKpro.

    Thanks,
    Zack