一、了解SD卡协议原理
SD 卡系统定义了两种通信协议:SD 和 SPI 主机系统可以选择任意一种。
当收到 reset 命令的时候,SD 卡通过主机的信息来决定使用何种模式,并且之后的通讯都会使用相同的模式。
SD 卡的 SPI 实现使用了 SD 模式相同的命令。SD 卡 SPI 接口同市场上现有的 SPI 主 机兼容。
同其他 SPI 设备一样,SD 卡的 SPI 信道有以下 4 个信号:
- CS: 主机到卡的片选(chip select)信号
- CLK: 主机到卡的时钟信号
- DataIn: 主机到卡的数据信号
- DataOut: 卡到主机的数据信号
另一个 SPI 的通用特点是字节传输,这也是卡的实现。所有的数据都是字节(8 bit)的 整数倍,并且直接总是对齐 CS 信号
SD 卡系统(SPI 模式)总线拓扑结构如图
SD 卡系统(host &card)定义了两种操作模式:
- 卡识别模式 在复位后,查找总线上的新卡的时候,主机会处于“卡识别模式”。卡在复位后会处于 识别模式,直到收到 SEND_RCA(CMD3)命令.
- 数据传输模式 当 RCA 第一次发布后,卡会处于“数据传输模式”。主机会在总线上所有的卡都被识别 后进入这个模式