1、数据缓冲区
如果主机要发送 1K 的数据, 但是主机缓冲区只有 512B, 那么主机可以在发送完前 512B
后, 可以先停止时钟, 然后把后 512B 填充入缓冲区, 再启动时钟, 这样卡并不会检测要两
次发送之间的间隔, 认为其是一次完整的数据发送过程。
2、CRC校验
A.CRC7
CRC7 用于所有的命令, 除 R3 以外的响应, 以及 CID 和 CSD 寄存器。
B.CRC16
CRC16 用于数据块的校验
3、错误类型
A. CRC 错误和命令非法错误
命令的 CRC 校验出错, 卡设置其状态寄存器的 COM_CRC_ERROR 位. 非法命令错误, 卡设置其状态寄存器的 ILLEGAL_COMMAND 位.非法命令包括:不支持的命令,未定义的命令以及当前状态不支持的命令。
B. 读,写和擦除超时
卡应该在指定的时间内完成一个命令或返回移动的错误信息. 如果在指定的超时时间内主机收不到响应, 应认为卡停止工作, 应重新复位卡。