教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 教育文库 >

STM32外设SDIO应用之SD卡

来源:网络收集 时间:2026-02-09
导读: SD卡命令集 STM32外设SDIO应用之SD卡 一、SD原理及内部结构 SD卡(Secure Digital Memory Card)是一种为满足安全性、容量、性能和使用环境等各方面的需求而设计的一种新型存储器件,SD卡允许在两种模式下工作,即SD模式和SPI模式。1、SD卡内部及引脚示意图

SD卡命令集

STM32外设SDIO应用之SD卡

一、SD原理及内部结构

SD卡(Secure Digital Memory Card)是一种为满足安全性、容量、性能和使用环境等各方面的需求而设计的一种新型存储器件,SD卡允许在两种模式下工作,即SD模式和SPI模式。1、SD卡内部及引脚示意图:

2、SD模式及SPI模式引脚名称

Pin 1

Pin 2

Pin 3

Pin 4

Pin 5

Pin 6

Pin 7

Pin 9

Pin 8

SD卡命令集

3、Micro SD引脚示意图及模式区别:

二、SD模式

1、STM32的SDIO适配器原理框图:

SD卡命令集

3、SD 通用命令命令索引 CMD0 CMD2 CMD3 CMD4 类型 bc bcr bcr bc 参数 [31:0] 填充位 [31:0] 填充位 [31:0] 填充位 [31:16] DSR [15:0] 填充位 响应 格式 R2 R6 缩写 GO_IDLE_STATE ALL_SEND_CID SEND_RELATIVE_ ADDR SET_DSR 说明 重置所有卡为空闲状态 要求所有卡发送 CID 号 (任何连 在总线上的卡都必须响应) 要求卡发送一个新的相对地址 (RCA) 规划所有卡的 DSR 使卡在备用和传输状态或者编 程和断开状态之间切换。 在这两 种情况下, 当接收到的相对地址 与自己的相同时卡被选中, 不同 时卡取消选中,而相对地址是 0 CMD7 ac [31:16] RCA [15:0] 填充位 R1b SELECT/DESELEC T_CARD 时,所有卡都不被选中,之后主 机可能会执行如下操作: 1、使用其它的相对地址来选中 卡 2、重新发送命令 3 更改卡的相 对地址为 0,再发送命令 7,参 数相对地址为 0 选中该卡 [31:12] 保留 CMD8 bcr [11:8] 电源电压 [7:0] 检验模式 CMD9 CMD10 CMD12 CMD13 ac ac ac ac [31:16] RCA [15:0] 填充位 [31:16] RCA [15:0] 填充位 [31:0] 填充位 [31:16] RCA [15:0] 填充位 [31:16] RCA [15:0] 保留 R2 R2 R1b R1 SEND_CSD SEND_CID STOP_TRANSMISS ION SEND_STATUS GO_INACTIVE_ STATE R7 SEND_IF_COND 发送 SD 存储卡的接口条件,包 括主机支持的电压范围及询问 卡是否支持。 保留位应当设置为 “0” 寻址卡并让其发送它的特殊数 据寄存器(CSD) 寻址卡并让其发送识别号 (CID) 强制卡停止

传输 寻址卡并让其发送状态寄存器 的数据 使被寻址的卡进入不活跃状态, 该命令用在主机明确想要去激 活某张卡 如果是标准容量 SD 存储卡,该 命令为随后的块操作命令(读、 写及上锁)设定块大小(单位为 CMD16 ac [31:0] 块大小 R1 SET_BLOCKLEN 字节) 。 块大小默认为 512 字节。 只有当该命令是 CSD 所允许时, 才是一个合法的内存访问命令。 如果卡是高容量 SD 存储卡,使

CMD15

ac

-

SD卡命令集

用该命令不会影响内存的读写 命令, 块大小总是固定的 512 字 节。该命令会影响卡上锁 / 解锁 命令。 在这两种情形下, 如果块大小被 设置超过 512 字节, 卡将会设置 BLOCK_LEN_ERROR 位 如果是标准容量 SD 存储卡,该 命令会读取由 SET_BLOCKLEN CMD17 adtc [31:0] 数据地址 R1 READ_SINGLE_B LOCK 命令所设置大小的块。 如果卡是高容量 SD 存储卡,读 取的块大小固定位 512 字节, 不 受 SET_BLOCKLEN 命令影响 CMD18 adtc [31:0] 数据地址 R1 READ_MULTIPLE _BLOCK 使卡连续传输数据块到主机, 直 到被停止传输命令中断。 块大小 的详细说明同上 如果是标准容量 SD 存储卡,该 命 令 会 写 由 SET_BLOCKLEN CMD24 adtc [31:0] 数据地址 R1 WRITE_BLOCK 命令所设置大小的块。 如果卡是高容量 SD 存储卡,读 取的块大小固定位 512 字节, 不 受 SET_BLOCKLEN 命令影响 CMD25 CMD27 adtc adtc [31:0] 数据地址 [31:0] 填充位 R1 R1 WRITE_MULTIPLE _BLOCK PROGRAM_CSD 连续写数据块到卡, 直到被停止 传输命令中断。 块大小的详细说 明同上 对 CSD 中可编程的位编程 如果卡有写保护功能, 该命令设 置指定组的写保护位。 写保护特 CMD28 ac [31:0] 数据地址 R1b SET_WRITE_PROT 性设置在卡的特殊数据区 (WP_GRP_SIZE) 。高容量 SD 存储卡不支持该命令 CMD29 ac [31:0] 数据地址 R1b CLR_WRITE_PRO T SEND_WRITE_ PROT ERASE_WR_BLK_ START ERASE_WR_BLK_ END ERASE LOCK_UNLOCK 如果卡有写保护功能, 该命令清 除指定组的写保护位。高容量 SD 存储卡不支持该命令 如果卡有写保护功能, 该命令要 求卡发送写保护位的状态。 高容 量 SD 存储卡不支持该命令 设置第一个擦除组的地址 在连续的擦除范围内, 设置最后 一个擦除组的地址 擦除先前选择的数据块 用来设置/重置密码或对卡上锁/ 解 锁 。 数 据 块 的 大 小 由

CMD30

adtc

[31:0] 写保护数据的 地址

R1

CMD32 CMD33 CMD38 CMD42

ac ac ac adtc

[31:0] 数据地址 [31:0] 数据地址 [31:0] 填充位 [31:0] 保留

R1 R1 R1b R1

SD卡命令集

SET_BLOCK_LEN 命令设置。 保留位应当设置为“0” CMD55 ac [31:16] RCA [15:0] 填充位 R1 APP_CMD 指示卡下一个命令是应用相关 命令而不是一个标准命令 在通用或应用相关命令中, 或者 用于向卡中传输一个数据块, 或 者用于从卡中读取一个数据块。 如果是标

准容量 SD 存储卡,数 CMD56 adtc [31:1] 填充位 0 读/写 据 R1 GEN_CMD 块 的 大 小 由 SET_BLOCK_LEN 命令设置。 如果卡是高容量 SD 存储卡,数 据块的大小固定位 512 字节。 当 读/写位为“1”时,主机从卡读 取数据,为“0 ”时写数据到卡 里

4、SD 应用命令命令索引 类型 参数 响应 格式 缩写 说明 定义用于数据传输的数据线宽 ACMD6 ac [31:2] 填充位 [1:0] 数据线宽度 [31:0] 填充位 R1 SET_BUS_WIDTH 度( ‘00’表示 1 位, ‘10’表示 4 位) 。 允许的数据线宽度由 SCR 寄存器给出 ACMD13 ACMD18 adtc R1 SD_STATUS 返回 SD 状态 预留给 SD 安全应用 返回已写块的数量(未出错) 。 如果 WRITE_BL_PARTIAL 是 ACMD22 adtc [31:0] 填充位 R1 SEND_NUM_WR_ BLOCKS ‘0’ , ACMD22 的单位总是 512 字 节 。 如 果 WRITE_BL_PARTIAL 是‘1’ , ACMD22 的单位是写命令执行 时的数据块大小 [31:23] 填充位 [22:0] 块数量 [31] 保留 30 HCS(OCR[30]) ACMD41 bcr [29:24] 保留 [23:0] 供电电压窗口 (OCR[23:0]) R3 SD_SEND_OP_CO ND SET_WR_BLK_ ERASE_COUNT 在写数据前设置预写块的数量 (用于更快的多块写命令) 。默 认为‘0’ (一个写数据块) 预留给 SD 安全应用 预留给 SD 安全应用 预留给 SD 安全应用 发送主机的容量支持信息 (HCS)到被访问的卡,并利用 CMD 线询问其工作条件寄存器 (OCR)中的内容。当卡接收到 SEND_IF_COND 命令时,HCS 变得有效, 保留位应当设置为 0。 CCS 位 将 被 设 置 成 对 应

ACMD23 ACMD25 ACMD26 ACMD38

ac -

R1 -

SD卡命令集

注:R1b与R1格式相同,但可以选择在数据线上发送一个繁忙信号。收到这些命令后,依据收到命令之前的状态,卡可能变为繁忙。 主机在收到此响应时应当检测忙状态。

SD卡命令集

R7中可接受的电压范围定义如下:

6、部分命令详解

CMD8用于初始化符合物理规范2.00版本的SD存储卡。当卡处于空闲状态时,CMD8才是有效的。该命令有两种功能:

a.电压检测:

检测卡是否能在主机提供的电压下工作

b.扩充现有的命令及响应

CMD8能通过重新定义某些现有命令的保留位,增加其新的功能。ACMD41就是被这 样被 …… 此处隐藏:3882字,全部文档内容请下载后查看。喜欢就下载吧 ……

STM32外设SDIO应用之SD卡.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/1813193.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)