ling-350279 发表于 2016-9-2 04:11:45

STM32F407+UC/OS3堆栈问题

问题描述:最近调试STM32F407+UC/OS 3操作系统,使用的是IAR的编译系统,启动文件默认设置的STACK大小是0x400,HEAP大小是0x200,仿真器是J_Link,单步运行时出现警告:the stack pointer for stack 'CSTACK'(Currently 0x20003c28) is outside the stack range(0x20004A30~0x20004E30)。
      在启动文件中修改STACK大小,改大或改小STACK数值,只能改变the stack range的0x20004E30这个大小值,现在当前堆栈指针(Currently 0x20003c28)小于起始堆栈,并且仿真程序时,单步运行,中断程序和子任务能够响应,只是出现上述堆栈问题,上述事情如何更改,请大家指教下,谢谢!

无薪税绵 发表于 2016-9-7 08:15:50

这个懂,只能帮楼主加人气了。

sfee2002 发表于 2016-9-7 09:18:06

stack 是负增长的吧

hpdell 发表于 2016-9-17 21:00:18



这个是官网下载的,你看看是否有用 ??!!

高二毛 发表于 2016-10-24 08:28:46

楼上正解,栈是负增长的。另外你如果栈开小了,就开的大一些,跑个操作系统开大一些无所谓的。0X400才1K,貌似小了点儿。

ychlucky 发表于 2016-11-7 13:20:31

:):):):):):):):)

中山无雪 发表于 2016-11-7 21:01:05

查看一下MAP文件,看情况修改一下stack的长度
页: [1]
查看完整版本: STM32F407+UC/OS3堆栈问题