This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

如何设置IAR的 Stack sizes 和 Heap sizes

你好!

我用的编译软件是IAR,单片机是CC1110Fx / CC1111Fx 。我在调试程序时,程序老是跑飞,说是堆栈溢出,现象如下。

可是我不管怎么改大堆栈,都没法解决问题。我的程序是有不少全局变量,一是程序需要,二是变量也不多,肯定达不到溢出的情况。

想问一下,怎么把这个问题解决掉啊?

Sat Aug 29 17:22:22 2015: The stack 'IdataStack' is filled to 100% (128 bytes used out of 128). The warning threshold is set to 90.%
Sat Aug 29 17:22:22 2015: The stack 'XdataStack' is filled to 100% (2815 bytes used out of 2815). The warning threshold is set to 90.%
Sat Aug 29 17:22:22 2015: The stack pointer for stack 'XdataStack' (currently XData:0xFFFF) is outside the stack range (XData:0xF000 to XData:0xFAFF)

  • IAR里面Linker的xcl文件里面可以改Heap/Stack size

    // ---------------------------------------------------------
    // Configuation
    //

    // -----------------------------------------------
    // Stack and heap sizes
    //

    // Uncomment for command line use
    //-D_STACK_SIZE=80
    //-D_DATA16_HEAP_SIZE=80