硬汉嵌入式论坛

 找回密码
 立即注册
查看: 1271|回复: 7
收起左侧

[STM32H7] 在程序中创建里了两个大 double 类型数组,长度为 16000,数组初始化后存入常量数据,编译以后出现空间不足问题,需要怎么处理

[复制链接]

3

主题

16

回帖

25

积分

新手上路

积分
25
发表于 2024-10-8 17:26:10 | 显示全部楼层 |阅读模式
我使用的是 STM32H7B0 的板子,申请未初始化空间是不会出现该类问题,但是初始化存入常量数据后就会出现空间不足的问题。在程序中创建里了两个大 double 类型数组,长度为 16000,数组初始化后存入常量数据,编译以后出现空间不足问题,需要怎么处理。我尝试了百度查到的方法,但是都不管用,还麻烦遇到过该类问题的麻烦指教一下,谢谢!
1.png
回复

使用道具 举报

4

主题

126

回帖

138

积分

初级会员

积分
138
发表于 2024-10-8 19:39:41 | 显示全部楼层
16KB*8=128KB,两个也才256KB,STM32H7B0 的SRAM是够的,你得看SRAM用了那些,通过sct文件分配一下就可以了
回复

使用道具 举报

11

主题

56

回帖

89

积分

初级会员

积分
89
发表于 2024-10-9 09:18:18 | 显示全部楼层
初始化存入常量数据
,需要初始化的应该存在flash里面,flash不够吧
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117564
QQ
发表于 2024-10-9 09:42:46 | 显示全部楼层
H7B0标注的只有128KB的Flash,实际上也是有2MB容量Flash的,可以用起来的

牛,测试STM32H7B0竟然也有2MB容量的内部Flash空间可供使用
https://forum.anfulai.cn/forum.p ... 0883&fromuid=58
(出处: 硬汉嵌入式论坛)
回复

使用道具 举报

3

主题

16

回帖

25

积分

新手上路

积分
25
 楼主| 发表于 2024-10-9 11:18:45 | 显示全部楼层
turnip 发表于 2024-10-8 19:39
16KB*8=128KB,两个也才256KB,STM32H7B0 的SRAM是够的,你得看SRAM用了那些,通过sct文件分配一下就可以了

好的,我看一下怎么做处理,这块还不是很了解
回复

使用道具 举报

3

主题

16

回帖

25

积分

新手上路

积分
25
 楼主| 发表于 2024-10-9 11:20:38 | 显示全部楼层
eric2013 发表于 2024-10-9 09:42
H7B0标注的只有128KB的Flash,实际上也是有2MB容量Flash的,可以用起来的

牛,测试STM32H7B0竟然也有2MB ...

我看了这个教程,但是现在我编译都过不去,我需要怎么修改才能编译成功啊,这个方法我再了解了解看看
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117564
QQ
发表于 2024-10-9 11:33:35 | 显示全部楼层
剑心v 发表于 2024-10-9 11:20
我看了这个教程,但是现在我编译都过不去,我需要怎么修改才能编译成功啊,这个方法我再了解了解看看

修改这里到2MB

2345.png
回复

使用道具 举报

3

主题

16

回帖

25

积分

新手上路

积分
25
 楼主| 发表于 2024-10-9 16:31:02 | 显示全部楼层
好的,谢谢,我尝试一下
回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2025-8-14 18:23 , Processed in 0.043605 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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