keil 编译STM32F103的程序后RW-DATA 80K远大于片子的RAM(20K),程.....

2019-07-14 17:10发布

问题 1  编译环境 keil v4.73  硬件 STM32F103CB  FLASH:128K ,RAM:20K
程序编译后RW-data 大小为80K还多,程序还可运行,是keil优化的结果吗?
问题2 当添加代码时code 增大,RW-data 减少。当减少代码时code减小,RW-data增大。
这里的代码仅仅是函数没有全局变量,即使我在main()函数的开始定义一个char型的const变量,code增加4个字节,而RW-data减少4个字节。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
7条回答
7762642422d
2019-07-15 16:15
aaa2412 发表于 2018-10-2 12:36
谢谢您的耐心回答,虽然问题没有解决还是谢谢。
图片中的问题是第三个问题,就是在FLASH的绝对地址中定义的两个半字加上const后RO-data增加了78524个字节。然而RW-data减少了78524个字节。

我建议你在编译出的list里面看看这2个变量的存储类型(code?RW-DATA?etc)。
对于指定了绝对地址,又不加const,感觉即占用flash又占用ram。

一周热门 更多>