stm32f030的RAM去哪了?

2019-10-15 20:04发布

本帖最后由 yzk 于 2017-1-1 23:49 编辑

stm32f030的RAM去哪了?
STM32F030F4
应该为4Kram.
自己的代码用了不到1K,其中有一个double数组超过70左右就不行,70*8才几百个字节,加上其他变量也不过几十个字节,难道是库函数给用了3k多?还是别的原因?
同样代码,改成IAR就没事.不过IAR也怪,总共4096字节RAM,我把数组定义为800,这样这个数组就有6k,但编译器都没报错,改成900后报错.
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
1条回答
FreeRTOS
1楼-- · 2019-10-16 01:49
本帖最后由 FreeRTOS 于 2017-1-2 14:50 编辑

你忽略了单片机的栈空间和堆空间都会占据一部分RAM,打开链接脚本看看吧
如果是IAR那么链接脚本就是icf类型的文件,MDK的话就直接在启动文件里面修改就可以了
如果还有问题,那么直接打开编译后生产的map文件看看到底哪个地方占用了RAM
一般我都会把单片机的堆空间设为0,栈空间设为1~2kB



一周热门 更多>