1.目前的主流SD为高容量SD即HCSD(High Capacity SD),且基本都是SD2.0。因故,开发应以此为主。
2.SD卡的SPI协议注意事项。
1)首先是初始化流程,CMD0-CMD8-CMD58-ACMD41-CMD58
2)需要注意的CMD24命令中ADDR存在两种解释。即The unit of “data address” in argument is byte for Standard Capacity SD Memory Card and block (512 bytes) for HighCapacity SD Memory Card.即在标准SD和HCSD当中这个地址是不同的。HCSD为了支持更大的写入空间(32bit=2G),固定了每一次写入的数据量为512bit。从而将地址解放出来,仅变为扇区编号(规定一个扇区是512bit),从而支持了更大的地址空间。
3)Verilog编写的时候发现,在输出6Byte的CMD之后,一般为9个时钟之后才有返回数据第一位。比较奇怪,需要手工延时一个周期。
4)一定要按照指定的协议PDF文档书写。
5)暂时没有了,还要继续写。