MMCSD卡驱动程序的设计通信10123赵翔.docx

上传人:p** 文档编号:740680 上传时间:2024-02-26 格式:DOCX 页数:33 大小:738.31KB
下载 相关 举报
MMCSD卡驱动程序的设计通信10123赵翔.docx_第1页
第1页 / 共33页
MMCSD卡驱动程序的设计通信10123赵翔.docx_第2页
第2页 / 共33页
MMCSD卡驱动程序的设计通信10123赵翔.docx_第3页
第3页 / 共33页
MMCSD卡驱动程序的设计通信10123赵翔.docx_第4页
第4页 / 共33页
MMCSD卡驱动程序的设计通信10123赵翔.docx_第5页
第5页 / 共33页
MMCSD卡驱动程序的设计通信10123赵翔.docx_第6页
第6页 / 共33页
MMCSD卡驱动程序的设计通信10123赵翔.docx_第7页
第7页 / 共33页
MMCSD卡驱动程序的设计通信10123赵翔.docx_第8页
第8页 / 共33页
MMCSD卡驱动程序的设计通信10123赵翔.docx_第9页
第9页 / 共33页
MMCSD卡驱动程序的设计通信10123赵翔.docx_第10页
第10页 / 共33页
亲,该文档总共33页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《MMCSD卡驱动程序的设计通信10123赵翔.docx》由会员分享,可在线阅读,更多相关《MMCSD卡驱动程序的设计通信10123赵翔.docx(33页珍藏版)》请在第壹文秘上搜索。

1、ARM嵌入式系统课程设计-MMC/SD卡驱动程序设计班级:通信100l学号:3100601023:翔指导老师:清华2012. 6. 30课程设计时间:2013.6.24大学第一章引言1.1课程设计目的O第二章课程设计平台构建与流程11.1 嵌入式系统开发平台构建11.2 课程设计流程11.3 课程设计硬件结构与工作原理1第三章BOOtlOader移植与下载33. 1源代码安装33.1 源代码分析移植与编译33.2 下载4第四章LinUX核移植与下载54. 1LinUX核源代码安装54.2LinUX核源代码分析与移植64.3LinUX核编译与下载6第五章课程设计功能模块驱动程序设计145. 1M

2、MC/SD卡模块注册初始化:145. 2设备文件操作接口定义155. 3MMC接口初始化155.1 GPIO初始化函数165.2 SD移除操作函数175. 6读数据块操作175.7写数据块操作18第六章根文件系统建立与文件系统下载206. 1根文件系统分析206.2 文件系统映像文件生成206.3 文件系统下载216.4 功能模块运行与调试23第七章完成课堂上布置的三个思考题25第八章课程设计总结与体会278.1课程设计中遇到的问题以与解决方法278.2总结和体会27第一章引言1.1 课程设计目的1) 了解PXA27X微处理器GPlO的功能2) 了解MMC卡驱动程序的架构与编程方法3)掌握MM

3、C卡的使用方法1.2 课程设计任务与要求1)理解基于LinUX的嵌入式系统交叉开发环境,对嵌入式系统的开发流程有详细的了解;2)掌握开发工具链的构建方法,能独立进行系统开发操作;3)掌握LinUX的常用命令,在IinUX系统下能熟练的使用这些常用命令;4)熟悉IinUX核的知识以与原理,掌握定制LinUX核的方法;5)基于LinUX操作系统,以与XSBaSe270ARM实验开发平台一套,把MMC存储卡挂载目标板上并进行文件的复制操作。第二章课程设计平台构建与流程2.1 嵌入式系统开发平台构建1) 装有LinllX操作系统的PC机一台;2) XSBase270ARM实验开发平台一套3) MMC存

4、储卡一块2.2 课程设计流程1) BootIoader移植与下载2)Linux核移植与下载3)功能模块程序设计与交叉编译4)根文件系统建立与文件系统下载2.3 课程设计硬件结构与工作原理1)目标板的MMC卡硬件接口目标板的MMC/SD卡的硬件接口如图1.1所示,根据PXA27x的MMC/SD/SDIO控制器的信号功能以与PXA27x的GPlo的功能分配,命令控制线MMCMD与GPlOlI2相连,此时引脚GPIOlI2必须配置成转换功能1(AlternateFunction1)的输入或输出方式(具体参考PXA27X开发手册),时钟端MMCLK利用了通用10口GP1032转换功能1输出方式,4位总

5、线MMDATO到MMDAT3分别与GPI011KGPI0110.GPlOlO9和GP1092相连,都时使用了通用IO口的转换功能1的榆入或输出方式。图1.2为MMC/SD卡的供电电路图。图1.1目标板的MMC/SD卡的硬件接口VCC_5R232U102;-MMC-PWR-ENMIC5207C13O.1UFC12IOuFVlN VOUTSHDN BPGNDMMC PWR:C14O.1UF图1.2MMC/SD卡的供电电路图2) PXA270的MMC/SD/SDIO控制器PXA270的MMC/SD/SDIO控制器在访问PXA270处理器的软件与MMC存储堆和支持MMC、SD与SDIO通信协议之间充当

