简述SD卡的工作原理(四)
简述SD卡的工作原理
功能
SD卡是存储卡,它的功能就是存储。
分类
SD卡按容量分类,可以分为3类:SD卡、SDHC卡、SDXC卡,如下:
容量 |
命名 |
简称 |
0~2G |
Standard Capacity SD Memory Card |
SDSC或SD |
2G~32G |
High Capacity SD Memory Card |
SDHC |
32G~2T |
Extended Capacity SD Memory Card |
SDXC |
硬件结构
SD卡外形和接口图如下图所示:
驱动SD卡工作的接口是SPI 或者 SDIO 口,引脚分布如下:
主机与SD卡的硬件连接图:
工作原理
要驱动SD卡工作,主要涉及两个步骤。
第一个步骤是SD卡的识别过程。
第二个步骤是对SD卡进行读写过程,即主机控制器和SD卡之间进行数据传输的过程。
要使SD卡能正常工作,一是要给SD卡供给稳定的电压,二是要SD卡按用户规定的方式工作。这两项工作的实现,都是主机控制器通过给SD卡发送控制命令来实现的。
主机(SDIO控制器)要驱动SD卡工作,要使用许多的命令,包括应用层命令ACMD 和 通用命令 CMD. 主机(SDIO控制器)把命令发送给SD卡,SD卡会作出回应,这里的回应叫做响应,响应命令分为6类,分别是R1、R1b、R2、R3、R6、R7。
主机(SDIO控制器)给SD卡发送命令之后,SD卡会作出响应,响应中包含主机(SDIO控制器)需要的数据,这些数据有SD的信息,容量,和存储数据等等。
上面已经提到了,SD卡工作,主要是识别和数据传输,它的识别过程有些复杂,写代码的时候,可以参考协议给的初始化流程图。数据传输包括读和写,单字节和多字节读写。下两节描述识别初始化流程图和数据读写时序图。
流程图
SD卡初始化流程图:
读写数据的时序图
SDIO与SD卡通信一般以数据块的形式进行传输,SDIO(多)数据块读操作,如下图所示:
SDIO(多)数据块写操作,如下图所示:
命令格式
SDIO所有的命令和响应都是在SDIO_CMD引脚上面传输的,命令长度固定为48位,SDIO命令格式如下表所示:
其中:除了命令索引和参数需要我们设置,其他都是由SDIO硬件自动控制。命令索引(如CMD0,CMD1之类)由SDIO_CMD寄存器设置,命令参数则由SDIO_ARG寄存器设置。
STM32 SDIO短响应(48位)格式如下表所示:
STM32 SDIO长响应(136位)格式如下表所示:
寄存器
SDIO控制器的寄存器,主要设置SDIO控制器和命令的索引与参数。
SD卡有5个寄存器CID,RCA,CSD,SCR.OCR。SD卡的信息从SD卡寄存器中获取。
总结
SD卡正常工作,就是根据SD卡初始化流程图,发送命令,收到回复,直到流程结束。传输数据,也是根据读写时序图,将要发送的数据放进命令中发送出去。
SDIO 控制器驱动SD 卡识别过程中,频率是400K , 传输数据的时候,SDIOCK 的 频率是6M.SD卡初始化的时候,频率不能超过400K。
简述SD卡的工作原理(四)相关推荐
- 服务器阵列工作原理,阵列卡的工作原理
阵列卡的工作原理 导读:磁盘阵列是一种把若干硬磁盘驱动器按照一定要求组成一个整体,整个磁盘阵列由阵列控制器管理的系统.阵列卡的全称叫磁盘阵列卡 是用来做 RAID(廉价冗余磁盘阵列) . 冗余磁盘阵列 ...
- 计算机点火工作原理,简述汽车发动机ECU工作原理
<简述汽车发动机ECU工作原理>由会员分享,可在线阅读,更多相关<简述汽车发动机ECU工作原理(4页珍藏版)>请在人人文库网上搜索. 1.简述汽车发动机ECU工作原理汽车电脑工 ...
- 计算机测试工作原理,计算机(测试卡)诊断卡的工作原理
计算机(测试卡)诊断卡的工作原理 (11页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 15.9 积分 简介 诊断卡的工作原理是 利用主板中BI ...
- 简述sd卡2.0协议_【正点原子FPGA连载】第十二章SD卡读写TXT文本实验-领航者 ZYNQ 之嵌入式开发指南...
1)实验平台:正点原子领航者ZYNQ开发板 2)平台购买地址:https://item.taobao.com/item.htm?&id=606160108761 3)全套实验源码+手册+视频下 ...
- 简述旋转编码器的工作原理_什么是编码器,编码器工作原理介绍
点击上方蓝色字体 机械菌 关注我们,涨知识涨见识就在这里. 正文开始 编码器(encoder)是将信号(如比特流)或数据进行编制.转换为可用以通讯.传输和存储的信号形式的设备.编码器把角位移或直线位移 ...
- 简述html的基本工作原理,变压器的基本工作原理和结构(一)
一.变压器简述 变压器(Transformer)是利用电磁感应的原理来改变交流电压的装置,主要构件是初级线圈.次级线圈和铁芯(磁芯).主要功能有:电压变换.电流变换.阻抗变换.隔离.稳压(磁饱和变压器 ...
- 简述keepalived和其工作原理,keepalived搭建mysql高可用,vip飘逸,避免单点故障@xinxin
keepalived 简介 组成部分 工作原理 环境准备 centos6两台[防火墙关闭] master上执行安装 修改配置文件 保存退出,重启,查看vip backup上执行 保存退出,重启,停掉m ...
- 【STM32】STM32 SDIO SD卡读写测试(四)-- SD_Test之Transfer Mode阶段
相关文章 <[SDIO]SDIO.SD卡.FatFs文件系统相关文章索引> 1.前言 本篇文章主要是介绍SD卡的读写测试,包括:SD卡擦除测试.SD卡单一块读写测试.SD卡多个块读写测试. ...
- 简述计算机数控系统的工作原理,数控原理与系统复习
数控原理与系统总复习(考试必备) 一.基本名词 NC 数字控制 CNC 计算机数字控制 DNC 分布式数字控制 MDI 手工数据输入 MC 加工中心 FMC 柔性制造单元 FMS 柔性制造系统 CIM ...
- 简述Z-Stack的基本工作原理与流程(OSAL操作系统)
首先上图,跟着图中的函数顺序来感受Z-Stack的工作流程: Z-Stack协议栈总的来说做了两件事,系统的初始化和启动OSAL操作系统. 系统初始化:从main函数看,首先是调用了osal_init ...
最新文章
- oracl 、mysql在线查看文档
- C语言:关键字volatile详解!
- Geoserver中切割离线瓦片TileLayer预览时放大之后缺失
- DB_NAME、DB_UNIQUE_NAME、SERVICE_NAME和INSTANCE_NAME等的区别
- php mysql 常用语句_PHP mysql基本语句指令
- Web中的鼠标自动移动
- 纪念品分组java_纪念品分组 ——易懂、简介、技巧(Java代码)
- mvc:default-servlet-handler/作用
- 关闭windows垃圾服务
- 第一天:wp7多功能播放器 设计一界面设计
- 游戏可以html+上运行吗,运行多个,如果在HTML游戏
- sea.js常用接口
- 【宽度优先搜索笔记】BFS输出最短路径
- 平衡二叉树删除_自平衡二叉树实现及时间复杂度分析
- 个人工作总结05(第二阶段)
- 矩阵论7,8,9作业
- 【commons-beanutils专题】003- PropertyUtils 专题
- 小乔皮肤分析-缤纷独角兽/青蛇皮肤
- 2023成都电源工业展览会
- 兼容QQ浏览器,UC浏览器滚动到底部