Linux环境下编译ARM上运行的Mplaye毕业设计毕业论文

Linux环境下编译ARM上运行的Mplaye毕业设计毕业论文
Linux环境下编译ARM上运行的Mplaye毕业设计毕业论文

Linux环境下编译ARM上运行的Mplaye毕业设

计毕业论文

目录

摘要.................................................................... I Abstract................................................................. II 目录. (1)

第一章绪论 (1)

1.1选题背景 (1)

1.2 研究意义 (2)

1.3总体思路 (3)

1.4主要解决的问题 (4)

第二章硬件介绍 (5)

2.1 ARM处理器 (5)

2.1.1、ARM微处理器特点 (5)

2.1.2、ARM体系结构特点 (5)

2.1.3、Thumb的技术概述 (6)

2.2 TFT-LCD触摸屏 (6)

2.2.1、TFT-LCD模块介绍 (6)

2.2.2、TFT-LCD模块原理 (7)

2.3 2×3键盘简介 (11)

第三章软件介绍 (12)

3.1 开发板的环境搭建 (12)

3.2 Linux环境搭建 (12)

3.2.1、虚拟机的安装 (12)

3.2.2、VMware Tools安装及设置 (12)

3.2.3、Smb与nfs服务器的配置 (12)

3.2.4安装交叉编译器 (13)

第四章程序设计 (14)

4.1 设计要求 (14)

4.2 设计总体结构 (15)

4.2.1、对各层的简单描述 (15)

4.2.2、项目子模块设计思路分述 (16)

4.3 设计步骤 (17)

第五章软硬件测试 (20)

5.1 开发板性能测试 (20)

5.2 虚拟机可靠性测试 (20)

第六章程序编写及测试 (21)

6.1 模块程序简介 (21)

6.1.1、窗口创建 (21)

6.1.2、歌曲列表获取 (22)

6.1.3、歌曲信息的获取 (23)

6.1.4、2×3键盘的控制 (24)

6.1.5、触摸屏控制 (26)

6.1.6、创建管道 (26)

6.2总体模块设计 (27)

6.3 程序调试步骤及问题 (28)

6.4 实体软件效果 (30)

参考文献 (31)

致谢 (32)

附录 (33)

主函数《main.c》 (33)

歌曲信息《song_message.c》 (42)

歌词解析及显示《lrc_display.c》 (46)

第一章绪论

1.1选题背景

多媒体是计算机和视频技术的结合,实际上它是两个媒体;声音和图像,或者用现在的术语:音响和电视。多媒体本身有两个方面,和所有现代技术一样它是由硬件和软件,或机器和思想混合组成。可以将多媒体技术和功能在概念上区分为控制系统和信息。多媒体之所以能够实现是依靠数字技术。多媒体代表数字控制和数字媒体的汇合,电脑是数字控制系统,而数字媒体是当今音频和视频最先进的存储和传播形式。事实上有人就简单地认为多媒体是电脑和电视的结合。电脑的能力达到实时处理电视和声音数据流的水平,这时多媒体就诞生了。多媒体电脑需要具有比主流电脑更强的能力,多媒体电脑决定了主流电脑的发展。

一个嵌入式系统装置一般都由嵌入式计算机系统和执行装置组成,嵌入式计算机系统是整个嵌入式系统的核心,由硬件层、中间层、系统软件层和应用软件层组成。执行装置也称为被控对象,它可以接受嵌入式计算机系统发出的控制命令,执行所规定的操作或任务。执行装置可以很简单,如手机上的一个微小型的电机,当手机处于震动接收状态时打开;也可以很复杂,如SONY 智能机器狗,上面集成了多个微小型控制电机和多种传感器,从而可以执行各种复杂的动作和感受各种状态信息。

今采用Linux已经基本可以做到办公、娱乐、生活等一系列活动了,虽然很多地方还不完善,但是基本的Office软件、播放器、游戏等等都应有尽有,在Linux OA办公软件专题测试中,就呈现出了很多不错的产品。图形化桌面的意义就在于能够利用丰富多彩的窗口,带给用户亲近的感觉,让人们不再感到陌生,人性化的设计会触发人们尝试Linux的热情,从而让更多的人了解Linux。Xwindows就是Linux中开放的窗口,无论其设计如何,毕竟这个“窗口”界面给人带来不少实用、易用。随着WindowsXP的发布,Linux厂商们也不甘示弱,纷纷推出了自己的“桌面”产品。这些版本具有较强的所媒体核心,对于音频、视频支持都有了不小的提高,更捆绑丰富的应用程序。

