RISC-V技术论坛
直播中

刘勇

8年用户 1420经验值
私信 关注
[经验]

MCU200T上SD卡读写流程

SD卡读步骤:

SD卡初始化完成后,SD 卡初始化过程中的 SPI 时钟需要使用低速时钟(最好小于 400Khz)。所以要对系统时钟进行分频。

SD 卡读取模块: SD 卡读取的过程和初始化流程有很多相似的地方,也就是向 SD 卡发送命令然后接收 SD 返回的响应数据的过程,只是有一段 SD 返回的有效数据段是我们需要的数据。SD 卡读 过程总结(由于我们已经对 SD 卡初始化,所以可以不对 SD 卡返回的响应数据进行检验)。

1.发送 CMD17

2.连续读直到读到开始字节0xFE(可以只检测读到最后一个 0)

3.读 512 个字节的有效数据即一个扇区

4.读两个 CRC 校验字节

SD卡写步骤:

1.发送CMD24(单块)或CMD25(多块)写命令,返回0x00


2.发送数据开始令牌0xfe(或0xfc+正式数据512Bytes + CRC校验2Bytes
SD卡 MCU200T对应管脚表

  
SD卡管脚

  
  
FPGA管脚

  
  
sd_miso

  
  
F16

  
  
sd_clk

  
  
C18

  
  
sd_cs

  
  
F18

  
  
sd_mosi

  
  
E17

  
用winhex软件可以查看SD卡分区,验证自己读写是否正确。


                                                                                

更多回帖

发帖
×
20
完善资料,
赚取积分