SDIO命令及响应

目录

SDIO命令及响应

SDIO命令

1. 命令格式

2. 命令类型

3. 命令描述

响应


SDIO命令及响应

SDIO命令

SD命令由主机发出,以广播命令和寻址命令为例,广播命令是针对与SD主机总线连接的所有从设备发送的,寻址命令是指定某个地址设备进行命令传输。

1. 命令格式

SD命令格式固定为48bit,都是通过CMD线连续传输的,数据线不参与。

SD命令的组成如下:

  • 起始位和终止位:命令的主体包含在起始位与终止位之间,它们都只包含一个数据位,起始位为0,终止位为1。
  • 传输标志:用于区分传输方向,该位为1时表示命令,方向为主机传输到SD卡,该位为0时表示响应,方向为SD卡传输到主机。
  • 命令主体内容:命令主体内容包括命令、地址信息/参数和CRC校验三个部分。
    • 命令号:它固定占用6bit,所以总共有64个命令(代号:CMD0~CMD63),每个命令都有特定的用途,部分命令不适用于SD卡操作,只是专门用于MMC卡或者SD I/O卡。
    • 地址/参数:每个命令有32bit地址信息/参数用于命令附加内容,例如,使用广播命令时没有地址信息,这32bit用于指定参数;而使用寻址命令时,这32bit用于指定目标SD卡的地址。
    • CRC7校验:长度为7bit的校验位用于验证命令传输内容正确性,如果发生外部干扰导致传输数据个别位状态改变将导致校准失败,也意味着命令传输失败,SD卡不执行命令。

2. 命令类型

SD命令有4种类型:

  • 无响应广播命令(bc),发送到所有卡,不返回任务响应;
  • 带响应广播命令(bcr),发送到所有卡,同时接收来自所有卡响应;
  • 寻址命令(ac),发送到选定卡,DAT线无数据传输;
  • 寻址数据传输命令(adtc),发送到选定卡,DAT线有数据传输。

另外,SD卡主机模块系统旨在为各种应用程序类型提供一个标准接口。在此环境中,需要有特定的客户/应用程序功能。为实现这些功能,在标准中定义了两种类型的通用命令:特定应用命令(ACMD)和常规命令(GEN_CMD)。要使用SD卡制造商特定的ACMD命令如ACMD6,需要在发送该命令之前无发送CMD55命令,告知SD卡接下来的命令为特定应用命令。CMD55命令只对紧接的第一个命令有效,SD卡如果检测到CMD55之后的第一条命令为ACMD则执行其特定应用功能,如果检测发现不是ACMD命令,则执行标准命令。

3. 命令描述

下表列出了SD卡部分命令信息,更多详细信息可以参考SD简易规格文件说明,表中填充位和保留位都必须被设置为0。

SDSC地址以字节为单位,SDHC地址以块为单位。

响应

        响应由SD卡向主机发出,部分命令要求SD卡作出响应,这些响应多用于反馈SD卡的状态。基本特性如下:

  • SDIO总共有7个响应类型(代号:R1~R7),其中SD卡没有R4、R5类型响应。特定的命令对应有特定的响应类型,比如当主机发送CMD3命令时,可以得到响应R6。
  • 与命令一样,SD卡的响应也是通过CMD线连续传输的。
  • 根据响应内容大小可以分为短响应和长响应。短响应是48bit长度,只有R2类型是长响应,其长度为136bit。

各个类型响应具体情况如下表:

SDIO CMD8命令是用于发送SD卡接口版本的命令。它的响应参数包含了SD卡对CMD8命令的回复信息。下面是对CMD8命令响应参数的解释: - CMD8命令CMD8是一条SDIO指令,用于向SD卡发送查询接口版本的命令。它的格式为: - 命令索引:8位,值为8。 - 命令参数:32位,包含了命令的参数信息,如电压范围和检查模式。 - CRC校验:7位,用于校验命令索引和命令参数。 - 响应参数:CMD8命令响应参数包含了SD卡对该命令的回复信息。它的格式为: - 响应字节1(R1):8位,包含了SD卡对CMD8命令的回复状态。 - 响应字节2-4(R2-R4):24位,包含了额外的信息,如供电电压范围。 响应字节1(R1)的解释如下: - Bit 7(IDLE):表示SD卡是否处于空闲状态。 - Bit 6(ERASE_RESET):表示是否发生了擦除操作的复位。 - Bit 5(ILLEGAL_CMD):表示接收到了不支持的命令。 - Bit 4(CRC_ERR):表示接收到的命令的CRC校验错误。 - Bit 3(ECC_FAIL):表示内部错误检测/纠正(ECC)校验失败。 - Bit 2(ADDR_ERR):表示SD卡未能找到命令所需的地址。 - Bit 1(PARAM_ERR):表示命令的参数错误。 - Bit 0(CMD_OK):表示命令执行成功。 响应字节2-4(R2-R4)的解释取决于具体的SD卡规范和版本。这些字节可以包含供电电压范围、检测模式等信息。 注意:CMD8命令响应参数的具体解释可能会因SD卡的规范和版本而有所不同。以上解释仅供参考,请参考相关的SD卡规范文档获取更详细和准确的信息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

竹烟淮雨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值