6、联结作用。PXA27x的MMC控制器协议规遵守多媒体卡系统规V3.2MultiMediaCardSystemSpecificationVersion3.2);MMCSDSDlo控制器采用标准的MMC传输协议或串行通信接口SPl协议模式。访问PXA270的软件使用MMC传输协议或SPl模式作为与MMC控制器通信的协议。目标板的SD驱动程序采用了MMC通信传输协议。3) MMC卡的通信协议主机与MMC卡的所有通信都是由主机发起,主机发出广播和点对点两种类型通信命令,在广播通信命令中,主机发出的命令被所有的卡接受,只有部分命令需要响应;而在点对点通信命令中,命令被发送到具体地址的卡中,并由该卡对所接

7、受的命令做出响应。第三章Bootloader移植与下载3.1 源代码安装先将D:emdorEELiod_V4_SDK目录下的Linux-2.4复制到虚拟机里root的主文件夹中,然后用如下指令进行解压:rootubuntu:-#IsDesktopHBHInfsroot公共的视Ml文档音乐ftpminicomogsetQTEenv.sh模板BB片下依桌面ootUbUntU:#cdLinux-2.4rootubuntu:Linux-2.4#Isroot(ubuntu:Linux-2.4#cdBootloaderrootubuntu:Bootloader#ISBoot-XSBase27.tar.gz

8、rootubuntu:Bootloader#tarzxvfBoot-XSBase27.tar.gzBoot-XSBase27/利用上述命令解压后,bootloader源代码解压到当前目录中BooLXSBase270文件夹中。3,2源代码分析移植与编译在解压的目录里进行make编译。rootIocaIhostBootLoader!$cdBoot-XSBase270rootubuntu:Boot-XSBase270#makecIeanrootubuntu:Bootloader#cdBoot-XSBase27rootubuntu:Boot-XSBase276#makecleanInfileinclu

9、dedfromcontest.c:l:include/stdio.h:7:warning:conflictingtypesforbuilt-infunction/putcrootiIbUntu:BootXSBase278#InakerootIocaIhostBoot-XSBase270$makerootubuntu:BootXSBase278#makeClean编译完成后,在当前目录下会生成bootloader映象文件boot。3.3下载打开实验台电源,启动H-JTAG和H-FlaSher,在H-FlaSher中装载配置文件pxa270.hfc,点击PrOgramming中的CheCk,Scr

10、FiIe选择D:emdorEELiod_V4_SDKLinu-2.4images中的boot文件,点击PrOgram,烧写成功后点击Verify校脸。4.1 第四章LinUX核移植与下载4.2 1.inUX核源代码安装核解压rootgubuntu:-#IsDesktopH11fsroot公共的视频文档音乐ftpminicom.logsetQTEenv.sh模板BB片下黄桌面rootubuntu:-#cdLinux-2.4rootubuntu:Linux-2.4#Isrootubuntu:Linux-2.4#cdBootloaderrootubuntu:Bootloader#IsBoot-XSB

11、ase27.tar.gzrootubuntu:Bootloader#tarzxvfBoot-XSBase270.tar.gz1.inUX核源代码分析与移植1.inUX提供三个不同的命令进行LinUX的配置,效果完全一样:makeconf i g控制台命令行方式配置命令make menuconf i g文本菜单方式配置命令makexconf i gX窗口图形界面方式配置命令其他部分命令:Make mrproper命令清除所有的旧的配置和旧的编译目标文件等。Make dep命令搜索LinUX编译输出与源代码之间的依赖关系、并生成依赖文件。Make cIean清除以前构造核时生成的所有目标文件、模块

12、文件和临时文件。Make zImage编译LinUX核,生成压缩的核映像文件。4.3 3LinUX核编译与下载D核解压root(aubuntu:*#cdtmprootubuntu:tmp#Isorbit-rootssh-BpZKUh1536vmware-rooteyring-16YzTppulse-vrwfNI5pSMMH*EnableLoadablemoduleSupport利用模块可将不常用的设备驱动或功能作为模块放在核外部,必要时动态地调用。操作结束后从存中删除,这样可以有效地使用存,同时也可减小了核的大小。模块可以自行编译并具有独立的功能,即使需要改变模块的功能,也不用对整个核进行修改。文件系统,设备驱动,二进制格式等很多功能都支持模块。一定要选择(按空格键)SetversioninformationonaIISymboIsformodules利用这个功能能够让核使用其它

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 通信/电子 > 电子电气自动化

copyright@ 2008-2023 1wenmi网站版权所有

经营许可证编号:宁ICP备2022001189号-1

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。第壹文秘仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知第壹文秘网,我们立即给予删除!