SD卡接口设计[附硬件电路和程序]

OFweek电子工程网 中字

  2 硬件设计

 

  本设计选用Freescale公司的32位低功耗微控制器MCF51QE128,采用SPI模式实现与SD卡的接口。

  由于MCF51QE128是一款低功耗的微控制器,工作电压的典型值为3.6 V,与SD卡的工作电压兼容,因而可以直接与SD卡连接,无需电平转换电路。这里选用的是MCF51 QE128的第2个SPI口,硬件连接如图2所示。

 

  

 

  3 软件实现

 

  软件部分主要实现MCF51QE128的初始化、底层SPI通信,以及SD卡的通用写命令、初始化和单块数据的读写等功能。

  3.1 MCF51QE128的初始化

  在与SD卡通信之前,首先需要配置MCF51QE128,并初始化SPI端口。代码如下:

  

        3.2 底层SPI通信

  底层的SPI通信是实现最终读写的关键。由于MCF51QE128自带SPI硬件接口,因此只需要读写SPI数据寄存器的值。这里自定了byte、word和dword三种数据类型,分别对应于8位、16位和32位数据。代码如下:

  

  

  3.3 SD卡的通用写命令

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

  

声明: 本网站所刊载信息,不代表OFweek观点。刊用本站稿件,务经书面授权。未经授权禁止转载、摘编、复制、翻译及建立镜像,违者将依法追究法律责任。
侵权投诉

下载OFweek,一手掌握高科技全行业资讯

还不是OFweek会员,马上注册
打开app,查看更多精彩资讯 >
  • 长按识别二维码
  • 进入OFweek阅读全文
长按图片进行保存