SD卡协议-中文

SD卡协议-中文

ID:38983362

大小:2.70 MB

页数:28页

时间:2019-06-23

SD卡协议-中文_第1页
SD卡协议-中文_第2页
SD卡协议-中文_第3页
SD卡协议-中文_第4页
SD卡协议-中文_第5页
资源描述:

《SD卡协议-中文》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、一概述1.SD总线模式下CLK:时钟信号CMD:双向命令和响应信号DAT0-3:双向数据信号VDD,VSS:电源和地信号SD模式下允许有一个主机,多个从机(即多个卡),主机可以给从机分别地址.主机发命令有些命令是发送给指定的从机,有些命令可以以广播形式发送.SD模式下可以选择总线宽度,即选用几根DAT信号线,可以在主机初始化后设置.2.SD总线协议SD模式下的命令和数据流都有一个开始位和结束位.>命令:是在CMD上传输的用于启动一个操作的比特流.由主机发往从机,可以是点对点也可以是广播的.>响应:是在CMD上传输的用于之前

2、命令回答的比特流.由从机发往主机.>数据:是在DAT上传输的比特流,双向传输.无响应模式无数据模式多块读操作模式多块写操作模式命令格式响应格式数据格式SD卡上电后会自动初始化,通过给卡发送CMD0也可以复位卡.二.SD卡命令描述.1.广播命令:给所有卡都发送,某些命令需要响应.2.点对点命令给指定地址的卡发送,需要响应.SD卡系统有两种工作模式:1.卡识别模式.主机上电复位后即处于此模式,它会在总线上等待卡.卡复位后也处于此模式,直到SEND_RCA(CMD3)命令到来.2.数据传输模式.卡收到SEND_RCA(CMD3)

3、命令后即进入此模式.主机识别到卡后也进入此模式.卡状态和工作模式对照表1.卡识别模式.此模式下主机复位总线所有的卡,验证工作电压,询问卡的地址.这个模式下所有数据的传输都是只通过CMD线来完成.1)卡的复位.当卡上电或收到GO_IDLE_STATE(CMD0)命令后,卡即进入IdleState状态.此时卡将其RCA设为0,相关寄存器设为传输稳定的最优模式.2)工作电压验证每个卡的最高和最低工作电压存储在OCR.只有当电压比配时,CID和CSD的数据才能正常传输给主机.SD_SEND_OP_COND(ACMD41)命令用来判

4、断卡的工作电压是否符合,如果不符合的话,卡应该放弃总线操作,进入InactiveState状态.在发送SD_SEND_OP_COND(ACMD41)命令前记得要首先发送APP_CMD(CMD55).卡的状态变换图.ACMD41命令响应中的BUSY位也用于卡表示其还没准备好,主机此时应重发ACMD41命令,直到卡准备好.主机在这个阶段的ACMD41中不允许改变工作电压,如果确实想改变的话,应该先发送CMD0,然后再发送改变后的ACMD41.GO_INACTIVE_STATE(CMD15)命令用于使指定地址的卡进入Inacti

5、veState模式.1)卡识别过程.ALL_SEND_CID(CMD2)命令用于获取卡的CID信息,如果卡处于ReadyState,它就会在CMD线上传送它的CID信息,然后进入IdentificationState模式.紧接着发送CMD3(SEND_RELATIVE_ADDR)命令,用于设置卡新的地址.卡收到新的地址后进入Stand-byState模式.1.数据传输模式.数据传输模式下卡的状态转变图进入数据传输模式后,主机先不停的发送SEND_CSD(CMD9)命令获取卡的CSD信息.SET_DSR(CMD4)用于设置卡

6、的DSR寄存器,包括数据总线宽度,总线上卡的数目,总线频率,当设置成功后,卡的工作频率也随之改变.此步操作是可选的.CMD7命令用于使指定地址的卡进入传输模式,任何指定时刻只能有一个卡处于传输模式.传输模式下所有的数据传输都是点对点的,并且所有有地址的命令都需要有响应..所有读命令都可以由CMD12命令停止,之后卡进入TransferState.读命令包括单块读(CMD17),多块读(CMD18),发送写保护(CMD30),发送scr(ACMD51)和读模式一般命令(CMD56)..所有写命令都可以由CMD12命令停止.写

7、命令包括单块读(CMD24),多块读(CMD25),写CID(CMD26),写CSD(CMD27),锁和解锁命令(CMD42)和写模式一般命令(CMD56)..当写命令传输完成后,卡进入ProgrammingState(传输成功)或TransferState(传输失败).如果一个卡写操作被停止,但其前面数据的CRC和块长度正确,数据还是会被写入..卡要提供写缓冲,如果写缓冲已满并且卡处于ProgrammingState,DAT0保持低BUSY..写CID,CSD,写保护,擦除命令没有缓冲,当这些命令没完时,不应发送其他的数

8、据传输命令..参数设置命令在卡被编程时是不允许发送的,这些命令包括设置块长度(CMD16),擦除块起始(CMD32)和擦除块结束(CMD33)..当卡正编程时读命令是禁止的..用CMD7使另一个卡进入TransferState不会终止当前卡的编程和擦除,当前卡会进入DisconnectState并且释放

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。