打印
[STM32N6]

全屏显示图片,内存不够?

[复制链接]
271|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主

图片数组如下
const uint8_t gImage_taiyi_800_480[753600] = {...}

编译提示如下,内存不够,找了半天也没找到在哪里定义内存。

使用特权

评论回复
沙发
qintian0303| | 2025-5-6 21:21 | 只看该作者
N6的内存应该是比较足的吧,而且现在的显示一般都用外挂的显存吧,纯靠内存可放不了多少

使用特权

评论回复
板凳
地瓜patch|  楼主 | 2025-5-6 22:50 | 只看该作者
qintian0303 发表于 2025-5-6 21:21
N6的内存应该是比较足的吧,而且现在的显示一般都用外挂的显存吧,纯靠内存可放不了多少 ...

应该是定义了一个图片的空间,没找到在哪里定义的

使用特权

评论回复
地板
远山寻你| | 2025-5-13 12:55 | 只看该作者
在嵌入式系统中,内存(RAMROM)是有限的资源。如果编译器或链接器脚本中分配的内存不足,可能会导致编译失败。

使用特权

评论回复
5
夜阑风雨| | 2025-5-13 13:21 | 只看该作者
STM32CubeIDE中生成并查看汇编代码(Assembly)是调试和优化代码的重要手段,尤其是需要分析底层指令执行、性能瓶颈或验证编译器优化效果时

使用特权

评论回复
6
淡漠安然| | 2025-5-13 13:25 | 只看该作者
代码或数据段过大,如果你的代码或数据段(如全局变量、静态变量、数组等)占用了太多内存,可能会导致内存不足。

使用特权

评论回复
7
一秒落纱| | 2025-5-13 14:00 | 只看该作者
链接器脚本配置错误,链接器脚本(Linker Script)用于定义内存布局和分配。如果脚本配置不当,可能导致内存分配错误。

使用特权

评论回复
8
暖了夏天蓝了海| | 2025-5-13 14:50 | 只看该作者
右键项目Properties C/C++ Build Settings Tool Settings MCU GCC Compiler Miscellaneous。在Other flags中添加以下选项(根据需求选择):生成汇编中间文件(.s):

使用特权

评论回复
9
三生万物| | 2025-5-13 16:05 | 只看该作者
编译器优化不足,未启用编译器优化可能导致生成的代码占用更多内存。

使用特权

评论回复
10
别乱了阵脚| | 2025-5-13 16:32 | 只看该作者
直接输出汇编文件(.s),不进行链接,适合单独分析函数编译结果

使用特权

评论回复
11
夜阑风雨| | 2025-5-13 17:00 | 只看该作者
检查链接器脚本确认链接器脚本(通常是.ld文件)中的内存分配是否合理。确保分配的内存足够容纳代码和数据

使用特权

评论回复
12
淡漠安然| | 2025-5-13 17:10 | 只看该作者
修改配置后,右键项目Clean Project Build Project,确保新配置生效

使用特权

评论回复
13
江河千里| | 2025-5-13 17:51 | 只看该作者
调整内存大小,根据你的芯片内存大小调整LENGTH字段。

使用特权

评论回复
14
远山寻你| | 2025-5-13 18:08 | 只看该作者
st文件:通常位于项目的DebugRelease目录下,与源文件同名但扩展名为.lst.s文件:若使用-S选项,汇编文件会生成在项目的DebugRelease目录中。

使用特权

评论回复
15
光辉梦境| | 2025-5-13 18:10 | 只看该作者
减少全局变量,尽量减少全局变量和静态变量的使用,尤其是大型数组

使用特权

评论回复
16
光辉梦境| | 2025-5-13 18:52 | 只看该作者
-Wa,-adhln="file.lst" 生成混合C代码与汇编的列表文件,包含行号和地址信息。 调试时关联C代码与汇编指令。-S 仅生成汇编代码(.s文件),不进行链接。 分析特定函数的编译结果。-g 生成调试信息(DWARF格式),支持源码级调试。 调试时需要符号表和行号信息。-O2/-Os 启用编译器优化(-O2平衡速度与大小,-Os最小化代码体积)。 优化后分析汇编代码的实际效果。

943776822d89d76d77.png (599 Bytes )

943776822d89d76d77.png

使用特权

评论回复
17
冰春彩落下| | 2025-5-13 18:59 | 只看该作者
启用编译器优化,在编译选项中启用优化(如-O2-Os)以减少代码体积。

使用特权

评论回复
18
一秒落纱| | 2025-5-13 19:00 | 只看该作者
包含C代码行号与汇编指令的对应关系。注释以分号(;)开头,显示源文件和行号。

使用特权

评论回复
19
冰春彩落下| | 2025-5-13 19:10 | 只看该作者
找不到生成的汇编文件主要是未正确配置编译器选项。编译后未清理项目(旧文件可能被覆盖)。

798786822d8eee44ea.png (604 Bytes )

798786822d8eee44ea.png

使用特权

评论回复
20
江河千里| | 2025-5-13 19:49 | 只看该作者
Disassembly视图无内容,调试未正确启动或程序未暂停。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:出一块TI-PLABS-AMP-EVM

1580

主题

14135

帖子

28

粉丝