分享
分销 收藏 举报 申诉 / 51
播放页_导航下方通栏广告

类型基于ARM的音乐播放器的设计与实现.doc

  • 上传人:a199****6536
  • 文档编号:3337313
  • 上传时间:2024-07-02
  • 格式:DOC
  • 页数:51
  • 大小:490.54KB
  • 下载积分:14 金币
  • 播放页_非在线预览资源立即下载上方广告
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    基于 ARM 音乐 播放 设计 实现
    资源描述:
    摘 要 多媒体技术融计算机、声音、文本、图像、动画、视频和通信等多种功能于一体,是当今信息技术领域发展最快、最活跃的技术,是新一代电子技术发展和竞争的焦点。嵌入式设备与多媒体技术的融合使得PDA,智能手机,平板等智能终端得到快速发展。未来,智能终端与物联网的结合将推动嵌入式设备快速发展。所以,基于嵌入式终端的应用前景广阔。 设计目的是在嵌入式平台上开发一款基于开源Linux操作系统的多媒体播放器,它以mplayer作为核心播放程序,将支持更多的文献播放格式甚至可以与PC机上的媒体播放器相媲美。 多媒体播放器的硬件部分:以S3C2440开发板为硬件平台,它的外围设备可以外插U盘作为存储器、TFT-LCD触屏、key23键盘,以及外接耳机作音频设备。由于播放器开发是基于成熟的硬件平台,重要工作集中在软件部分,重要涉及:搭建开发环境,配置编译mplayer可执行程序,编写触屏驱动,及key23驱动,编写主控程序等等,最后将程序移植安装到开发板,完毕基于Linux的嵌入式播放器的设计。通过测试,播放器符合设计规定。 关键词: 触屏,移植,线程,嵌入式 Abstract The multimedia technology involves sound, text, image, animation, video and communications and other functions. Information technology is one of fastest growing technologies. Obviously, it is a new generation of electronic technology development and the focus of competition. The integration of embedded equipment and multimedia technology contributes a rapid development for PDA, smart phones, slab intelligent terminal. In the future, intelligent terminal will promote the network embedded equipment rapid development. So, the application that based on embedded terminal has a bright future. The purpose of this design is to design multimedia player on an embedded platform by using the open source in Linux operating system. It is take mplayer as core broadcast program, which will support more file format, and even is more comparable with the PC media players. The hardware part of Multimedia player takes S3C2440 development board for the hardware platform, which use the USB disk, tft-lcd touch screen, key23 keyboard, and external earphone for audio equipment. Because the player development is based on mature hardware platform, the main work focused on software part, which main includes these works, such as the development environment set up, the compiled configuration of mplayer, the drive of touch screen and key23, and the program of master control, etc. Finally, the developed program can be installed to development board based on the Linux. After testing, player can meet the design requirements. Keywords: touch screen; transplant; thread; embedded; 目录 第1章 绪论 1 1.1 选题背景 1 1.2 研究意义 2 第2章 需求分析与方案制定 4 2.1 功能性分析 4 2.2 可行性分析 4 2.3 设计的重要目的任务 5 2.4 系统方案制定 5 2.5 本章小结 5 第3章 系统功能模块介绍 6 3.1 S3C2440开发板简介 6 3.2 S3C2440芯片特性简介 6 3.2.1 S3C2440芯片参数 7 3.2.2 内核结构 7 3.2.3 总线结构 7 3.2.4 解决器通用模块1 8 3.2.5 解决器通用模块2 8 3.2.6 存储器接口 9 3.2.7 外围总线接口 9 3.2.8 人机接口 9 3.3 LCD模块介绍 9 3.4 软件模块介绍 10 3.5 本章小结 11 第4章 硬件系统 12 4.1 开发板系统的硬件框架 12 4.2 LCD模块原理 12 4.2.1 A/D转换器 12 4.2.2 触摸屏原理结构 13 4.3 系统硬件介绍 14 4.4 各个外设接口 14 4.4.1 JTAG接口 14 4.4.2 USB_UART转换接口 15 4.4.3 RS232接口 15 4.4.4 USB主接口 15 4.4.5 USB从接口 16 4.4.6 AD输入接口 16 4.4.7 复位系统 16 4.5 本章小结 16 第5章 系统软件设计 17 5.1 系统软件设计流程图 17 5.2 Bootloader内核的配置 17 5.2.1 Bootloader 17 5.2.2 配置编译bootloader---u-boot 18 5.2.3 裁剪编译linux-2.6.34(编译内核) 19 5.3 制作根文献系统 19 5.4 烧录镜像文献 20 5.4.1 烧录Bootloader 20 5.4.2 烧录Linux2.6内核和根文献系统 22 5.5 安装交叉编译编译工具链 24 5.6 对Mplayer源码进行重新配置编译 24 5.7 编写主程序(包含触屏驱动) 25 5.8 设计人机交互界面 25 5.9 程序移植 26 5.10 本章小结 26 第6章 结论 27 参考文献 28 致谢 30 第1章 绪论 1.1 选题背景 多媒体是全面的综合性的信息资源,它经常指信息表达媒体的多样化,常见的形式有文字、资料、图形、影像、动画、视讯、声音、特殊效果,再经由电脑表现出来,它能用来达成信息传播中的任何媒体资源。 多媒体技术的产生和发展,是技术和应用发展的必然。在信息社会,人们迫切希望计算机能以人类习惯的方式提供信息服务,因而多媒体技术应运而生。它的出现,使得原本“面无表情”、“死气沉沉”的计算机有了一副“生动活泼”的面孔。用户不仅可以通过文字信息,还可以通过直接看到的影像和听到的声音,来了解感爱好的对象,并可以参与或改变信息的演示。 一般而言,嵌入式系统的构架可以提成四个部分:解决器、存储器、输入输出(I/O)和软件,嵌入式系统目前最重要的组成部分。根据操作系统的工作特性,实时是指物理进程的真实时间。实时操作系统具有实时性,能从硬件方面支持实时控制系统工作的操作系统。其中实时性是第一规定,需要调度一切可运用的资源完毕实时控制任务,另一方面才着眼于提高计算机系统的使用效率,重要特点是要满足对时间的限制和规定。 嵌入式系统一般由嵌入式计算机系统和执行机构组成,嵌入式计算机系统是由硬件层、中间层、系统软件层和应用软件层组成的。执行机构也作为控制对象,它可以接受由嵌入式计算机系统发出的控制命令,执行所需的操作或任务。执行器可以很简朴,如手机上的微小型点击,手机在振动时机大开,也可以是非常复杂的,如SONY智能机器人集成以上的小型和微型控制电机,以及各种传感器,它可以执行各种复杂的动作和感情的各种状态信息。 嵌入式微解决器在世界上有超过1000种,30多个系列,其中的主流体系结构有ARM,MIPS,PowerPC上,X86和SH等。但不像全球PC市场,没有那种嵌入式微解决器可以主宰市场,就32个产品而言,有超过100种嵌入式微解决器。嵌入式微解决器的选择是由具体应用决定的。 这几年掀起的嵌入式系统的应用热潮重要有以下几种因素:一方面,芯片技术的发展,使一个单一的芯片具有更强的解决能力,并且集成多种接口已成为也许,许多芯片制造商焦点在这方面。另一方面,其因素在于应用需求,产品的可靠性,成本,更换为嵌入式系统的需求不断增长,从纯硬件实现的和使用通用计算机来实现的的应用中脱颖而出,成为令人关注的焦点 Linux以它的高效性和灵活性著称。它可以在PC计算机上实现所有的Unix特性,具有多任务、多用户的能力。Linux是在GNU公共许可权限下免费获得的,是一个符合POSIX标准的操作系统。Linux操作系统软件包不仅涉及完整的Linux操作系统,并且还涉及了文本编辑器、高级语言编译器等应用软件。它还涉及带有多个窗口管理器的X-Windows图形用户界面,如同我们使用Windows NT同样,允许我们使用窗口、图标和菜单对系统进行操作。 Linux之所以受到广大计算机爱好者的爱慕,重要因素有两个,一是它属于自由软件,用户不用支付任何费用就可以获得它和它的源代码,并且可以根据自己的需要对它进行必要的修改,无偿对它使用,无约束地继续传播。另一个因素是,它具有Unix的所有功能,任何使用Unix操作系统或想要学习Unix操作系统的人都可以从Linux中获益。 绝大多数基于Linux内核的的操作系统使用了大量的GNU软件,涉及了shell程序、工具、程序库、编译器及工具,尚有许多其他程序,例如Emacs。 大多数系统还涉及了像提供GUI界面的XFree86之类的曾经运营于BSD的程序。 软件可移植性指一种计算机上的软件转置到其它计算机上的能力(也可称作软件自动搬家)。软件移植是实现功能的等价联系,而不是等同联系软件可移植性的重要标志是:这类软件有个通用的标准文本;它们独立于具体的计算机。软件相对于具体计算机的独立性,从狭义上讲,是指可移植软件应独立于计算机的硬件环境;从广义上讲,可移植软件还应独立于计算机的软件,即高级的标准化的软件,它的功能与机器系统结构无关,可跨越很多机器界线。从一种计算机向另一种计算机移植软件时,一方面要考虑所移植的软件对宿主机硬件及操作系统的接口,然后设法用对目的机的接口代换之。因此,接口的改造容易与否,是衡量一个软件可移植性高低的重要标志之一。 多媒体已成为我们平常生活的重要组成部分,但一个优秀的播放器,却往往由于系统环境,不开源等问题,而不是被广泛认可、使用,这是我们的损失。因此,跨平台的多媒体播放器移植有很好的市场前景。 1.2 研究意义 未来对多媒体的研究,重要有以下几个研究方面:数据压缩、多媒体信息特性与建模、多媒体信息的组织与管理、多媒体信息表现与交互、多媒体通信与分布解决、多媒体的软硬件平台、虚拟现实技术、多媒体应用开发。 展望未来,网络和计算机技术相交融的交互式多媒体将成为21世纪多媒体发展方向。所谓交互式多媒体是指不仅可以从网络上接受信息、选择信息,还可以发送信息,其信息是以多媒体的形式传输。运用这一技术,人们可以在家里购物、点播自己喜欢的电视节目。21世纪的交互式多媒体技术的实现将会极大的改变我们的生活。 由于Linux是一套具有Unix所有功能的免费操作系统,它在众多的软件中占有很大的优势,为广大的计算机爱好者提供了学习、探索以及修改计算机操作系统内核的机会。 Linux不仅为用户提供了强大的操作系统功能,并且还提供了丰富的应用软件。用户不仅可以从Internet上下载Linux及其源代码,并且还可以从Internet上下载许多Linux的应用程序。可以说,Linux自身包含的应用程序以及移植到Linux上的应用程序包罗万象,任何一位用户都能从有关Linux的网站上找到适合自己特殊需要的应用程序及其源代码,这样,用户就可以根据自己的需要下载源代码,以便修改和扩充操作系统或应用程序的功能。 开源的特性也决定了它使用的人越多,程序进步越快的特点。我们可以预见在不久的将来,linux一定会大行其道,linux的强大的兼容性,可移植性也将发挥的淋漓尽致。 具有嵌入式系统设备统称嵌入式系统,如:手机,电子手表,多媒体播放器等,覆盖消费类电子产品,汽车电子,军用电子,生产,工业控制,通信,网络等领域。随着技术的进步,越来越高性能的嵌入式设备被广泛使用。操作系统是通过软件的运营带动硬件工作。然而,大部分的软件对操作系统有规定。 这就要进行软件的移植,使其在需要的其他操作系统下也能正常工作。在这种情况下,一个好的软件就不会仅仅局限于一个小领域,例如:把Iphone上的应用移植到其他平台上,从而改善我们的生活,促进技术进步的发展。 第2章 需求分析与方案制定 本章分析了设计需求,并对设计的可行性进行分析,阐述了设计的重要目的以及设计的大体流程,并最终制定了系统的实行方案。 2.1 功能性分析 用S3C2440开发板作为产品的主体,LCD Moduile V1.1作为一个控制面板,通过可触摸的LCD Moduile实现播放控制。 以u-boot作为bootloader,采用Linux2.6内核和yaffs格式的文献系统,核心媒体播放程序为MPlayer-1.0rc3,核心解码器为libmad1.7。可以实现绝大部分Mplayer的功能: 1) 实现市场上几乎所有流行的音频文献播放。 2) 可正常播放损坏了报头的AVI文献。 3) 可以解码大部分的网络流媒体文献。 4) 人性化的触屏操作。 2.2 可行性分析 随着人们的生活水平不断提高,精神资料的需求逐渐提高,多媒体已经成为生活中必不可少的一部分。各式各样的多媒体迅速充斥了我们的生活,现在,多媒体正在向便携个人多媒体发展。 我们生活中数字信息的数量在此后几十年中将急剧增长,质量上也将大大地改善。多媒体正在迅速的、意想不到的方式进入人们生活的多个方面,大的趋势是各个方面都将朝着当今新技术综合的方向发展。 他们可以归结为两大类:音频,视频。但是现在多媒体的格式越来越多,比较流行的多媒体格式就有十多种,他们音质画质参差不齐,便携式设备上可用的媒体播放器较PC上的应用尚有不小的差距。那些在电脑上运营的播放器经常由于操作环境等因素而不能在我们的机器上运营。这就凸显处软件移植的必要性,现在的手机大部分都带有嵌入式操作系统,这为我们软件的移植提供了一定限度的方便,我们完全可以把一款优秀的多媒体播放器软件如Mplayer移植到手机上,它几乎支持几乎所有的音频视频文献,方便我们享受多媒体的乐趣。 2.3 设计的重要目的任务 这次设计的重要任务是将一款Linux下的开源多媒体播放器Mplayer从电脑上移植到arm平台上,实现一款软件可以跨平台运营的播放器。 本设计重要研究了软件在不同平台上运营所需要的条件,以及达成触屏操作所需要的一系列规定,并研究了应用程序是如何进行不同程序及资源间调度配合。本次设计最终达成触屏控制软件实现软件在本来环境下的功能等效果。可以流畅播放多种格式的视频音频文献。 2.4 系统方案制定 本系统分为两大部分:软件部分,硬件部分。 软件部分包含通过arm交叉编译器编译生成的Mplayer可执行程序,libmad解码库,触屏驱动源代码,以及arm-linux-gcc交叉编译工具链,Windows自带的超级终端,linux操作系统,Bootloader,内核,根文献系统以及在Windows下的连接工具,烧录软件等。 硬件部分涉及S3C2440开发板,串口线,并口线,LCD触摸屏,5V变压器,带串、并口的PC机。 将bootloader,内核,根文献系统烧录到S3C2440开发板上,在pc机上完毕主控程序编写,和交叉编译工作,然后将程序序放到开发板上测试,运营。 2.5 本章小结 本章一方面对设计的功能进行分析,通过对开发环境以及开发语言的分析,得到的结论是开发环境完全可以支持设计的开发,接着对Mplayer的功能支持进行分析,结论是足以支持播放器的开发,最后在论证成功的情况下拟定了一套可行的系统的方案。 第3章 系统功能模块介绍 本章一方面具体的介绍了开发板的各个部件,然后介绍了三星的S3C2440芯片,并介绍了用于实现播放器人机界面的显示器及触摸屏,最后系统的介绍软件是如何实现相应功能的。 3.1 S3C2440开发板简介 S3C2440微解决器 电源 串口 USB 喇叭 复位 音量 触摸屏 这里所用的S3C2440嵌入式系统开发板功能比较强大,配备了完备的硬件资源和开发软件,开发板的结构如图3.1所示。 图3.1 开发板结构图 S3C2440A是韩国三星公司推出的16/32位RISC微控制器,其CPU采用的是ARM920T内核。 电源电路实现了5v直流输入到3.3v、1.8v、1.2v输出转换的功能,为板上各功能模组的正常工作提供所需电压。通讯接口部分,板上提供了以SPI、I2C、RS232异步串行接口、USB转串口接口、USB主/从通讯接口、太网接口等。多媒体的解决方面,开发板提供了TV输出、VGA接口、摄像头接口、耳机/喇叭输出接口、TFT显示输出接口,在非易失性存储器方面,板上提供了8M的Norflash和64M的Nandflash存储器,尚有SD卡接口,此外提供了SATA大容量硬盘接口,可以扩充存储空间。 3.2 S3C2440芯片特性简介 S3C2440芯片采用的是ARM920T的芯片结构,它的结构如图3.2所示。 图 3.2 芯片结构(ARM920T) 3.2.1 S3C2440芯片参数 S3C2440芯片的工作电压、操作频率、电源管理参数如下: 1) 具有PLL时钟发生器,主频最高可达533M。 2) 内核1.2V供电最高400M,1.3V供电最高533M。 3) 存储器支持1.8V、2.5V、3.0V、3.3V,I/O均支持3.3V供电。 4) s3c2440为单机器周期执行指令集。 具有电源管理功能,可以使系统以普通方式、慢速方式、空闲方式和掉电方式工作,减少产品功耗。 3.2.2 内核结构 内核结构具有如下特点: 1) 采用ARM920T内核,具有16KB指令Cache、16KB数据Cache和存储器管理单元MMU。 2) 指令高速存储缓冲器(I-Cache),数据高速存储缓冲器(D-cache)提高指令执行效率及数据存储效率,减少主存带宽和响应性带来的影响。 3) 加强的ARM体系结构MMU,用于支持winCE、linux等操作系统。 4) 内部高级微控制总线(AMBA)体系结构(AMB2.0,AHB/APB)。 3.2.3 总线结构 S3C2440芯片采用的是ARM920T结构,ARM920T的总线结构如图3.3所示。 图3.3 总线结构 3.2.4 解决器通用模块1 有60个中断源,可以设定1个为快速中断,其余为普通中断,有24个外部中断,可编程电平/边沿触发方式。1个看门狗定期器、5个定期器、9个UART、24个外部中断、4个DMA中断、2个RTC中断、2个ADC中断、1个IIC、2个SPI、1个SD、2个USB、1个LCD、1个触摸屏中断、1个电池故障、1个NAND、2个摄像头、1个AC97。 3.2.5 解决器通用模块2 3个通道的UART,带有16字节的TX/RX FIFO,支持IrDA1.0功能。8通道的10位A/D转换器,最高速率可达500kSPS、提供有触摸屏接口。具有130个通用I/O口。有4个具有PWM功能的16位定期器和1个16位内部定期器。看门狗定期器。 3.2.6 存储器接口 sram、sdram、norflash、NANDflash、外部存储器控制器,可扩展8组,每组128MB,总容量达1GB、支持NandFlash作为启动存储器及数据存储器、支持最高达256M的SDRAM存储器接口、支持NOR FLASH、SRAM存储器接口、4通道的DMA,并且有外部请求引脚。 3.2.7 外围总线接口 32位地址总线、8/16/32位可编程数据总线、控制总线,具有2通道的SPI、1个通道的IIC串行总线接口和1个通道的IIS音频总线接口,有2个USB主机总线端口,1个USB设备总线端口,兼容MMC的SD卡接口。 3.2.8 人机接口 带有四线电阻式触摸屏接口,有LCD控制器,支持4K色的STN和256K色的TFT,配置有DMA通道,支持多种屏幕尺寸,典型的屏幕尺寸有640*480,320*320,160*160,集成Camer摄像头控制器,具有日历功能的RTC。 3.3 LCD模块介绍 电阻式触摸屏是一种传感器,它将矩形区域中触摸点(X,Y)的物理位置转换为代表X坐标和Y坐标的电压。很多LCD模块都采用了电阻式触摸屏,这种屏幕可以用四线、五线、七线或八线来产生屏幕偏置电压,同时读回触摸点的电压。电阻式触摸屏基本上是薄膜加上玻璃的结构,薄膜和玻璃相邻的一面上均涂有ITO(纳米铟锡金属氧化物)涂层,ITO具有很好的导电性和透明性。当触摸操作时,薄膜下层的ITO会接触到玻璃上层的ITO,经由感应器传出相应的电信号,通过转换电路送到解决器,通过运算转化为屏幕上的X、Y值,而完毕点选的动作,并呈现在屏幕上。 原理:触摸屏包含上下叠合的两个透明层,四线和八线触摸屏由两层具有相同表面电阻的透明阻性材料组成,五线和七线触摸屏由一个阻性层和一个导电层组成,通常还要用一种弹性材料来将两层隔开。当触摸屏表面受到的压力(如通过笔尖或手指进行按压)足够大时,顶层与底层之间会产生接触。所有的电阻式触摸屏都采用分压器原理来产生代表X坐标和Y坐标的电压。分压器通过将两个电阻进行串联来实现的。上面的电阻连接正参考电压,下面的电阻接地。两个电阻连接点处的电压测量值与下面那个电阻的阻值成正比。为了在电阻式触摸屏上的特定方向测量一个坐标,需要对一个阻性层进行偏置:将它的一边接VREF,另一边接地。同时,将未偏置的那一层连接到一个ADC的高阻抗输入端。当触摸屏上的压力足够大,使两层之间发生接触时,电阻性表面被分隔为两个电阻。它们的阻值与触摸点到偏置边沿的距离成正比。触摸点与接地边之间的电阻相称于分压器中下面的那个电阻。因此,在未偏置层上测得的电压与触摸点到接地边之间的距离成正比。 触摸屏结构重要由6部分构成: 1) 信号输入通道 2) 触摸屏接口 3) 8转1切换开关 4) 中断信号发生器 5) A/D转换器 6) 控制逻辑 3.4 软件模块介绍 1) 子进程: 在子进程中:启动Mplayer,参数规定通过命名管道进行通信。Mplayer会自动从命名管道中读取主进程发来的命令。Mplayer发出的内容通过把标准输出重定向到命名管道中,父进程通过读管道就可以读到Mplayer发出的信息。然后在父进程实现任务调度及调用各用户界面显示模块来实现信息同步的功能。 2) 父进程: ①  进行相应的窗口创建,界面的初始化。(把歌曲列表显示到屏幕上) ②  检测触摸屏,通过返回按键,向命名管道写命令。 ③  开线程1:给Mplayer发获取歌曲播放进度的命令。 ④  开线程2:读命名管道,即读Mplayer发来的信息。 ⑤  开线程3:解析收到的Mplayer发来的信息。 3、4、5步实现播放进度条所需信息的获得。(获取进度信息后进行相应的界面解决) 驱动程序模块:LCD驱动、触摸屏驱动、键盘驱动、音频驱动 Linux内核:内核是负责创建和终止进程和解决与他们和外界联系(输入和输出)。在不同的进程之间的通信(通过信号,管道,进程间通信原语)是整个系统的功能是基本的,这也是由内核来解决。 Linux内核的重要用途就是为了与计算机硬件进行交互,实现对硬件的编程控制和接口操作,调度对硬件资源的访问,并为计算机上的用户程序提供一个高级的执行环境和对硬件的虚拟接口。 目前,操作系统内核的结构模式重要可分为整体式的单内核模式和层次式的微内核模式。单内核模式的重要优点是内核代码结构紧凑、执行速度快,局限性之处重要是层次结构性不强。 在单内核模式的系统中,操作系统所提供服务的流程为:应用主程序使用指定的参数值执行系统调用指令(int x80),使CPU从用户态(User Mode)切换到核心态(Kernel Model),然后操作系统根据具体的参数值调用特定的服务程序,而这些服务程序则根据需要再调用底层的一些支持函数以完毕特定的功能。在完毕了应用程序所规定的服务后,操作系统又使CPU从核心态切换回用户态,从而返回到应用程序中继续执行后面的指令。因此概要地讲,单内核模式的内核也可粗略地分为3个层次:调用服务的主程序层、执行系统调用的服务层和支持系统调用的底层函数。 播放器界面重要涉及主窗口、操作窗口、播放列表窗口,歌曲信息窗口,歌词显示窗口。主窗口有一个显示屏和一些控制按钮,涉及播放、暂停、快进、快退、下一首、上一首、音量调整以及播放进度条和播放时间显示。播放列表窗口可以使用户选择要播放的文献。播放列表用来播放最近播放的几个多媒体文献。 3.5 本章小结 本章具体的介绍了开发环境,涉及开发板的结构,ARM920T的架构,以及内核的结构,并总体介绍了程序的结构以及程序实现的功能,其中具体阐述了如何使用线程和进程来控制播放器的。 第4章 硬件系统 本章系统介绍了各部分硬件的实现原理并着重阐述了与控制模块有关的触摸屏模块的原理,然后简朴介绍了开发板个部分的原理。 4.1 开发板系统的硬件框架 上图为本次设计的多媒体平台的硬件框图,以S3C2440开发板为硬件基础,TFT-LCD和key23键盘作为主控制器,循环采集触摸屏数据,然后将数据传入主控程序,主程序根据获得的参数进行时间判断和任务调度。最终实现多媒体播放功能。 该设计的前期,要使用到并口和网络进行Bootloader,kernel,root的烧写。调试阶段可以通过NFS挂载根文献系统,这样方便省时。USB接口用来挂载U盘,由于S3C2440开发板的存储空间较小,可以挂载U盘或其他存储。 4.2 LCD模块原理 4.2.1 A/D转换器 A/D转换器按照转换速度、精度、功能等因素,常用的A/D转换器分为两种:双积分型、逐次逼进型。 它是模拟信号和CPU之间联系的接口,将采集到的连续变化的模拟信号转换为数字信号,以供计算机或数字系统进行分析、解决、存储、控制和显示。在工业控制和数据采集及许多其他领域中,A/D转换都是不可缺少的。 S3C2440的A/D转换器包含一个8通道的模拟输入转换器,可以将模拟输入信号转换成10位数字编码,输入电压范围为0~3.3V。在A/D转换时钟频率2.5MHz时,其最大转换率为500KSPS。AD转换接口中的AIN[7]通道和AIN[5]通道为触摸屏的模拟信号输入口。 AD的启动方式有两种,分别为读取即转换方式和置位启动方式。 读取即转换方式: 将ADCCON中的READ_START设立为1,即每次读取ADCDAT0中的数都会触发下一次AD转换。 置位启动方式: 将ADCCON中的ENABLE_STAERT设立为1,即启动AD转换;AD转换开始后改位自动清零。 两者在使用上基本没什么太大区别,任意选中一种即可。 要使用S3C2440的A/D转换器进行模拟信号到数字信号的转换,需要配置以下寄存器: 1) ADC控制寄存器(ADCCON) 2) ADC触摸屏控制寄存器(ADCTSC) 3) ADC启动延时寄存器(ADCDLY) 4) ADC转换数据寄存器(ADCDATn) 4.2.2 触摸屏原理结构 在电阻式触摸屏的表面保护涂层和基层之间有两层透明导电层ITO(ITO:氧化铟,弱导电体),分别相应X、Y轴,它们之间用细微透明的绝缘颗粒绝缘,触摸产生的压力会使两导电层接通,按压不同的点时,该点到输出端的电阻值也不同,因此会输出与该点位置相相应的电压信号(模拟量),经A/D转换后即可获取X、Y的坐标值,触摸屏的结构图如图4.1所示。 图4.1 触摸屏结构 采用多次采样取平均值算法来计算触摸点坐标,即一方面从触摸屏的四个顶角得到两个最大值和两个最小值,分别标记为Xmax、Ymax和Xmin、Ymin。 拟定X、Y方向后坐标值的计算可通过以下方式求得: Xa、Ya:为多次测量的平均电压值 X、Y为坐标值 由X/320=(Xmax-Xa)/(Xmax-Xmin) 得(X = ((Xmax-Xa)×320)/(Xmax-Xmin)) Xa = [X1+ X2+ ...+ Xn]/n 由Y/240=(Ya-Ymin)/(Ymax-Ymin) 得(Y = ((Ya-Ymin)×240)/(Ymax-Ymin)) Ya = [Y1+ Y2+ …+ Yn]/n 测量X坐标: 从XP输出电压给X+端,从XM输出地电位给X-端,从YP脚输入按压点电压。控制信号: YMON=0; nYPON=1;XMON=1;nXPON=0; 触摸屏接口信号: XP=上拉 XM=接地 YP=AIN[5] YM=高阻 测量Y坐标: 从YP输出电压给Y+端,从YM输出地电位给Y-端,从XP脚输入按压点电压。控制信号:YMON=1; nYPON=0;XMON=0;nXPON=1; 触摸屏接口信号: YP=上拉 YM=接地 XP=AIN[7] XM=高阻 从YP做为输入,从YM输出地电位给Y-端,从XP脚输入采样按压中断。控制信号: YMON=1; nYPON=1;XMON=0;nXPON=1; 触摸屏接口信号: YP=AIN[5] YM=接地 XP=AIN[7](上拉) XM=高阻 4.3 系统硬件介绍 本次毕设涉及到的硬件有: 1) 笔记本电脑 2) S3C2440开发板 3) 标准5V变压器 4) TFT-LCD触屏 5) 扬声器 6) U盘 7) USB-UART线 将USB-UART线接到电脑USB接口上,U盘插到开发板上,接通电源。然后通过电脑的超级终端登陆开发板运营程序,就可进行触屏操作了。 4.4 各个外设接口 4.4.1 JTAG接口 JTAG最初是用来对芯片进行测试的,JTAG的基本原理是在器件内部定义一个TAP(Test Access Port;测试访问口)通过专用的JTAG测试工具对进行内部节点进行测试。JTAG测试允许多个器件通过JTAG接口串联在一起,形成一个JTAG链,能实现对各个器件分别测试。现在,JTAG接口还常用于实现ISP(In-System Programmable 在线编程),对FLASH等器件进行编程。 JTAG编程方式是在线编程,传统生产流程中先对芯片进行预编程现再装到板上因此而改变,简化的流程为先固定器件到电路板上,再用JTAG编程,从而大大加快工程进度。JTAG接口可对PSD芯片内部的所有部件进行编程。 本实验所用的的JTAG调试器为EZ-JTAG,是一种简易的并口调试器,成本较低,速度没有JLINK、ULINK快,但是可以基本满足调试代码的需求,标准的JTAG接口是4线:TMS、TCK、TDI、TDO,分别为模式选择、时钟、数据输入和数据输出线,加上电源和地,一般6条线;为了方便调试,大部分仿真器还提供了一个复位信号。为了方便连接,一般将接口设立为标准接口。 这里用的的S3C2440开发板提供了包含完整JTAG标准信号的 20 Pin JTAG 接口。 4.4.2 USB_UART转换接口 S3C2440配置了USB_UART模块,实现usb与串口转换,该模块的芯片为SPCP825A,通过此USB接口可以连接至S3C2440的串口0。 4.4.3 RS232接口 S3C2440开发板提供了一个标准的RS232接口,可以通过跳线选择2440芯片的串口0或者串口1进行数据输出,当JP1接口通过跳线冒接(3、5短接,4、6短接)时,此时RS232接口连接2440芯片串口0,当JP1接口通过跳线冒接(1、3短接,2、4短接)时,此时RS232接口连接2440芯片串口1。此外,通过J4接口可以获得串口0的TTL电平信号。串口选择跳线的结构如图4.2所示。 图4.2 S3C2440串口选择跳线 4.4.4 USB主接口 S3C2440芯片提供了一个USB HOST接口,对于目前的众多USB设备来讲不太够用,所以S3C2440开发板扩展了USB—HUB接口,可以扩展四路USB设备,方便USB键盘、USB鼠标、USB摄像头、USB无线网卡等USB设备同时使用,由于S3C2440开发板自身外扩了SATA硬盘接口,该硬盘在正常使用时需要占用一个USB主通道,板子只预留了两路USB接口,此外一路保存。 4.4.5 USB从接口 S3c2440芯片自身自带了USB—Slave接口,可以方便的跟PC通过USB接口进行高速数据通信,这次设计的kernel和yaffs就是通过此接口烧写的,大大减少了用时。 4.4.6 AD输入接口 S3C2440芯片内置8路12bitAD输入接口,为了方便用户使用,开发板将其中的4路AD直接引出至J19。使用时,将需要采样的AD信号直接接入J19接口即可。 4.4.7 复位系统 S3C2440实验仪通过Reset按键实现对板子所有可复位芯片的复位操作,具体电路如图4.3所示。 图4.3 复位系统电路图 4.5 本章小结 本章具体的介绍了作为播放器人机界面的触摸屏以及lcd显示屏的结构和原理,以及如何得到坐标。然后具体介绍了各个用到的接口。 第5章 系统软件设计 本章重要介绍设计的软件实现涉及以下部分: 1) Bootloader与kernel的配置 2) 根文献系统制作 3) 烧录镜像文献 4) 交叉编译编译工具链的安装 5) 重新配置编译Mplayer源码进行 6) 配置编译libmad解码库 7) 主控程序的编写 8) 人机交互界面设计 9) 程序移植 5.1 系统软件设计流程图 这次毕设的软件模块我是按照环境搭建,安装工具,编写程序,可执行程序移植的顺序设计的,软件的开发环境搭建如图5.1所示。 Bootloader 内核的配置 制作根文 件系统 烧录镜 像文献 配置编译libmad解码库 安装交叉 编译工具 对Mplayer源码进行配置编译 图5.1 开发环境搭建流程图 5.2 Bootloader内核的配置 5.2.1 Bootloader 大多数bootloader都分为stage1和stage2两部分,u-boot也不例外。依赖于CPU体
    展开阅读全文
    提示  咨信网温馨提示:
    1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
    2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
    3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
    4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
    5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
    6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

    开通VIP折扣优惠下载文档

    自信AI创作助手
    关于本文
    本文标题:基于ARM的音乐播放器的设计与实现.doc
    链接地址:https://www.zixin.com.cn/doc/3337313.html
    页脚通栏广告

    Copyright ©2010-2026   All Rights Reserved  宁波自信网络信息技术有限公司 版权所有   |  客服电话:0574-28810668    微信客服:咨信网客服    投诉电话:18658249818   

    违法和不良信息举报邮箱:help@zixin.com.cn    文档合作和网站合作邮箱:fuwu@zixin.com.cn    意见反馈和侵权处理邮箱:1219186828@qq.com   | 证照中心

    12321jubao.png12321网络举报中心 电话:010-12321  jubao.png中国互联网举报中心 电话:12377   gongan.png浙公网安备33021202000488号  icp.png浙ICP备2021020529号-1 浙B2-20240490   


    关注我们 :微信公众号  抖音  微博  LOFTER               

    自信网络  |  ZixinNetwork