
先来一张中文参考手册中的系统架构图,可以看到,STM32H7系列包含两个SDMMC控制器:SDMMC1和SDMMC2。![]() 在芯片手册中的架构图能够更直观地看出来: ![]() SDMMC内部集成一个IDMA,H7系列有很多总线主设备,包括DMA1、DMA2、BDMA、MDMA、DMA2D,还包括IDMA和以太网DMA这种专用DMA。 ![]() 查看系统架构图和关于总线主设备的描述: SDMMC1和SDMMC2相比,和SRAM1、SRAM2都没有构成总线矩阵,只能访问AXI SRAM区域的内存。 ![]() ![]() 所以我们的使用IDMA进行SD卡的访问时,buffer必须放在AXI SRAM上面。 观察SRAM的分配,可以知道AXI SRAM分布在从0x24000000开始的512K区域上: ![]() ![]() 那么我们第一种情况,在编译器上只描述一部分内存DTCM: ![]() 在进行变量定义的时候强制指定地址:
可以看到指定的两个数组已经存在了AXI内存上,其他的都是DTCM内存上: ![]() 如果我们的工程配置上直接分配好了内存区域,这里使能了DTCM和AXI-SRAM内存: ![]() 这里我们并没有强制指定地址:
但是因为SRAM2的size要大一些,所以优先分配到SRAM2: ![]() 所以也是被分配在了AXI内存区域上。 ———————————————— 版权声明:小盼你最萌哒 |
高手入门STM32总结+学习步骤
STM32开发五大误区,新手别傻傻信了
【STM32】总线架构
没学过51单片机,能否零基础学STM32?
STM32电机控制用什么型号?高级定时器功能详解与芯片选型指南
STM32H7R/S+TouchGFX:解锁智能家电沉浸式体验新维度
什么是STM32? STM32与ARM有什么关系? STM32能做什么?
STM32 不同时钟频率有什么不同的影响
《STM32H7R/S信息安全线上课程》学习笔记+安全存储
《STM32H7R/S信息安全线上课程》学习笔记+时域隔离,片内与片外存储器保护