欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOC文档下载  

    毕业设计(论文)基于mini2440的MP3音乐播放器.doc

    • 资源ID:2392947       资源大小:5.79MB        全文页数:108页
    • 资源格式: DOC        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    毕业设计(论文)基于mini2440的MP3音乐播放器.doc

    项目组号 9 密 级 公 开 X X X X X X X X X X X学校二一一届毕业设计文档 项 目 名 称 基于mini2440的mp3播放器 专 业 嵌入式软件技术 指 导 教 师 项目组成员 二一一年六月 摘 要本文设计了一种基于mini2440的MP3音乐播放器。设计中采用广州友善之臂科技有限公司提供的mini2440进行控制,利用U盘和SD卡作为存储器芯片,通过mini2440上的6个按键来控制播放。由于Linux具有可移植度高、自由、免费等特性,最近几年,它在移动设备和个人电脑领域的应用也越来越广泛,因此我们选择Linux操作系统,本文就以linux系统的移植为核心来描述一个MP3播放器实现的整个过程。目 录前 言4第一章 系统方案设计与选型论证81.1 硬件设计方案81.2 软件设计方案10第二章 搭建嵌入式开发环境132.1 在windows中配置虚拟机132.2 在虚拟机中安装linux系统242.3其它常用工具的介绍与安装47 2.3.1 Linux下建立建立交叉编译环境.48 第三章 Linux系统移植513.1 Linux源码修改513.2 相关驱动移植643.2.1 按键驱动移植643.2.2 添加yaffs2文件系统到内核733.2.3 移植UDA1341音频驱动773.2.4 SD卡驱动移植823.2.5 USB驱动移植843.3 编译镜像883.4 构建文件系统88第四章 应用程序编程1014.1 madplay的下载与安装1014.2 基于Mini2440的按键控制108结束语110谢 辞111附 录112参考文献114前 言随着计算机技术、微处理器技术、电子技术、通信技术、集成电路技术的发展,嵌入式系统已成为计算机技术和应用领域的一个重要组成部分,嵌入式产品在人们的日常生活中也扮演着越来越重要的角色。目前,计算机和网络已经全面渗透到日常生活的每一个角落。对于我们每个人来说,需要的已经不再仅仅是那种放在桌上处理文档、进行工作管理和生产控制的计算机机器。任何一个普通人都可能拥有从小到大的各种使用嵌入式技术的电子产品,小到MP3、PDA等微型数字化产品,大到网络家电、智能家电、车载电子设备等。目前,各种各样的新型嵌入式系统设备在应用数量上已经远远超过了通用计算机。在工业和服务领域中,使用嵌入式技术的数字机床、智能工具、工业机器人、服务机器人正在逐渐改变着传统的工业生产和服务方式。MP3是嵌入式的最主要应用之一,高端的MP3已经不仅仅着眼于实现音乐播放这一简单功能,而是同时具备了文本浏览、图片浏览、甚至视频播放等强大功能。本文重点讨论了基于mini2440的MP3的功能的实现,包括开发环境建立、内核配置与编译、按键控制等一系列详细过程。近几年,嵌入式系统技术得到了广泛的应用,普适计算、无线传感器网络、可重构计算等新兴技术的出现又为嵌入式系统技术的研究与应用注入了新的活力。智能手机、信息家电、汽车电子、家用机器人嵌入式系统已“无处不在”。嵌入式系统是当今最热门的概念之一。作为一个系统,往往是在硬件和软件双螺旋式交替发展的支撑下逐渐趋于稳定和成熟,嵌入式系统也不例外。嵌入式系统的最初应用时基于单片机的。20世纪70年代单片机的出现,使得汽车、家电、工业机器、通信装置以及成千上万种产品可以通过内嵌电子装置来获得更佳的使用性能,更容易使用、更快、更便宜。这些装置已经初步具备了嵌入式的应用特点,但是这时的应用只是使用8位的芯片,执行一些单线程的程序,还谈不上系统的概念。从20世纪80年代早期开始,嵌入式系统的程序员开始用商业级的“操作系统”编写嵌入式应用软件,这使得开发人员可以进一步缩短开发周期,降低开发成本并提高开发效率。1981年,Ready System开发出世界上第一个商业嵌入式实时内核(VTRX32)。这个实时内核包含了许多传统操作系统的特征,包括任务管理、任务间通信、同步与相互互斥、中断支持和内存管理等功能。此后,一些公司也纷纷推出了自己的嵌入式操作系统,如Integrated System Incorporation(ISI)的PSOS、WindRiver的VxWorks和QNX公司的QNX等。这些嵌入式操作系统都具有嵌入式的典型特点:它们均采用占先式的调度,响应的时间很短,任务执行的时间可以确定;系统内核很小,具有可裁剪性、可扩充性和可移植性,可以移植到各种处理器上;较强的实时性和可靠性,适合嵌入式应用。这些嵌入式实时多任务操作系统的出现,使得应用开发人员从小范围的开发中解放出来,同时也促使嵌入式有了更为广阔的应用空间。20世纪90年代以后,随着对实时性要求的提高,软件规模不断上升,实时内核逐渐发展为实时多任务操作系统(RTOS),并作为一种软件平台逐步成为目前国际嵌入式操作系统的主流。这时更多的公司看到了嵌入式系统的广阔的发展前景,开始大力发展自己的嵌入式操作系统。除了上面的几家老牌公司以外,还出现了Palm OS、Windows CE、嵌入式Linux、Lynx、Nucleus以及国内的Hopen、Delta OS等嵌入式操作系统。随着嵌入式技术的发展前景日益广阔,相信会有更多的嵌入式操作系统软件出现。根据IEEE(国际电气和电子工程师协会)的定义,嵌入式系统是“控制、监视或者辅助设备、机器和车间运行的装置”(原文为devices used to control,monitor,or assist the operation of equipment,machinery or plants)。这主要是从应用上加以定义的,从中可以看出嵌入式系统是软件和硬件的综合体,还可以涵盖机械等附属装置。不过,上述定义并不能充分体现出嵌入式系统的精髓。目前,国内一个普遍被认同的定义是:以应用为中心、以计算机技术为基础,软硬件可剪裁,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。一般而言,嵌入式系统的构架可以分成4个部分,即处理器、存储器、输入/输出(I/O)和软件(由于多数嵌入式设备的应用软件和操作系统都是紧密结合的,在这里对其不加区分,这也是嵌入式系统和Windows系统的最大区别)。从前面对嵌入式系统所作的定义可以看出嵌入式系统的几个重要特征。 (1) 系统内核小,由于嵌入式系统一般应用于小型电子装置,系统资源相对有限,所以内核较之传统的操作系统要小得多。例如ENEA公司的OSE分布式系统,内核只有5KB,而Windows的内核则要大得多。 (2) 专用性强。嵌入式系统的个性化很强,其中的软件系统和硬件的结合非常紧密,一般要针对硬件进行系统的移植,即使在同一品牌,同一系列的产品中也需要根据系统硬件的变化和增减不断进行修改。同时针对不同的任务,往往需要对系统进行较大更改,程序的编译下载要和系统相结合,这种修改和通用软件的升级是完全不同的概念。 (3) 系统精简。嵌入式系统一般没有系统软件和应用软件的明显区别,不要求其功能设计及实现上过于复杂,这样一方面利于控制系统成本,同时也利于实现系统安全。 (4) 高实时性的操作系统软件是嵌入式软件的基本要求。而且软件要求固化存储,以提高速度。软件代码要求高质量和高可靠性。 (5) 嵌入式软件开发要想走向标准化,就必须使用多任务的操作系统。嵌入式系统的应用程序可以没有操作系统而直接在芯片上运行;但是为了合理地调度多任务,利用系统资源、系统函数以及专家库函数接口,用户必须自行选配RTOS开发平台,这样才能保证程序执行的实时性、可靠性,并减少开发时间,保障软件质量。嵌入式系统的应用领域主要有以下几个方面:(1) 工业控制。基于嵌入式芯片的工业自动化设备具有很大的发展空间,目前已经有大量的8位、16位、32位嵌入式微控制器应用于数控机床、电力系统、电网安全、电网设备检测、石油化工系统等领域。就传统的工业控制产品而言,低端型往往采用的是8位单片机,但是随着技术的发展,32位、64位的微处理器逐渐成为工业控制设备的核心,在未来几年内必将获得更大的发展。(2) 交通管理。在车辆导航、流量控制、信息检测与汽车服务方面,嵌入式系统技术已经获得了广泛的应用,内嵌GPS模块、GSM模块的移动定位终端已经在各种运输行业获得了成功的使用。目前GPS设备已经从尖端产品进入了普通百姓的家庭,很多私人汽车上都配备了GPS导航和定位设备。(3) 信息家电。信息家电将成为嵌入式系统最大的应用领域,冰箱、空调等的网络化、智能化将引领人们的生活步入一个崭新的空间。即使不在家里,也可以通过电话线、网络进行远程控制。在这些设备中,嵌入式系统将大有用武之地。(4) 家庭智能管理系统。水、电、煤气表的远程自动抄表和安全防火、防盗系统,其中嵌有的专用控制芯片将代替传统的人工检查,并实现更高、更准确和更安全的性能。目前在服务领域中,一些手持设备已经体现出了嵌入式系统的优势。(5) POS网络及电子商务。公共交通无接触智能卡发行系统、公用电话卡发行系统、自动售货机、各种智能ATM终端将全面进入人们的生活,到时手持一卡就可以行遍天下。(6) 环境监测。环境监测包括水文资料实时监测、防洪体系及水土质量检测、堤坝安全、地震监测网、实时天气信息网、水源和空气污染监测。在很多环境恶劣、地矿复杂的地区,嵌入式系统将实现无人监测。(7) 机器人。嵌入式芯片的发展将使机器人在微型化、高智能方面优势更加明显,同事会大幅度降低机器人的价格,使其在工业领域和服务领域获得更广泛的应用。信息时代、数字时代的到来为嵌入式产品应用带来了巨大的发展契机,为嵌入式市场展现了美好的前景,从中我们可以看出嵌入式系统应用未来的发展趋势。(1) 为设备网络通信提供标准接口。为适应嵌入式分布处理结构和应用上网需求,面向21世纪的嵌入式系统要求配备标准的一种或多种网络通信接口。(2) 支持小型电子设备实现小尺寸、微功耗和低成本。为满足这种特性,要求嵌入式产品设计者相应降低处理器的性能,限制内存容量和复用接口芯片。(3) 提供精巧的多媒体人机界面。嵌入式设备之所以为亿万用户乐于接受,重要原因之一是它们对使用者的亲和力以及优美的人机交互界面。(4) 嵌入式网络。随着信息时代的到来,Internet技术已进入人们日常生活中的各个领域,嵌入式网络应运而生。从而在更好的利用Internet庞大的信息资源的同时,也实现了嵌入式系统功能方面的一个飞跃。第一章 系统方案设计与选型论证1.1硬件设计方案Ø 方案一:采用高性能单片机作为主控平台,由于单片机自带的数据存储或是程序存储区一般大小只有几十KB,已经很难满足存储MP3歌曲的需要,并且在单片机的数据存储区或是程序存储区,写入数据十分不方便,因此我们选择用SD卡作为外存储设备,SD卡的容量大,一般在几百兆到几个G不等,并且价格低廉,是大容量存储设备的首选,SD卡采用SPI的通信方式与单片机相连,单片机从SD卡读取数据后,直接送至音频解码芯片进行解码,然后在音频解码电路中进行解码输出,同时,单片机需通过HD7279外接键盘,并设计定时器中断来定时扫描键盘,以实现通过键盘与用户的交互,来控制音频输出。为了实时显示相关MP3歌曲播放信息,如歌曲名,歌曲长度等,通过外接液晶屏来实现。相关系统框图如图1.1所示。SD卡大容量存储设备高性能单片机液晶屏显示键盘输入音频解码电路音箱输出图1.1 方案一系统框图Ø 方案二:采用mini2440开发板,mini2440是广州友善之臂科技有限公司开发的嵌入式系统开发平台,本开发板采用ARM9系列芯片S3C2440作为主控芯片,搭配3.2英寸液晶触摸屏,以及自带音频解码芯片,配有丰富的硬件接口,是当今最热门的开发开发平台之一。该开发板可以实现车载GPS,以及MP3音乐播放器,MP4视频播放器等高端消费电子产品。用本开发板实现MP3播放器的整体思路是,在移植操作系统的基础上,只需添加USB驱动或SD卡相关驱动和液晶触摸屏的相关驱动,便可以轻松挂载U盘或SD卡外设,实现U盘或SD卡中文件的快速读取,并通过相关软件设计出又好的图形用户接口,用户只需通过触摸屏幕,便可实现和平台的交互。并且,TQ2440开发板自带音频解码芯片UDA1341,能够完全胜任MP3文件的解码工作,该方案的系统框图如图1.2所示。SD卡或U盘大容量存储设备TQ2440开发板液晶触摸屏音频解码电路音箱输出显 示 输 出控 制 输 入图1.2 方案二系统框图Ø 方案论证:方案一硬件成本低廉,实现简单,但是单片机处理能力有限,对于高码率的MP3歌曲以及视频播放就显得力不从心。方案二硬件成本高,但是系统扩展性强,不只可以通过相关软件设计出友好的界面以实现MP3的歌曲播放,还可以进一步播放视频,甚至可以实现网页浏览等高端功能。综合比较以上三种方案,却顶采用方案二。1.2软件设计方案Ø 方案一:不带任何操作系统,在mini2440上直接开发基于硬件层的程序,程序中同时实现数据的读取、信息输出、指令输入、音频解码等工作。该方案同选择单片机作为硬件平台类似,但是因为ARM9芯片S3C2440的性能远远高于高性能单片机,所以完全能够完成高码率音频解码,以及信息输出等功能。软件系统结构如图1.3所示。系统硬件层数据读取显示输出控制输入音频解码图1.3 方案一 无操作系统的结构框图Ø 方案二:采用MicroSoft公司的Windows CE操作系统。Windows CE 关于 VC+ 5.0 开发系统嵌入式工具包,提供系统库、工具、文本和样本代码,以使 OEMS 能够对特定的硬件平台使 Windows CE 标准定制。在应用程序开发方面,使用标准Win32 API子集,很多Windows程序可以方便的移植到CE上,还支持.net等语言。在底层开发方面CE文档比较完善,MSDN提供了详细的参考资料,并且在应用程序开发方面,都有完善的IDE,开发难度低。结构框图如图1.4所示。标准开发板配置文件设备驱动BootLoadr板级支持包(BSP)图1.4 Win CE系统结构框图Ø 方案三:采用开源的Linux系统。Linux操作系统具有诸多优点,并且内核可裁剪,在满足系统要求的同时,具有高度的可移植性,由于嵌入式设备硬件平台的多样性,CPU芯片的快速更新,嵌入式操作系统要求支持常用的嵌入式CPU,如X86, ARM, MIPS, POWERPC等,并具有良好的可移植性。另外还需要支持种类繁多的外部设备。Linux支持以上几乎所有的主流芯片,并且还在不断的被移植到新的芯片上,嵌入式系统具有成本敏感性,处理器速度较低 ,存储器空间较少,这要求嵌入式OS体积小,速度快。Linux体系结构比较灵活,易于裁减,可以小到2M flash,4M RAM。基于Linux的操作系统结构框图如图1.5所示。系统硬件层设备驱动:SD卡、UDA1341系统内核应用层:Qt、madplay图1.5 Linux系统结构框图Ø 方案论证:方案一不需要移植系统,但是却要面对硬件层进行编程,必须了解所用硬件的所有接口信息和特性,所有控制程序必须自行编写,工作量大。方案二中采用的Windows CE系统,目前并没有免费版本,如需使用,则必须支付一定的费用,增加了系统开发成本。方案三采用开源的Linux系统,不需要额外支付系统费用,并且具有高度可移植性与可裁剪性,综上所述,确定采用方案三。第二章 搭建嵌入式开发环境2.1在windows中配置虚拟机由于Linux的兼容性差,目前很多常用软件并不支持在Linux平台上运行,这就导致如果直接安装Linux,那么在Linux环境中,将会有很多不便。因此,我们在此采用虚拟机下安装Linux的方案。虚拟机的工具我们选择Vmware Workstation。VMware Workstation 允许操作系统(OS)和应用程序(Application)在一台虚拟机内部运行。虚拟机是独立运行主机操作系统的离散环境。在 VMware Workstation中,你可以在一个窗口中加载一台虚拟机,它可以运行自己的操作系统和应用程序。你可以在运行于桌面上的多台虚拟机之间切换,通过一个网络共享虚拟机(例如一个公司局域网),挂起和恢复虚拟机以及退出虚拟机 这一切不会影响你的主机操作和任何操作系统或者它正在运行的应用程序。 VMware Workstation 是一款功能强大的桌面虚拟计算机软件,提供用户可在单一的桌面上同时运行不同的操作系统,和进行开发测试部署新的应用程序的最佳解决方案。VMware Workstation 可在一部实体机器上模拟完整的网络环境,以及可便于携带的虚拟机器,其更好的灵活性与先进的技术胜过了市面上其他的虚拟计算机软件。对于企业的 IT 开发人员和系统管理员而言,VMware在虚拟网路,实时快照,拖曳共享文件夹,支持PXE 等方面的特点使它成为必不可少的工具。本设计中将选用VMware Workstation 6.5版本进行安装介绍。 首先安装虚拟机工作站,它的安装方法跟普通的软件安装没什么区别,只要双击可执行文件Vmware_WorkStation_6.5.exe,然后按照提示一步一步做就行了,下面主要介绍一下在虚拟机工作站中新建一个虚拟机以及在虚拟机上安装Linux系统的过程。1) 首先运行虚拟机工作站,如图2-1所示。 图2-1 虚拟机工作站2) 点击New Virtual Machine的图标,出现如图2-2所示的界面。 图2-2 新建虚拟机向导3) 选择Typical,点击Next,在出现的界面(图2-3)中单击Browse,选中所要安装系统的光盘映像文件(shrike-i386-disc1.iso)。图2-3 选择安装映像4) 点击Next,选择Linux选项,如图2-4所示。 图2-4 选择要安装的系统5) 点击Next,设置Linux的安装目录,如图2-5所示。 图2-5 设置安装目录6) 点击Next,设置虚拟机占用的最大硬盘空间,默认为8G,如果你的主机硬盘够大,可适当设大一点,免得开发过程受硬盘空间限制,此处将其设置为20G,如图2-6所示。 图 2-6 设置虚拟机硬盘最大容量7) 单击Next,进入2-7所示的界面,可以看到硬盘容量是20G,默认的内存大小是512M,网络连接方式是NAT,还有CD/DVD驱动、USB控制器等,如果不需要更改这些配置或者增加其他的硬件设备,到这一步就可以单击“Finish” 图2-7 配置向导完成界面如果还更改配置(如改变内存大小),或者增加一个硬件设备(如串口),那就单击“Customize Hardware”,这是会出现如图2-8所示的配置界面,下面将各部分的配置截图做如下说明。Ø 内存配置。内存配置成512M差不多了,不过要配得比你主机的内存小,如果你的主机内存为2G,这里配置1G左右就行了(如图2-8所示)。 图2-8 内存配置Ø 在虚拟机的光驱中加入虚拟机系统的安装映像。在虚拟机的光驱中加入虚拟机系统的安装映像就和在无聊主机的光驱中插入系统安装光盘是一个概念,这一步需要勾上“Connect at power on”选项,如图2-9所示。 图2-9 安装映像配置Ø 配置虚拟机的网络连接方式。网络连接方式共有四种可以选择,选择NAT,如图2-10所示。 图2-10 网络连接方式配置Ø 增加一个串口设备,单击“Add”选项,然后选择“Serial Port”,单击“Next”,选中“Use physical serial port on the host”选项(如图2-11所示),再单击Next,在“physical serial port”那一栏选择“COM1”,单击“Finish”(如图2-12所示)就为虚拟机增加了一个串口设备,这个设备使得虚拟机系统可以使用宿主机的串口1与目标机进行通信。 图2-11 串口配置1图2-12 串口配置2Ø 其他几项配置(USB Controller、Display、Processors)基本一般不用改,单击图2-12界面中的“Finish”完成新建虚拟机的过程,就可以进入Linux系统安装了。2.2在虚拟机中安装Linux系统Linux是一类Unix计算机操作系统的统称。Linux操作系统的内核的名字也是“Linux”。Linux操作系统也是自由软件和开放源代码发展中最著名的例子。严格来讲,Linux这个词本身只表示Linux内核,但在实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU 工程各种工具和数据库的操作系统。Linux得名于计算机业余爱好者Linus Torvalds。简单地说,Linux是一套免费使用和自由传播的类Unix操作系统,它主要用于基于x86系列CPU的计算机上。这个系统是由世界各地的成千上万的程序员设计和实现的。其目的是建立不受任何商品化软件的版权制约的、全世界都能自由使用的Unix兼容产品。REDHAT创建于1993年,是目世界上最资深的Linux和开放源代码提供商,同时也是最获认可的Linux品牌。Red Hat Linux是商业上运作最成功的一个Linux发行套件,普及程度很高,由Red Hat 公司发行。Red Hat Linux有一个图形化的安装程序Anaconda,目的是为了令新手更容易使用。同时,它有一个内建的防火墙设置工具Lokkit。由Red Hat Linux 8.0开始,UTF-8成为了系统默认的字符编码设定。这对于英语用户来说无甚影响,但当用到ISO/IEC 8859-1字符集的较高位置字符时,编码方式则完全不同。对于部分法语或瑞典语的用户来说,这是一个冒犯性的举动,因为他们的旧文件系统在这个设定下有可能变得不稳定。这问题可以透过移除"LANG"设定中的".UTF-8"来解决。本设计中用到的linux系统为RedHat linux9.0版本,下面以图解的方式介绍一下RedHat linux9.0的安装全过程。打开虚拟机,单击左上方的启动按钮(绿色的三角形),如下图所示。接下来就将进入RedHat Linux9.0的安装界面,如下图所示。第1步:第一步:选择安装方式。 1、图形安装(直接回车) 2、文本安装(输入 linux text)第2步:选择“OK”为检查光盘 选择“Skip"跳过检查。我确认我的光盘是好的,我跳过。第3步:点击next!第4步:选择安装语言为简体中文!第5步:这一步,是让你选择你的键盘, 选US(美式键盘),点击下一步!第6步:选择鼠标,它会自动检测出你鼠标的接口类型,点击下一步!第7步:选择安装类型,这里我们选择“服务器”其实只要你懂,你选择哪种类型都行,点击下一步!第8步:因为大家是跟着我做,所以不要担心你懂不懂!我们选择“手工分区”!第9步:如果你的硬盘只有一个分区,你就会看到如下界面,如不是,你可以点删除它们!下面我们点“新建”!第10步:点“新建”让你添加一个分区!我们首先添加一个,/boot分区(想当于windows下的引导分区)类型为ext3(相当于FAT32、NTFS)大小为100 ,模仿我的图就对了!第11步:再点“新建”我们建一个swap文件系统(内存交换区)在“文件系统类型”那一栏选择 “swap” 大小:你的内存 512*2=1024,设这里要注意一下!大小要设成你内存大小的双倍,但要考虑到以后你要加内存,我们就设高一点,如果你以后内存的极限为2G*2=4096,那么我们就提前设成4096!不过linux是低配置,高性能的操作系统!第12步:下面再建一个 “/” linux下的根分区 这里设成“1000”!第13步:上面新建的几个分区为linux必须的分区,下面我们就把剩下的硬盘分区,分成一个分区! 这里要注意的是:/mnt/linux 这个路经,是你的分区路经(相当于你的E盘一样),选择全部可用空间!第14步:上面所作的步骤,建好了所有的分区。 如果你照着我的话,应该是如下图一样! 下一步第15步:点击下一步!第16步:网络配置,点编辑!第17步:取消“使用DHCP进行配置”其它的按照说明填写!第18步:如图!只做为参考!第19步:选择“无防火墙”!如果你以后要设“防火墙”你可以手动写规则!第20步:点击下一步!第21步:点击下一步!第22步:这里设定“root”超级用户的密码后,点击下一步!第23步:如果你只想做电影服务器和FTP服务器!你把所有的“都去掉,只留下“FTP服务器”和“开发工具”前面的“”。 我们只安装“FTP服务器”(用来传电影)和“开发工具”(开发包,是linux下经常用到的!)第24步:点击下一步!第25步:等待安装!第26步:换第二张光盘!第27步:换第三张光盘!第28步:随便你选不选择!第29步:完成安装了!第30步:linux的启动界面!2.3其它常用工具的介绍与安装其它常用的软件包括arm-linux-gcc-4.3.2、Qt、Qtopia、Busybox等。2.3.1 Linux下建立交叉编译环境在Linux平台下,要为开发板编译内核,文件系统,图形界面,bootloader,还有其他一些应用程序,均需要交叉编译工具链。这里介绍下在RedHat9.0操作系统下叉编译工具链的建立过程。操作环境:操作系统:RedHat9.0(主机系统为winXP,在虚拟机Vmware下安装RedHat9.0)交叉编译器:arm-linux-gcc-4.3.2操作步骤:1.下载arm-linux-gcc-4.3.2.tgz到任意的目录下,进入这个文件夹$ sudo tar xvzf arm-linux-gcc-4.3.2.tgz C /或者在root用户权限下:# tar xvzf arm-linux-gcc-4.3.2.tgz C /注意:C 后面有个空格,并且C是大写的,它是英文单词“Change”的第一个字母,在此是改变目录的意思。执行该命令,将把 arm-linux-gcc 安装到/usr/loca/arm/4.3.2 目录。2. 修改环境变量,把交叉编译器的路径加入到PATH,为了可以方便使用arm-linux-gcc编译器系统, 把arm-linux工具链目录加入到环境变量PATH中。方法一:修改/etc/bash.bashrc文件(此文件只对当前用户适用)$sudo gedit /etc/bash.bashrc在最后加上export PATH$PATH:/usr/local/arm/4.3.2/bin方法二:修改/etc/profile文件(此文件属于系统级别的环境变量,设置在里面的东西对所有用户适用):$sudo gedit /etc/profile增加路径设置,在末尾添加如下,保存/etc/profile文件:export PATH$PATH:/usr/local/arm/4.3.2/bin方法三:修改/etc/environment文件$sudo gedit /etc/environment原文件应为:PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin: /usr/games将其改为PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/arm/4.3.2/bin保存退出即可方法四:修改/root/.bashrc把编译器路径加入系统环境变量$sudo gedit /root/.bashrc在最后加上export PATH$PATH:/usr/local/arm/4.3.2/bin设置环境变量后,立即使新的环境变量生效,不用重启电脑:对应方法一:$ source /root/.bashrc对应方法二:$ source /etc/profile方法三:立即生效方法四:重启或注销一下(不是winXP)3. 在命令行输入arm-linux-gcc v,会出现如下信息,这说明交叉编译环境已经成功安装。4.编译Hello World程序,测试交叉工具链写下下面的Hello World程序,保存为hello.c#include“stdio.h”#include“stdlib.h”int main()printf("Hello World!n");return 0;执行下面的命令:$ arm-linux-gcc -o hello hello.c源程序有错误的话会有提示,没有任何提示的话,就是通过了,就可以下载到ARM目标板上运行了! 接着可以输入file  hello的命令,查看生成的hello文件的类型,要注意的是生成的可执行文件只能在ARM体系下运行,不能在其于X86的PC机上运行,至此交叉编译环境已经建立好了。第三章 Linux系统移植搭建Linux系统,首先需要在相关网站获得相应源码,下载得到的源码一般为通用源码,但是在一些个别方面仍不能完全匹配我们的硬件平台,所以得到源码后,首先要进行源码的修改,以做到与Mini2440开发板的完全匹配。源码修改完成后,就要对我们需要用到的硬件模块进行系统上的支持,也就是移植相应设备的驱动,详细过程下文一一给出。3.1 Linux源码修改自从Linux-2.6.31开始,Linux内核就已经官方支持了mini2440,但是官方的内核版本对Mini2440的支持比较有限,所以还是需要一定的改变。不过,随着内核的发展,相信支持的也会越来越全面的。1.移植内核的准备工作(1) 使用的环境    操作系统:虚拟机Vmware6.5.0+RedHat9.0    交叉编译工具使用:友善之臂的arm-linux-gcc-4.3.2(2) 获取内核    获取内核的网址是:http:/www.kernel.org/pub/linux/kernel/    可以看到你里面有各种版本的Linux,下载现在要移植的Linux-2.6.32.2版本,如果Linux可以上网的话,可以使用wget http:/www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.32.2.tar.gz,命令直接在当前的目录下进行下载。(3) 交叉编译工具    交叉编译工具使用友善之臂的arm-linux-gcc-4.3.2,他们提供的编译器是符合EABI标准的编译器。其中关于EABI的介绍可以参看下面的连接:(4) 硬件平台    友善之臂的Mini2440,NandFlash64M,NorFlash2M的。NandFlash容量的不同,在后边制作根文件系统的时候会有所不同。2. 修改内核以适应本开发板   (1)假设我们把内核文件下载到了opt/kernel/目录下,进行解压操作。cd opt/kernel# tar -zxvf linux-2.6.32.tar.gz得到Linux-2.6.32文件夹(2)修改Makefile文件首先,我们要使Linux的默认的平台是arm平台,进入Linux-2.6.32文件夹中,修改此目录下的Makefile文件。大约在182行,修改成下面的代码,使其平台是ARM平台,交叉编译是arm-linux-.export KBUILD_BUILDHOST := $(SUBARCH)ARCH        ?= arm            /使用的目标平台CROSS_COMPILE    ?= arm-linux- /使用的交叉编译器,这里使用的系统默认的接下来,测试一下Linux内核是否可以顺利的编译通过。make s3c2410_defconfig /使用缺省的配置文件,也就是SMDK2440的缺省配置文件# make   /编译时间大约在20分钟左右(3)关于机器码   很关键的一点是,在启动内核时,是根据bootloader传入的机器码(MACH_TYPE),来决定应启动那种目标平台,在这一版本中,友善之臂申请了字节的机器码1999,这和先前的2.6.29版本的内核,还是有所区别的。在文件opt/kernel/linux-2.6.32.2/arch/arm/tools/mach-types中。exeda            MACH_EXEDA        EXEDA            1994mx31sf005        MACH_MX31SF005        MX31SF005        1995f5d8231_4_v2        MACH_F5D8231_4_V2    F5D8231_4_V2        1996q2440            MACH_Q2440        Q2440            1997qq2440            MACH_QQ2440        QQ2440            1998mini2440        MACH_MINI2440        MINI

    注意事项

    本文(毕业设计(论文)基于mini2440的MP3音乐播放器.doc)为本站会员(laozhun)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开