SD卡协议-:时钟信号CMD:双向命令和响应信号DAT0-3:双向数据信号VDD,VSS:电源和地信号SD模式下允许有一个主机,多个从机(即多个卡),,,即选用几根DAT信号线,.>命令:,可以是点对点也可以是广播的.>响应:.>数据:是在DAT上传输的比特流,,:给所有卡都发送,,:,,直到SEND_RCA(CMD3)(CMD3),验证工作电压,(CMD0)命令后,,,(ACMD41)命令用来判断卡的工作电压是否符合,如果不符合的话,卡应该放弃总线操作,(ACMD41)命令前记得要首先发送APP_CMD(CMD55).,主机此时应重发ACMD41命令,,如果确实想改变的话,应该先发送CMD0,(CMD15)(CMD2)命令用于获取卡的CID信息,如果卡处于ReadyState,它就会在CMD线上传送它的CID信息,(SEND_RELATIVE_ADDR)命令,-,主机先不停的发送SEND_CSD(CMD9)(CMD4)用于设置卡的DSR寄存器,包括数据总线宽度,总线上卡的数目,总线频率,当设置成功后,,,并且所有有地址的命令都需要有响应..所有读命令都可以由CMD12命令停止,(CMD17),多块读(CMD18),发送写保护(CMD30),发送scr(ACMD51)和读模式一般命令(CMD56)..(CMD24),多块读(CMD25),写CID(CMD26),写CSD(CMD27),锁和解锁命令(CMD42)和写模式一般命令(CMD56)..当写命令传输完成后,卡进入ProgrammingState(传输成功)或TransferState(传输失败).如果一个卡写操作被停止,但其前面数据的CRC和块长度正确,数据还是会被写入..卡要提供写缓冲,如果写缓冲已满并且卡处于ProgrammingState,DAT0保持低BUSY..写CID,CSD,写保护,擦除命令没有缓冲,当这些命令没完时,不应发送其他的数据传输命令..参数设置命令在卡被编程时是不允许发送的,这些命令包括设置块长度(CMD16),擦除块起始(CMD32)和擦除块结束(CMD33).
SD卡协议-中文 来自淘豆网m.daumloan.com转载请标明出处.