SD卡协议学习
SD卡操作模式
每种操作模式具体对应一种或多种状态,主机通过发送命令可以使SD卡在不同的状态间转换,SD卡接受命令,并根据自己现在所处状态做出不同的响应。
1. Inactive
2. Card identification mode SD卡识别模式 (系统上电时刻或搜寻SD卡,刚接入系统时刻)
SD卡复位
发送GO_IDLE_STATE(CMD0) 到SD卡后,除处于非活动状态之外的SD卡都会进入空闲状态。
工作条件检测
SD卡初始化和识别过程
3. 数据传输模式
数据传输模式下的各个状态转换关系
所有数据读命令都可以被停止命令(CMD12)在任意时刻终止。数据传输会终止,SD卡返回Transfer状态。读命令有:块读操作(CMD17),多块读操作(CMD18),发送写保护(CMD30),发送scr(AVMD51)以及读模式下的普通命令(CMD56)
所有数据写命令都可以被停止命令(CMD12)在任意时刻终止。写命令也会在取消命令(CMD7)之前停止。写命令有:块写操作(CMD24,CMD25),编程命令(CMD27),锁定/解锁命令(CMD42)以及写模式写的普通命令(CMD56)
数据传输一旦完成,SD卡会退出数据写状态,进入Programming状态(传输完成)或者Transfer状态(传输失败)