电子工程师技术服务社区
公告
登录
|
注册
首页
技术问答
厂商活动
正点原子
板卡试用
资源库
下载
文章
社区首页
问答
单片机开发过程中如何准确地计算stack用量?
已解决
73482
个问题
已帮助
5993
位优秀工程师
单片机开发过程中如何准确地计算stack用量?
cb40d88cb80ae349
2019-01-22
浏览量:1089
尤其是低成本单片机一般内存较小,可能只有几K,给stack多了可用内存就少了,给stack少了肯定会崩,如何才能准确地计算stack用量进而合理地分配stack空间大小呢?
显示全部
嵌入式
关注问题
写回答
0
0
收起
我来回答
上传资料:
选择文件
文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
drepa
栈用量无法准确测量只能粗略估计,你就算一下你程序种开辟了多少个局部变量,函数嵌套层数会不会过大,这些都是影响栈区用量的因素。
发布于
2019-01-22
举报
评论 0
0
0
其他答案
数量:
9
张少峰
一般编译工具会在编译结束后,显示输出stack的大小
比如 keiliar这些都会在编译结束后有ram使用情况
发布于
2019-01-22
举报
评论 0
0
0
我是假管贴胸小助手
程序写完编译的时候编译程成功就有详细的占用情况。
发布于
2019-01-22
举报
评论 0
0
0
yhj416606438
编译结束会有内存使用量,后面两个相加就是ram量,根据ram大小分配
发布于
2019-01-22
举报
评论 0
0
0
jn1989
生成MAP文件可以查看,但是不是非常准。
发布于
2019-01-23
举报
评论 0
0
0
@曲终人散@
可以先分配多一点,然后实际运行过程中统计最大使用量,然后就设置这个最大量为栈大小
发布于
2019-01-31
举报
评论 0
0
0
快没时间了
通过查看MAP文件,来分析。内存的使用情况
发布于
2019-02-20
举报
评论 0
0
0
厉害企鹅
可以在编译后查看map文件中的位置大小定义
发布于
2019-02-20
举报
评论 0
0
0
chen0000009
stack没法精确计算的,都是动态分配,一般取个经验值就差不多
发布于
2019-02-23
举报
评论 0
0
0
序缘阿斌
可以直接根据你的stack计算,直接用动态分配的方式
发布于
2019-02-27
举报
评论 0
0
0
相关问题
问题达人
换一批
文章
知识经验换现金
换一批
单片机开发过程中如何准确地计算stack用量?
写回答
关注问题
×
我要举报该内容,理由是:
内容质量差:
内容太水、伸手党
垃圾广告信息:
广告、招聘、推广、测试内容等
偏离问答主题:
与技术无关、讨论类
与社区已有内容重复:
违规内容:
色情、暴力、血腥、敏感信息等
不友善内容:
人事攻击、挑衅辱骂、恶意行为
以上选项都不是: