SD卡读写模块的操作命令

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SD卡读写模块的操作命令相关的知识,希望对你有一定的参考价值。

参考技术A

命令 名称 说明 CHECK_EXIST 检测模块及SD卡 测试与SD卡模块通讯是否正常,SD卡模块中是否已插入SD卡。 GET_DISK_SIZE 查询SD卡容量查询 获取SD卡容量以及可用空间信息 DISK_FORMAT 格式化SD卡 对SD卡进行格式化 GET_DIR_FIRST 查询第一目录项 获取当前目录下的第一个目录项 GET_DIR_NEXT 查询下一目录项 获取当前目录下的下一个目标项 MAKE_DIR 创建目录 在当前目录下创建一个子目录 REMOVE_DIR 删除目录 在当前目录下删除一个子目录 ENTER_DIR 进入目录 在当前目录下进入一个子目录 BACK_TO_ROOT 回根目录 当前目录回到根目录 MAKE_FILE 创建文件 在当前目录下创建一个文件 REMOVE_FILE 删除文件 在当前目录下删除一个文件 FILE_OPEN 打开文件 在当前目录下打开一个文件 FILE_CLOSE 关闭文件 关闭已打开的一个文件 FILE_GET_LEN 查询文件长度 查询已打开的一个文件长度 FILE_READ 读文件内容 读取已打开文件的内容(可连续读) FILE_CLEAR 清空文件内容 清空已打开文件的内容 FILE_APPEND 追加文件内容 在已打开文件的未尾追加内容 RENAME_DIR 更改目录名称 更改当前目录下一个子目录的名称 NOTICE_CUR_TIME 更新时间 更新模块的当前实时时间 FILE_SEEK 文件定位 移动已打开文件的当前读取位置 ENTER_SLEEP 进入睡眠 让模块进行功功耗状态

STM32使用SDIO进行SD卡读写-了解SD总线,命令的相关介绍

本章的介绍内容

一、SD总线,传输的流程

二、SD总线里面的命令和响应的数据格式

三、SDIO进行传输时,使用4根数据线的传输情况

四、CMD表格,和SD卡通讯所需的命令介绍

 

 

一、SD总线,传输的流程

下面来看一下SD bus(总线)

提醒一下,SDIO通讯,里面就有CMD线和DAT线,分别是发送命令和数据传输

技术图片

上面是模拟一些操作情况,大致就是命令发出后(CMD线),SD卡有没有做出响应(CMD线),SD卡需不需要传送数据(DAT线),或是主机要不要发送数据(DAT线)

 

二、SD总线里面的命令和响应的数据格式

 技术图片

 

 

三、SDIO进行传输时,使用4根数据线的传输情况

如果使用4条数据线,传输的方式如下图(如果只是1条数据线,就只能一个一个派对慢慢传输了)

技术图片

 

 

四、CMD表格,和SD卡通讯所需的命令介绍

说明CMD表格之前,要先说明一下CMD分为两种,特定应用命令(ACMD)常规命令(GEN_CMD)

如果要使用SD卡制造商特定的命令,则需要在发送特定命令前,先发送CMD55,有点复合指令的味道

下面是所有CMD,挑一些比较常用的,有加上中文说明,resp是响应,分R1~R7,图片在更下方,SD卡没有R4、R5响应的只有R2类型是长响应

技术图片

技术图片

 

以上是关于SD卡读写模块的操作命令的主要内容,如果未能解决你的问题,请参考以下文章

STM32使用SDIO进行SD卡读写-了解SD总线,命令的相关介绍

STM32L476应用开发之五:数据保存与SD卡操作

U-Boot命令之MMC(EMMC和SD卡)操作命令

uboot下 EMMC和SD卡操作命令

Arduino ESP8266 Micro SD卡读写操作实例

怎么把sd卡改成读写模式?