您的位置: OpenADSP社区论坛 -> Blackfin专区 -> 新手上路 -> BF51X技术支持专区 -> BF518/BF512的SD卡/MMC卡设计详解
本帖共有774个阅读者
发表帖子 发表投票 回复主题
BF518/BF512的SD卡/MMC卡设计详解
尊贵身份标志
OpenADSP(管理员)
OpenADSP
头衔:社区公民
帮派:无帮无派
帖数:5187
金钱:34761
积分:6369
注册时间:2011/6/7
楼主信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
BF518/BF512的SD卡/MMC卡设计详解

硬件实现原理

ADSP-BF51x 处理器上有一个RSI 接口,RSI 全称为removable storage interface,即可移动的存储接口,该接口兼容以下总线协议:

MMC(多媒体卡)总线协议
SD(安全数字)总线协议
SDIO(安全数字输入输出)总线协议
CE-ATA(消费电子ATA)

SD 卡有两种工作模式:SDIO 模式和SPI 模式。SDIO 模式为半字节读写模式,该模式采用四根数据线,每次可对半个字节作操作。SPI 模式有4 根控制线:MOSI,MISO,SPICLK,SPISS.因为每次只能对一位数据作操作。SD/MMC 卡的寻址方式是按字节寻址的,为方便使用,将其寻址方式定义成连续的存储单元寻址方式。每个存储单元为512 个字节。每个存储单元地址唯一,通过访问存储单元地址来读取数据。

ADSP-EDU-BF51x 板卡上将RSI 接口直接与SD 卡座连接,实现SD/MMC 卡读取功能。

硬件连接示意图

上传的图片
  20127271253041.jpg [ 21.73 KB 465×213 ] (缩略时请点击查看原图)

 

代码实现功能

代码实现了识别存储卡的类型,并将类型打印。根据卡支持的总线宽度进行1bit 和4bit 数据进行写入和读出交验测试。并将测试结果打印出。

测试步骤

1. 将仿真器(ICE)与ADSP-EDU-BF51x 开发板和计算机连接好。
2. 将 SD 或MMC 卡插入SD 卡接口。
3. 先给仿真器(ICE)上电再为ADSP-EDU-BF51x 开发板上电。
4. 运行 VisualDSP++ 5.0 软件,选择合适的BF518 的session 将仿真器与软件连接。
5. 加载 VisualDSP++ 5.0 工程文件BF51x_SD_MMC.dpj,编译并全速运行。

测试结果

在 VisualDSP++ 5.0 软件上打印校验数据的结果。

上传的图片
  201272712543841.jpg [ 21.20 KB 481×124 ] (缩略时请点击查看原图)

 

写入的数据和读出的数据内存比较。

上传的图片
  201272712552141.jpg [ 110.82 KB 743×245 ] (缩略时请点击查看原图)

 




我是OP...
等级:管理员 参考IP地址:*.*.*.*
2012/7/27 12:55:29
langbeimao(论坛新手)
langbeimao
头衔:社区公民
帮派:无帮无派
帖数:15
金钱:222
积分:18
注册时间:2011/11/25
1信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线

能否借鉴一下代码啊?


这家伙很懒,什么也没有留下!
等级:论坛新手 参考IP地址:*.*.*.*
2012/7/28 15:33:56
尊贵身份标志
OpenADSP(管理员)
OpenADSP
头衔:社区公民
帮派:无帮无派
帖数:5187
金钱:34761
积分:6369
注册时间:2011/6/7
2信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
正在整理中,后面会都传到相关的帖子里。

我是OP...
等级:管理员 参考IP地址:*.*.*.*
2012/9/13 14:35:55
Powered by OpenADSP Copyright © 2010 www.Openadsp.com. All rights reserved.154381 Call, 1 Queries, Processed in 0.015625 second(s),