容量分类

  • SDSC:最大2G
  • SDHC:大于2G,最大32G
  • SDXC:大于32G,最大2T

读写速度

读写速度一半不一致,可根据这个特性调节底层接口速度,来提高效率

  • Class 0,没有速度要求
  • Class 2,正常模式下,最低2M
  • Class 4,正常模式下,最低4M
  • Class 6,正常模式下,最低6M
  • Class 10 告诉模式下,最低10M

我两次没得SD卡速度不一样,第一批C10,第二批C4

总线协议

三种传输:

  • Command:命令传输
  • Response:对上次发送命令的反馈
  • Data:数据传输

寄存器

框图

SDCard协议&理解

总述

SDCard协议&理解

OCR寄存器

31bit:指示卡状态,0忙,1空闲

其他位:支持供电范围

SDCard协议&理解

CID寄存器

卡的标识信息

SDCard协议&理解

CSD寄存器

卡的描述寄存器,包含了配置信息,数据格式,扇区大小等

SDCard协议&理解

RCA寄存器

表示地址,SD模式下使用

SCR寄存器

厂商编程的

SDCard协议&理解

 

命令

#define CMD0    0       //卡复位

#define CMD1    1

#define CMD8    8       //命令8 ,SEND_IF_COND

#define CMD9    9       //命令9 ,读CSD数据

#define CMD10   10      //命令10,读CID数据

#define CMD12   12      //命令12,停止数据传输

#define CMD16   16      //命令16,设置SectorSize 应返回0x00

#define CMD17   17      //命令17,读sector

#define CMD18   18      //命令18,读Multi sector

#define CMD23   23      //命令23,设置多sector写入前预先擦除N个block

#define CMD24   24      //命令24,写sector

#define CMD25   25      //命令25,写Multi sector

#define CMD41   41      //命令41,应返回0x00

#define CMD55   55      //命令55,应返回0x01

#define CMD58   58      //命令58,读OCR信息

#define CMD59   59      //命令59,使能/禁止CRC,应返回0x00

 

 

 

from:https://blog.csdn.net/shaynerain

相关文章: