SD卡学习笔记(5)

  1. 数据读,没有数据传输,数据总线是高电平,一个传输块包括四个低电平的bit,然后是持续的数据流,数据流结束位是四位高电平,数据传输和时钟是同步的,面向块的数据传输由1位或4位的CRC校验和保护,CRC被附加在块的末尾,单块传输不需要停止命令,多块CMD18需要CMD12停止,停止有延迟,在停止命令的结束位结束,

  2. 多块写命令应使用,而不是连续单写命令,以提高写操作的速度。
    如果主机使用的部分块的累计长度没有块对齐且不允许块对齐(CSD参数WRITE_ blk_不对齐),则在第一个不对齐的块开始之前,卡应检测到块对齐错误并中止编程。卡片应该在状态寄存器中设置ADDRESS_ ERROR错误位,同时忽略所有进一步的数据传输,在接收数据状态中等待停止命令。
    注意,第一个数据块不对齐为写命令(即ADDRESS
    _ERROR在写命令的实际响应中报告),卡保持在传输状态,没有数据被编程。
    如果主机试图对写保护区域进行写操作,也应该中止写操作。然而,在这种情况下,卡片应该设置wp_viol位。
    CSD寄存器的编程不需要先前的块长度设置,传输的数据也受CRC保护。如果CSD寄存器的一部分存储在ROM中,那么。这个不可改变的部分必须与接收缓冲区的相应部分相匹配。如果这个匹配失败,那么卡片将报告一个错误,并且不改变任何寄存器内容。
    有些卡可能需要很长且不可预测的时间来写一个数据块。在接收到一个数据块并完成CRC检查后,如果写缓冲区已满且无法接受新的write BLOCK命令的新数据,卡将开始写,并保持DAT0线低。主机可以在任何时候用SEND status命令(CMD13)轮询卡的状态,

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值