51单片机读写SD_MMC卡设计报告
本文件介绍了在51平台通过SPI方式读写SD/MMC卡,包括软硬件需求, SD/MMC硬件连接, SPI接口软件模拟,SD/MMC上电初始化,写单块,读单块,写多块,读多块,块擦除,上位串口通讯协议,PC上位软件操作说明等。
51单片机读写SD_MMC卡设计报告
杨文斌(qq:292942278) 2007-08-20
本文件介绍了在51平台通过SPI方式读写SD/MMC卡,包括软硬件需求, SD/MMC硬件连接, SPI接口软件模拟,SD/MMC上电初始化,写单块,读单块,写多块,读多块,块擦除,上位串口通讯协议,PC上位软件操作说明等。
一、 总则
本文件介绍了在51平台通过SPI方式读写SD/MMC卡,包括软硬件需求, SD/MMC硬件连接, SPI接口软件模拟,SD/MMC上电初始化,写单块,读单块,写多块,读多块,块擦除,上位串口通讯协议,PC上位软件操作说明等。
二、 软硬件需求
a) 单片机固件编译环境:Keil C51 uVision2 b) PC上位软件编译环境:Visual C++ 6.0 c) 硬件环境:1)W78E52B一片;
2)SD/MMC卡插座一个; 3)MAX232一片; 4)cross串口线一条;
三、 SD/MMC硬件连接
SD/MMC与51单片机引脚连接如下表1,供参考:
注意:SD/MMC引脚除VDD(PIN4)/VSS(PIN3/6)外,其它引脚连接上拉电阻(47k)至3.3v电源。
四、 SPI接口软件模拟
由于W78E52B没有集成硬件SPI接口,所以固件需要通过软件来模拟实现SPI接口; a) SPI接口基本原理:SPI采用HOST/SLAVE结构,HOST与SLAVE以字节为传输单位,支持
4种模式; SPI接口定义有4个引脚CS,SI,SO,SCK;SD SPI接口工作于模式0,各引脚功能分别描述如下:
1) CS为片选引脚,低电平为有效;
2) SI为Host输出Slave输入引脚,空闲为高电平,SCK上升有效,; 3) SO为Slave输出Host输入引脚,SCK下降有效;
4) SCK为同步时钟;
b) SPI HAL:包括4个函数,上层软件通过调用这4个函数,来实现与SD/MMC以SPI方式
进行数据交换。
1) SPI_SendByte(INT8U onebyte)――以SPI方式向SD/MMC发送一个字节 2) INT8U SPI_RecByte(void)――以SPI方式从SD/MMC接收一个字节 3) SPI_CS_Assert(void)――将CS引脚置为低电平有效 4) SPI_CS_Deassert(void)――将CS引脚置为高电平无效
c) 通过SPI HAL发送的RESET命令CMD0波形图,如下图1,以供参考:
本文件介绍了在51平台通过SPI方式读写SD/MMC卡,包括软硬件需求, SD/MMC硬件连接, SPI接口软件模拟,SD/MMC上电初始化,写单块,读单块,写多块,读多块,块擦除,上位串口通讯协议,PC上位软件操作说明等。
图1-RESET命令CMD0波形图 五、 SD/MMC上电初始化
当SD/MMC卡上电后,单片机需要对其进行上电初始化,上电初始化步骤顺序所列如下: 1) 置CS为低,至少延时74个CLK,延时波形图,如图2,以供参考:
图2-延时波形图
2) 发送RESET命令CMD0,其波形图参考图1:
3) 发送命令CMD1(SD卡使用命令ACMD41)激活SD/MMC卡, 固件需重复发送命令CMD1直到R1 idle state位为0。 4) 发送命令CMD58,读卡OCR寄存器。
5) 发送命令CMD9,读卡CSD寄存器,获得SD/MMC的基本参数:1)块最大的长度;2) 卡中块的个数;等
六、 写单块
1) 发送命令CMD24。
2) 接收R1响应。
3) 发送Data Tokens(Single Block Write: 0xfe)。 4) 发送一个block(一般为512个字节)。 5) 发送两个CRC16码。
6) 循环接收数据,等待写完成,直到写完成接收到0xff。 七、 读单块
1)发送命令CMD17。
2)接收R1响应。
3)等待Data Tokens(Single Block Read: 0xfe)。 4)接收一个block(一般为512个字节)。 5)接收两个字节CRC16码。 八、 写多块(Open ended)
1) 发送命令CMD25。
2) 接收R1b响应。 3) 发送Data Tokens(Single Block Write: 0xfe)。
本文件介绍了在51平台通过SPI方式读写SD/MMC卡,包括软硬件需求, SD/MMC硬件连接, SPI接口软件模拟,SD/MMC上电初始化,写单块,读单块,写多块,读多块,块擦除,上位串口通讯协议,PC上位软件操作说明等。
4) 发送一个block(一般为512个字节)。
5) 发送两个字节CRC16码。 6) 循环接收数据,等待写完成,直到写完成接收到0xff。 7) 重复步骤3,继续发送下一个数据包,直到所有数据包发送完成,至步骤8继续。 8) 发送命令CMD12,数据传输结束。 9) 接收R1b响应。
九、 读多块(Open ended) 1) 发送命令CMD17。
2) 接收R1响应。
3) 等待Data Tokens(Single Block Read: 0xfe)。 4) 接收一个block(一般为512个字节)。
5) 接收两个字节CRC16码。 6) 重复步骤3,继续接收下一个数据包,直到接收所有数据包完成后,至步骤7继续。 7) 发送命令CMD12,数据传输结束。 8) 接收R1b响应。
十、 多块擦除
SD/MMC最大支持一次删除一个Erase Group大小的连续块,SD/MMC的Erase Group大小不是固定的,其大小指定在SD/MMC卡的CSD寄存器内,在上电初始化阶段,HOST可以使用命令CMD9来读取SD/MMC卡的CSD寄存器;一般多块删除时,对于上层软件将要删除EraseBlockNum个块,在具体执行删除任务时,开始固件可以逐个Erase Group进行连续删除,最后不足一个Erase Group的连续块,也可以一起删除。总之,删除连续多块(Erase Group或不足一个Erase Group)时使用的是相同的步骤,如下:
1) 发送擦除起始块地址命令CMD32。
2) 接收R1响应。
3) 发送擦除终止块地址命令CMD33。
4) 接收R1响应。
5) 发送命令CMD38擦除所选的块。
6) 循环接收数据,等待删除完成,直到接收到0xff删除完成。
十一、 上位串口通讯协议
a) 上位串口通讯协议是超锐微电子定义的串口通讯协议, 用于51单片机读写SD/ MMC
卡平台与上位软件的通讯;该协议定义了两种设备: 1)主设备:上位软件;
2)从设备: 51单片机平台;
b) 主设备和从设备都支持上位串口通讯协议,并基于该协议来完成命令处理与数据交
换。上位串口通讯协议定义了两个执行阶段,分别是: 1) 命令阶段
2) 数据交换阶段;
c) 一次数据交换必须由主设备于命令阶段开始,主设备向从设备发送命令,从设备响
应命令,双方进入数据交换阶段; 数据交换阶段以主设备发送不同命令,执行不同数据传输动作;数据传输动作分为以下三种: 1) 主设备向从设备发送数据(如,写单/多块命令);
本文件介绍了在51平台通过SPI方式读写SD/MMC卡,包括软硬件需求, SD/MMC硬件连接, SPI接口软件模拟,SD/MMC上电初始化,写单块,读单块,写多块,读多块,块擦除,上位串口通讯协议,PC上位软件操作说明等。
2) 主设备向从设备接收数据(如,读单/多块命令);
3) 无数据传输(如,擦除命令);
d) 上位串口通讯协议定义了一些命令,它们长度固定,为8个字节,其中第一个字节
为命令代码,其后字节为命令参数;命令功能,代码,参数汇总于下表2:
e) 主设备与从设备之间进行数据传输,命令不同处理不同,各命令的数据传输分别描
述:
1) 读单块命令――主设备发送读单块命令,命令从设备向SD/MMC卡读取一个数
据块,块号指定在命令参数1中,命令被从设备接收后,由从设备向SD/MMC
卡读取参数1指定的数据块;主设备通 …… 此处隐藏:4998字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [行业资料]创设有效语境 改善英语教学
- [行业资料]微商推广引流的44种方法
- [行业资料]医疗机构输血科血库基本标准
- [行业资料]锂离子电池项目可行性研究报告(2015年
- [行业资料]申请执行人长沙市开福区人口和计划生育
- [行业资料]倾听草木的呼吸(初中阅读)
- [行业资料]长沙新环境厂房租赁合同书
- [行业资料]2022年经济师《金融专业知识与实务(中
- [行业资料]浦东新区2009学年度第二学期期末考试七
- [行业资料]企业劳动用工协议书
- [行业资料]最新苏科版七年级数学上册第二章有理数
- [行业资料]12星座与英语词汇学习
- [行业资料]2008年高考化学科经验
- [行业资料]镇政府2015年工作总结及2016年政府工作
- [行业资料]梧州市产业园区规划及招商引资报告
- [行业资料]大体积砼承台施工作业指导书
- [行业资料]学生干部在创建和谐校园中的作1
- [行业资料]小学语文教师实习个人总结
- [行业资料]2014完美最新奖金制度
- [行业资料]2016年一建建筑实务-重要知识点地质
- 【最新】人教版小学语文三年级上册:第
- 中国中小企业年鉴(地区数据)
- 动物与人类生活的关系 ppt
- 选修3 专题3 胚胎工程知识点
- 遥感技术基础复习题
- 公司员工职业生涯规划实施方案
- 辽宁省建筑施工企业安全生产许可证管理
- 15秋福师《中外幼儿教育史》在线作业二
- 2015-2020年中国网络视频行业深度调研
- 数学八年级下华东师大版21.1算术平均数
- 苏教版一年级语文下册《小松树和大松树
- 油画论文:摄影对当下油画艺术的影响
- 西方自由主义影响下的新闻自由——从17
- 基于支持向量机的商业银行信用风险评估
- 机械设计基础复习题答案(修改)(1)
- 语文:高考作文素材:材料引用及论点论
- 月份工程进度款结算单62+56
- 2018-2023年中国互联网基金行业现状研
- 人教版 PEP 五年级下册Unit1Lesson1 th
- 2014学年第二学期四年级数学期末教学质




