你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【福利三:逢7发帖赢大礼】成功利用STM32H743VI片内SRAM12和DTCM空间(完全胜利)

[复制链接]
donatello1996 发布时间:2026-7-19 17:02
       在上一帖的内容中,我使用外部sct文件的方式来链接STM32H743VI片内的RAM空间,想要利用0x30000000开头的SRAM12区和0x20000000开头的DTCM区,但是并不顺利,缓存数组是强制指定到SRAM12区没错,但是没法生效,使得LVGL相关初始化代码跑不起来。在参考了惠勤致远的厂家例程后,将此问题成功解决,目前已经可以利用STM32H743VI片内SRAM12和DTCM空间了,共计300K出头的空间,将STM32H743VI片内资源进一步充分利用。
6 n6 B8 `  ]) j* v; e 29.JPG
; I5 e: w' V, H3 G% ~* |, a. I       解决方法:使用AC6编译器时,指定缓存内存地址需要用指令:
" F: S9 V+ ~( {% w5 l2 X__attribute__((section(".bss.ARM.__at_0x30000000")));
- F: P: |# S; W# E$ _" ?
; I& {% f  R9 n7 U9 R& x, j3 u只有这样才能被AC6编译器识别到并添加进汇编指令中。另外,SRAM123总计的空间为0x48000大小也就是294912字节,但是这是把SRAM3也算进去的,实际上要扣掉SRAM3的空间,也就是262144字节,所以给buf_1_1分配480*240*2字节就刚刚好:
2 r7 N" ?% i$ A- _' g: `( e 30.JPG 31.JPG 1 E4 y6 M# h" w
LVGL程序正常运行:
+ ?: v& X7 T4 G6 M) F4 ] 32.JPG 33.jpg
/ E$ F8 v. I$ J4 @
* ^$ X; M2 M, Y; I/ x1 @8 WDTCM的空间为131072字节,所以给buf_1_1分配480*100*2字节:. J$ M8 C9 V' @$ c, a  l
34.JPG 3 f; M) J& v% @. T  }+ f
LVGL程序也能正常运行:# W  B% G: {1 s
35.JPG 36.jpg 8 a5 D- @+ _( c  n- ~
完全胜利!
8 ]- c. I* [- Z0 Z" A) w" B+ M* \. d4 f7 g. f' K( m
1.jpg
收藏 评论0 发布时间:2026-7-19 17:02

举报

0个回答

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版