新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > SD卡接口设计

SD卡接口设计

作者:时间:2011-11-21来源:网络收藏
3.2 底层SPI通信
底层的SPI通信是实现最终读写的关键。由于MCF51QE128自带SPI硬件,因此只需要读写SPI数据寄存器的值。这里自定了byte、word和dword三种数据类型,分别对应于8位、16位和32位数据。代码如下:

本文引用地址:http://www.eepw.com.cn/article/150041.htm


3.3 卡的通用写命令
由于卡的命令具有统一的格式,因此可以用一个通用的写命令函数来实现所有命令的发送。另外,考虑到多数命令的响应类型都是R1,这里的通用写命令函数所接收的响应类型默认为R1。函数代码如下:


3.4 卡的初始化
SD卡的初始化要遵循一定的步骤。首先将SPI时钟降低到400 kHz,等待至少74个时钟周期。接着拉低片选信号,并发送CMD0命令,对SD卡进行复位并使其进入SPI模式,这里需要正确的CRC校验,校验字节为0x95。若SD卡进入空闲状态(即接收响应为0x01时),则发送CMD1命令,激活卡的初始化过程,此时响应为0x00。然后设置块的长度,一般为512字节。最后将片选拉高并将SPI时钟设为最大值,以保证最大的读写速度。SD卡初始化过程如图3所示。

SD卡初始化代码如下:



关键词: 设计 接口 SD

评论


相关推荐

技术专区

关闭