stm32H743 SD卡SDIO接口驱动需要注意的几个问题

  使用CubeMX生成的代码,具体吧如何生成,想必差不多都知道。

1、 USE_SD_TRANSCEIVER 设为0

在这里插入图片描述

2、硬件流控制使能

在这里插入图片描述

3、ACMD41指令

在这里插入图片描述
发送ACMD41指令时,SDMMC_MAX_VOLT_TRIAL不要设置太大,设为2100。

4、PowerON之后需要延时一定时间

在这里插入图片描述

5、SDMMC1_D0引脚必须设置为上拉

因为SD卡初始化阶段是单数据线,需要SDMMC1_D0引脚线作为应答线。

6、等待SD卡响应指令1,即Resp1,修改为如下

static uint32_t SDMMC_GetCmdResp1(SDMMC_TypeDef *SDMMCx, uint8_t SD_CMD, uint32_t Timeout)
在这里插入图片描述

7、查询SD卡状态时,增加如下代码

在这里插入图片描述
还有很多细节未注意到,了解的朋友,可以互相学习一下,我记录下来。

猜你喜欢

转载自blog.csdn.net/niu_88/article/details/104683359