SD卡接口的完整规范.docx
- 文档编号:9580551
- 上传时间:2023-02-05
- 格式:DOCX
- 页数:16
- 大小:83.17KB
SD卡接口的完整规范.docx
《SD卡接口的完整规范.docx》由会员分享,可在线阅读,更多相关《SD卡接口的完整规范.docx(16页珍藏版)》请在冰豆网上搜索。
SD卡接口的完整规范
SD卡接口规范的完整翻译
特性:
◎容量:
32MB/64MB/128MB/256MB/512MB/1GByte
◎兼容规范版本1.01
◎卡上错误校正
◎支持CPRM
◎两个可选的通信协议:
SD模式和SPI模式
◎可变时钟频率0-25MHz
◎通信电压范围:
2.0-3.6V
工作电压范围:
2.0-3.6V
◎低电压消耗:
自动断电及自动睡醒,智能电源管理
◎无需额外编程电压
◎卡片带电插拔保护
◎正向兼容MMC卡
◎高速串行接口带随即存取
---支持双通道闪存交叉存取
---快写技术:
一个低成本的方案,能够超高速闪存访问和高可靠数据存储
---最大读写速率:
10Mbyte/s
◎最大10个堆叠的卡(20MHz,Vcc=2.7-3.6V)
◎数据寿命:
10万次编程/擦除
◎CE和FCC认证
◎PIP封装技术
◎尺寸:
24mm宽×32mm长×1.44mm厚
说明:
本SD卡高度集成闪存,具备串行和随机存取能力。
可以通过专用优化速度的串行接口访问,数据传输可靠。
接口允许几个卡垛叠,通过他们的外部连接。
接口完全符合最新的消费者标准,叫做SD卡系统标准,由SD卡系统规范定义。
SD卡系统是一个新的大容量存储系统,基于半导体技术的变革。
它的出现,提供了一个便宜的、结实的卡片式的存储媒介,为了消费多媒体应用。
SD卡可以设计出便宜的播放器和驱动器而没有可移动的部分。
一个低耗电和广供电电压的可以满足移动电话、电池应用比如音乐播放器、个人管理器、掌上电脑、电子书、电子百科全书、电子词典等等。
使用非常有效的数据压缩比如MPEG,SD卡可以提供足够的容量来应付多媒体数据。
框图:
SD卡上所有单元由内部时钟发生器提供时钟。
接口驱动单元同步外部时钟的DAT和CMD信号到内部所用时钟。
本卡由6线SD卡接口控制,包括:
CMD,CLK,DAT0-DAT3。
在多SD卡垛叠中为了标识SD卡,一个卡标识寄存器(CID)和一个相应地址寄存器(RCA)预先准备好。
一个附加的寄存器包括不同类型操作参数。
这个寄存器叫做CSD。
使用SD卡线访问存储器还是寄存器的通信由SD卡标准定义。
卡有自己的电源开通检测单元。
无需附加的主复位信号来在电源开启后安装卡。
它防短路,在带电插入或移出卡时。
无需外部编程电压。
编程电压卡内生成。
SD卡支持第二接口工作模式SPI。
如果接到复位命令(CMD0)时,CS信号有效(低电平),SPI模式启用。
(译者按:
以下部分为本人翻译)
接口
该SD卡的接口可以支持两种操作模式:
。
SD卡模式
。
SPI模式
主机系统可以选择以上其中任一模式,SD卡模式允许4线的高速数据传输。
SPI模式允许简单通用的SPI通道接口,这种模式相对于SD模式的不足之处是丧失了速度。
SD卡模式针脚定义
针脚
名称
类型
描述
1
CDDAT3
I/O/PP
卡监测数据位3
2
CMD
PP
命令/回复
3
Vss
S
地
4
Vcc
S
供电电压
5
CLK
I
时钟
6
Css2
S
地
7
DAT0
I/O/PP
数据位0
8
DAT1
I/O/PP
数据位1
9
DAT2
I/O/PP
数据位2
1:
S:
电源供电,I:
输入O:
输出I/O:
双向PP:
I/O使用推挽驱动
SD卡的总线概念
SD总线允许强大的1线到4线数据信号设置。
当默认的上电后,SD卡使用DAT0。
初始化之后,主机可以改变线宽(译者按:
即改为2根线,3根线。
。
。
)。
混和的SD卡连接方式也适合于主机。
在混和连接中Vcc,Vss和CLK的信号连接可以通用。
但是,命令,回复,和数据(DAT0~3)这几根线,各个SD卡必须从主机分开。
这个特性使得硬件和系统上交替使用。
SD总线上通信的命令和数据比特流从一个起始位开始,以停止位中止。
CLK:
每个时钟周期传输一个命令或数据位。
频率可在0~25MHz之间变化。
SD卡的总线管理器可以不受任何限制的自由产生0~25MHz的频率。
CMD:
命令从该CMD线上串行传输。
一个命令是一次主机到从卡操作的开始。
命令可以以单机寻址(寻址命令)或呼叫所有卡(广播命令)方式发送。
回复从该CMD线上串行传输。
一个命令是对之前命令的回答。
回复可以来自单机或所有卡。
DAT0~3:
数据可以从卡传向主机或副versa。
数据通过数据线传输。
SD卡总线拓扑
SPI模式针脚定义
针脚
名称
类型
描述
1
CS
I
片选(负有效)
2
DI
I
数据输入
3
Vss
S
地
4
Vcc
S
供电电压
5
CLK
I
时钟
6
Vss2
S
地
7
DO
O
数据输出
8
RSV
--
9
RSV
--
1:
S:
电源供电,I:
输入O:
输出I/O:
双向PP:
I/O使用推挽驱动
注意:
SPI模式时,这些信号需要在主机端用10~100K欧的电阻上拉。
SPI总线概念
SPI总线允许通过2通道(数据入和出)传输比特数据。
SPI兼容模式使得MMC主机系统通过很小的改动就可以使用SD卡。
SPI模式使用字节传输。
所有的数据被融合到一些字节中并alignedtotheCSsignal(可能是:
同过CS信号来校正)。
SPI模式的优点就是简化主机的设计。
特别的,MMC主机需要小的改动。
SPI模式相对于SD模式的不足之处是丧失了速度性能。
SD卡的电特性
SD卡的连接电路图
直流特性
完全最大值评估
最大值评估指即使在瞬间也不能超出限制电压。
当你在归定的最大值评估范围内使用该产品,不会出现永久性损坏。
但是这并不能保证正常的逻辑操作。
SD卡接口的完整规范
(二)
faceoff发表于2006-8-1120:
12:
00
回复从该CMD线上串行传输。
一个命令是对之前命令的回答。
回复可以来自单机或所有卡。
DAT0~3:
数据可以从卡传向主机或副versa。
数据通过数据线传输。
SD卡总线拓扑
SPI模式针脚定义
针脚
名称
类型
描述
1
CS
I
片选(负有效)
2
DI
I
数据输入
3
Vss
S
地
4
Vcc
S
供电电压
5
CLK
I
时钟
6
Vss2
S
地
7
DO
O
数据输出
8
RSV
--
9
RSV
--
1:
S:
电源供电,I:
输入O:
输出I/O:
双向PP:
I/O使用推挽驱动
注意:
SPI模式时,这些信号需要在主机端用10~100K欧的电阻上拉。
SPI总线概念
SPI总线允许通过2通道(数据入和出)传输比特数据。
SPI兼容模式使得MMC主机系统通过很小的改动就可以使用SD卡。
SPI模式使用字节传输。
所有的数据被融合到一些字节中并alignedtotheCSsignal(可能是:
同过CS信号来校正)。
SPI模式的优点就是简化主机的设计。
特别的,MMC主机需要小的改动。
SPI模式相对于SD模式的不足之处是丧失了速度性能。
SD卡的电特性
SD卡的连接电路图
AVR的SD卡接口程序2007-04-2816:
04SD卡接口程序/************************************************************/
/*SDCodeforM32L*/
/*Bypasyong*/
/*2006-4*/
/*BaseICC6.31A*/
/************************************************************/
#include
#include
#include"1011.h"
#defineucharunsignedchar
#defineuintunsignedint
#defineMMC_CS_PINBIT(4)//PORTB.4
#defineMMC_PORTPORTB
ucharreading=0,a=0,pointer=0;
voidsd_port_init()
{
MMC_PORT=MMC_CS_PIN;
}
ucharBUFFER[512];//扇区缓冲区
uinti=0;
voiddelay_nus(uintn)
{
unsignedcharb;
for(b=1;b ; } //**************************************************************************** //SendaCommandtoMMC/SD-Card //Return: thesecondbyteofresponseregisterofMMC/SD-Card //**************************************************************************** ucharSD_Write_Command(ucharcmd,unsignedlongarg) { uchartmp; ucharretry=0; //MMC_PORT=MMC_CS_PIN;//SD卡关闭 //send8ClockImpulse Write_Byte_SPI(0xFF); //setMMC_Chip_Selecttolow(MMC/SD-Cardactive) MMC_PORT&=~MMC_CS_PIN;//SD卡使能 Write_Byte_SPI(cmd0x40);//送头命令 Write_Byte_SPI(arg>>24); Write_Byte_SPI(arg>>16);//send6ByteCommandtoMMC/SD-Card Write_Byte_SPI(arg>>8); Write_Byte_SPI(arg&0xff); Write_Byte_SPI(0x95);//仅仅对RESET有效的CRC效验码 //get8bitresponse //Read_Byte_MMC();//readthefirstbyte,ignoreit. do {//Onlylast8bitisusedhere.Readitout. tmp=Read_Byte_SPI(); retry++; } while((tmp==0xff)&&(retry<100));//当没有收到有效的命令的时候 if(reading==0) MMC_PORT=MMC_CS_PIN;//MMC_CS_PIN=1; elseMMC_PORT&=~MMC_CS_PIN;//MMC_CS_PIN=0; return(tmp); } //**************************************************************************** //SD卡初始化(SPI-MODE) //**************************************************************************** ucharSD_Init(void) { ucharretry,temp; uchari; MMC_PORT&=~MMC_CS_PIN;//SD卡使能 delay_nus(250);//WaitMMC/SDready... for(i=0;i<0x0f;i++) { Write_Byte_SPI(0xff);//send74clockatleast! ! ! } //SendCommandCMD0toMMC/SDCard retry=0; do {//retry200timestosendCMD0command temp=SD_Write_Command(0,0); retry++; if(retry==100) { ;//CMD0Error! } } while(temp! =1); //SendCommandCMD1toMMC/SD-Card retry=0; do {//retry100timestosendCMD1command temp=SD_Write_Command(1,0); retry++; if(retry==100) { ; } } while(temp! =0); retry=0; SD_Write_Command(16,512);//设置一次读写BLOCK的长度为512个字节 MMC_PORT=MMC_CS_PIN;//MMC_CS_PIN=1;//setMMC_Chip_Selecttohigh return(0);//Allcommandshavebeentaken. } //**************************************************************************** //从SD卡读一个扇区Return0ifnoError. //**************************************************************************** ucharSD_Read_Block(unsignedlongaddress) { uchartemp=0;uinti=0; reading=1; temp=SD_Write_Command(17,address);//读出RESPONSE while(Read_Byte_SPI()! =0xfe) {;}//直到读取到了数据的开始头0XFE,才继续 for(i=0;i<512;i++) { BUFFER[i]=Read_Byte_SPI(); } Read_Byte_SPI();//CRC-Byte Read_Byte_SPI();//CRC-Byte reading=0; MMC_PORT=MMC_CS_PIN;//关闭SD卡 return(temp); }
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SD 接口 完整 规范