0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

SD的命令和响应

MK米客方德 2024-10-08 15:49 次阅读

一个完整的SD卡操作过程是:主机(单片机等)发起“命令”,SD卡根据命令的内容决定是 否发送响应信息及数据等,如果是数据读/写操作,主机还需要发送停止读/写数据的命令来结束 本次操作,这意味着主机发起命令指令后,SD卡可以没有响应、数据等过程,这取决于命令的 含义。这一过程如下图 所示。:

wKgaomcE4zaAaWTxAACcYWMiFh0336.png

SD卡有多种命令和响应,它们的格式定义及含义在SD协议中有详细介绍,发送命令时主机只能通过CMD引脚发送给SD卡,串行逐位发送时先发送最高位(MSB),然后是次高位这样类推……。

SD卡的命令格式,如下表所示:

wKgaomcE4zaAK72dAAAoqHUpt8Y027.png

SD卡的命令固定为48位,由6个字节组成,字节1的最高2位固定为01,低6位为命令 号(比如CMD16,为10000B即16进制的0X10,完整的CMD16,第一个字节为01010000,即0X10+0X40)。字节2~5为命令参数,有些命令是没有参数的。字节6的高七位为CRC值, 最低位恒定为1。

SD卡的命令总共有12类,分为Class0~Class11,本章,此文仅介绍几个比较重要的命令,

如下表所示:

wKgZomcE4zaALTkBAACExkY6qaY365.pngwKgZomcE4zeARnPxAAEgMaujpaY864.png

上表中,大部分的命令是初始化的时候用的,而表中的 R1、R1b、R2、R3、R6和R7等是SD卡的应答信号。在主机发送有响应的命令后,SD卡都会给出相对应的应答,以告知主机该 命令的执行情况,或者返回主机需要获取的数据,具体场景如下图所示:

wKgZomcE4zaAaUpdAABhPkYE9Wk504.png

SD的响应大体分为短响应48bit和长响应136bit,每个响应也有规定好的格式。R1、R1b、

R3、R6和R7属于短响应,而R2属于长响应,它们具体作用如下表所示。

wKgaomcE4zaATGffAADUhFiMsjE152.png

SD卡的响应因使用接口不同,比如SDIO和SPI接口,它们的响应种类以及响应格式也是 不同。这里以SDIO接口下的R1响应为例,其内容格式如下表所示:

wKgaomcE4zaATYsXAABIeKeKzjs260.png
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6032

    文章

    44513

    浏览量

    632683
  • SD卡
    +关注

    关注

    2

    文章

    559

    浏览量

    63788
  • SD
    SD
    +关注

    关注

    1

    文章

    161

    浏览量

    33639
收藏 人收藏

    评论

    相关推荐

    Linux应急响应命令总结

    Linux应急响应命令总结
    发表于 11-17 09:08 990次阅读

    u-boot命令之EMMC和SD卡操作命令详解

    今天给大家详细的介绍一下u-boot命令之EMMC和SD卡操作的mmc命令使用。希望这篇文章对大家有所帮助。
    发表于 07-12 15:19 4046次阅读

    SD卡的命令格式

    SD卡是否可以在所给电压下工作,如果SD卡可以在指定电压下工作,则它回送CMD8的命令响应字 。如果不支持所给电压,则SD卡不会给出任何
    发表于 07-17 15:06

    使用HSPI与SD卡通信,卡都不会响应初始CMD0设置命令的原因?

    我正在尝试使用 HSPI 与 SD卡通信。无论我做什么,卡都不会响应初始 CMD0 设置命令。我想我发送的命令是正确的,但我从未在 MISO 上看到任何活动。我有: ...现在我没主意
    发表于 05-25 08:25

    SD命令响应超时怎么解决?

    手册看是命令响应超时,命令超时周期为固定值 64 个 SDIO_CK 时钟周期。芯片用的引脚是PC8.9.10.11.12以及PD2,请问这种情况怎么解决啊?
    发表于 09-25 08:31

    sd card cmd2/3没有响应是为什么?

    我现在使用sdio的模式来读写sd卡,cmd8和cmd55acmd41都能正常响应,但是cmd2/3没有响应,发送出去的命令为cmd2:0x42_00000000_4dcmd3
    发表于 09-27 08:02

    SD命令解释

    SD命令共分为12类,分别为class0到class11,不同的SDd卡,主控根据其功能,支持不同的命令集如下:Class0 :(卡的识别、初始化等基本命令集)CMD0:复位
    发表于 08-26 16:34 158次下载

    SD卡的命令格式

    SD卡的命令格式,需要的朋友可以下载来学习。
    发表于 01-06 14:27 0次下载

    51单片机读写SD卡(命令解释)

    51单片机读写SD卡(命令解释)的详细资料
    发表于 09-06 17:33 53次下载

    SD卡与SD卡座电路

    单片机的SDIO接口包含CLK、CMD及4条DAT[3:0]信号线。这6条信号线都是共用总线,即新加入的设备可以并联接入SDIO,达到挂接多个SD卡的目的。SDIO主机是通过命令SD从设备的
    的头像 发表于 08-20 12:39 1.5w次阅读
    <b class='flag-5'>SD</b>卡与<b class='flag-5'>SD</b>卡座电路

    U盘和SD卡高速文件管理控制芯片CH378的辅助命令和USB基本传输命令

    本文档的主要内容详细介绍的是U盘和SD卡高速文件管理控制芯片CH378的辅助命令和USB基本传输命令
    发表于 08-06 08:00 13次下载
    U盘和<b class='flag-5'>SD</b>卡高速文件管理控制芯片CH378的辅助<b class='flag-5'>命令</b>和USB基本传输<b class='flag-5'>命令</b>

    SD NAND 的 SDIO在STM32上的应用详解(上篇)

    单元3.命令通道(重点)4.数据通道五.命令响应1.命令格式2.命令类型3.命令描述4.
    的头像 发表于 11-15 17:08 979次阅读
    <b class='flag-5'>SD</b> NAND 的 SDIO在STM32上的应用详解(上篇)

    SD nand 与 SD卡的SPI模式驱动

    文章目录SDnand与SD卡的SPI模式驱动1.概述2.SPI接口模式与SD接口模式区别2.1接口模式区别2.2硬件引脚2.3注意事项3.SD接口协议3.1命令3.1.1
    的头像 发表于 05-10 17:45 1354次阅读
    <b class='flag-5'>SD</b> nand 与 <b class='flag-5'>SD</b>卡的SPI模式驱动

    SD详细命令描述

    电子发烧友网站提供《SD详细命令描述.doc》资料免费下载
    发表于 10-13 10:22 1次下载
    <b class='flag-5'>SD</b>详细<b class='flag-5'>命令</b>描述

    瀚海微SD NAND存储功能描述(17)命令类d

    以“x”表示的值表示变量项。除了R3类型(见下文)之外的所有响应都受CRC保护。每个命令码字以结束位(总是1)结束。 对于SD存储卡有五种类型的响应。SDIO卡支持额外的R4和R5
    的头像 发表于 08-23 10:40 231次阅读
    瀚海微<b class='flag-5'>SD</b> NAND存储功能描述(17)<b class='flag-5'>命令</b>类d