件移植这个概念在我国还不怎么流行,这是因为Windows系统垄断了中国个人操作系统市场,绝大部分软件都是建立在windows的基础上。跳出这个桎梏,放眼全球,优秀的操作系统有很多,可能一款操作系统在特定领域比windows更适合我们,但是,那些优秀的软件却因为操作系统的不同而与我们失之交臂,这就凸显出移植的必要性。由此可以看出,软件移植的领域是绝对广阔的。

日常生活中,多媒体已经成为必不可少的一部分了,但一款优秀的播放器却经常因为操作环境,源码不开放等问题而不能被人们广泛认识,使用,这是我们的损失。所以,多媒体播放器的跨平台移植拥有非常好的市场前景。

1.2 研究意义

Linux下的音频、视频播放软件随着Linux的性能提升,出现的越来越多了,现在在Linux里想要听点音乐、Mp3或者看上几部大片,无论是VCD、DVD,都已经是易如反掌的事了,一款款五花八门的播放器软件随你挑选,有的作风精简、有的功能强大,多数都支持所有的常见的媒体格式,与Windows下的播放器几乎无异。

Linux属于开源系列,其软件都是免费,在现今一切向钱看的环境下,真正的免费软件必定会吸引大量的人群。开源的特性也决定了它使用的人越多,程序进步越快的特点。我们可以预见在不久的将来,linux一定会大行其道,linux的强大的兼容性,可移植性也将发挥的淋漓尽致。

含有嵌入式操作系统的设备称为嵌入系统,这在生活中随处可见,手机,电子表,多媒体播放器等,涵盖了生产,工业控制,通信,网络,消费电子,汽车电子,军工电子等领域。随着技术的进步,嵌入设备的性能越来越高,用途越来越广。操作系统的意义在于实现软件的运行,从而驱动硬件工作。但大部分的软件都有对操作系统的要求。

这就要实行软件的移植,使其在需要的操作系统下也能正常工作。这样的话,能让一款优秀的软件不止局限在一个狭小的领域,从而改善我们的生活,推动科技的发展、进步。

1.3总体思路

本系统分为两大部分,软件部分,硬件部分。其中软件部分包含经过ARM编译的Mplayer可执行程序,触屏操作的源代码,以及linux操作系统,Bootloader,核,根文件,arm-linux-gcc交叉编译工具链,libmad解码库,Windows自带的超级终端Qt Creater图形界面设计软件以及在Windows下的连接工具,烧录工具软件等。

件部分包括S3C2440开发板,LCD触摸屏,2x3键盘,串口线,并口线,5V变压器,带串并口的PC机。

中bootloader,核,根文件系统烧录到开发板上S3C2440为载体,用LCD触屏控制,整个过程在PC机上完成,需要在Linux环境下修改环境变量,添加交叉编译工具链将生成的程序放到开发板上试验,运行。

图1-1 设计整体方框图

1.4主要解决的问题

1、歌曲的自动循环播放,手动播放

2、歌曲信息的无乱码处理

3、歌词的高亮显示

4、歌曲歌词不同步同步的处理

5、触屏快进快退不稳定的处理

6、编写代码时对存的处理

7、ARM板的搭建、挂载及驱动安装处理

8、程序移植后的健壮性

第二章硬件介绍

2.1 ARM处理器

2.1.1、ARM微处理器特点

a.小体积、低功耗、低成本、高性能

b.支持Thumb(16 位)/ARM(32 位)双指令集,能很好的兼容8 位/16 位器件

c.大量使用寄存器,指令执行速度更快

d.大多数数据操作都在寄存器中完成

e.寻址方式灵活简单,执行效率高

f.指令长度固定

ARM9采用哈佛(Harvard)结构,程序存储器与数据存储器分开,提供了较大的存储器带宽。同时,大多数DSP都采用此结构

图2-1 哈佛体系结构模型

2.1.2、ARM体系结构特点

ARM采用RISC结构,在简化处理器结构,减少复杂功能指令的同时,提高了处理器的速度

考虑到处理器与存储器打交道的指令执行时间远远大于在寄存器操作的指令执行时间,RISC型处理器采用了Load/Store(加载/存储)结构,即只有Load/Store指令可与存储器打交道,其余指令都不允许进行存储器操作

相关主题
相关文档
最新文档