eMMC初始化命令发送流程

本文档详细介绍了通过stm32单片机驱动eMMC芯片的初始化命令发送流程,包括CMD0进入IDLE状态,CMD1激活初始化,CMD2获取CID,CMD3获取RCA,CMD9获取CSD以及CMD13获取状态寄存器的过程,旨在为开发者提供参考。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

eMMC初始化命令发送流程

通过stm32单片机驱动eMMC芯片,在完成项目的过程中,命令发送和响应很令人头疼,所以整理出一篇文档供各位开发者参考。
初始化命令发送流程
1、第一步发送CMD0,让芯片进入IDLE状态。

/* CMD0: GO_IDLE_STATE */
  errorstate = SDMMC_CmdGoIdleState(hmmc->Instance);
  if(errorstate != HAL_MMC_ERROR_NONE)
  {
   
   
    return errorstate;
  }

2、发送CMD1,发送主机容量信息,激活卡的初始化过程。

/* SEND CMD1 APP_CMD with MMC_HIGH_VOLTAGE_RANGE(0xC0FF8000) as argument */
    errorstate = SDMMC_CmdOpCondition(hmmc->Instance, eMMC_HIGH_VOLTAGE_RANGE);
    if(errorstate != HAL_MMC_ERROR_NONE)
    {
   
   
      return HAL_MMC_ERROR_UNSUPPORTED_FEATURE;
    }

3、发送CMD2,获取卡的CID信息。

 /* Send CMD2 ALL_SEND_CID */
  errorstate = SDMMC_CmdSendCID(hmmc
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值