堆栈'CSTACK'的堆栈指针位于堆栈范围之外

时间:2014-08-22 11:53:37

标签: c debugging ide stack iar

我正在尝试使用模拟器在IAR嵌入式工作台上执行一些简单的代码。我没有警告或错误地编写了代码,但在调试过程中我得到了这个警告"堆栈的堆栈指针' CSTACK' (当前为0x00000000)超出堆栈范围(0x20000000至0x20001000)"。我的代码甚至无法进行简单的增量操作,我发现它非常奇怪且难以理解。我可以为Google或IAR上的这个问题找到任何正确的解决方案。 有什么想法??

1 个答案:

答案 0 :(得分:2)

Options -> Linker -> Config -> Linker configuration file中,您应该拥有包含以下定义的文件:

  

定义符号 ICFEDIT_region_RAM_start = 0x20000000;
  定义符号 ICFEDIT_size_cstack = 0x1200;

在我的项目中,我的文件名为:

  

STM32F2xx_FLASH.icf