OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2799|回复: 3

stm32407ZET6芯片编译内存不足问题

[复制链接]

4

主题

8

帖子

0

精华

新手上路

积分
27
金钱
27
注册时间
2019-9-5
在线时间
15 小时
发表于 2019-9-5 17:09:43 | 显示全部楼层 |阅读模式
1金钱
硬件用的是正点原子的探索者stm32f407ZET6开发板,官方例程编译正常,内存情况如下:Program Size: Code=160024 RO-data=20808 RW-data=1444 ZI-data=1058628  
用的自己的硬件(和例程用的芯片一样)编译增加变量 char temp[1024];前的内存信息:Program Size: Code=281968 RO-data=84736 RW-data=11632 ZI-data=946024;

增加之后编译出现内存不足的现象,
..\OBJ\VER_HMI_2019YEAR_1.0: Error: L6406E: No space in execution regions with .ANY selector matching ott2001a.o(.data).
..\OBJ\VER_HMI_2019YEAR_1.0: Error: L6406E: No space in execution regions with .ANY selector matching gt9147.o(.data).
..\OBJ\VER_HMI_2019YEAR_1.0: Error: L6406E: No space in execution regions with .ANY selector matching ft5206.o
上面的是增加变量后报的错。
下面内存信息是增加变量 char temp[1024];前的信息:Program Size: Code=281968 RO-data=84736 RW-data=11632 ZI-data=946024;
我这边自己的RW-data+ZI-data比正点原子官方例程的还小,为什么就报了内存不够了呢。
请各位大佬们看看,谢谢

最佳答案

查看完整内容[请看2#楼]

堆栈设置大点,或者使用内存管理,给定义的数组申请内存
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

21

主题

2205

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
5140
金钱
5140
注册时间
2014-8-26
在线时间
1317 小时
发表于 2019-9-5 17:09:44 | 显示全部楼层
堆栈设置大点,或者使用内存管理,给定义的数组申请内存
回复

使用道具 举报

4

主题

8

帖子

0

精华

新手上路

积分
27
金钱
27
注册时间
2019-9-5
在线时间
15 小时
 楼主| 发表于 2019-9-9 09:00:36 | 显示全部楼层
login_FAE 发表于 2019-9-5 18:48
堆栈设置大点,或者使用内存管理,给定义的数组申请内存

谢谢回复。我这个问题找到了,提示内存不足是因为内存管理的内存太大了,导致可以使用的内存变小,就出现内存不足的现象。这个RW-data+ZI-data的大小显示通过修改内存管理大小也会相应的改变。
回复

使用道具 举报

8

主题

185

帖子

0

精华

新手上路

积分
47
金钱
47
注册时间
2019-7-15
在线时间
47 小时
发表于 2019-9-9 10:46:56 | 显示全部楼层
考虑使用外部内存,增加内存管理。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-16 10:07

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表