求助 谁知道单片机堆栈溢出怎么处理呀

2020-01-30 13:51发布

求助 谁知道单片机堆栈溢出怎么处理呀
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
24条回答
jackiezeng
1楼-- · 2020-02-01 03:49
bingbingliang 发表于 2012-8-20 12:50
具体怎么设置堆栈的大小呀

在启动文件中,你找一下,如果你写过汇编语言就知道了,一般前几句话都是设定堆栈大小。
比如说:__user_initial_stackheap

                 LDR     R0, =  Heap_Mem
                 LDR     R1, =(Stack_Mem + Stack_Size)
                 LDR     R2, = (Heap_Mem +  Heap_Size)
                 LDR     R3, = Stack_Mem
                 BX      LR

                 ALIGN

                 ENDIF

                 END

不同的编译环境,不同的单片机是不同的,,你用的是神马型号? 不妨把启动文件上传,看看,
bingbingliang
2楼-- · 2020-02-01 07:56
 精彩回答 2  元偷偷看……
jackiezeng
3楼-- · 2020-02-01 13:23
bingbingliang 发表于 2012-8-20 13:30
我用的是C语言 也可以处理堆栈吗

C语言的启动文件也是汇编语言的,,,你先找找你工程中的启动文件,,,这个不是你自己写,可能是C编译器自己生成的。
sxmilovebb2
4楼-- · 2020-02-01 16:47
if (used_ram < mcu_ram)
  设置编译器stack;
else
  也个熊了;
linucos
5楼-- · 2020-02-01 22:46
bingbingliang 发表于 2012-8-20 11:32
废话 就是因为不知道原因 怎么处理呀

你怎么知道堆栈溢出?
你能听明白别人说什么再”废话“吗?
gyzzg2030
6楼-- · 2020-02-02 03:16
C语言编写程序会有堆栈溢出?你是RAM不够吧?

一周热门 更多>