




已阅读5页,还剩5页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 郑州航空工业管理学院郑州航空工业管理学院 嵌入式系统课程设计报告嵌入式系统课程设计报告 题目 题目 基于嵌入式系统的开源游戏模拟器的设计基于嵌入式系统的开源游戏模拟器的设计 20 13 2014 第 2 学期 院院 系 系 电子通信工程系 姓姓 名 名 张 鹏 专专 业 业 通 信 工 程 学学 号 号 111307232 指导老师 指导老师 赵成 张松炜 电子通信工程系 2014 年 4 月制 2 目目 录录 目目 录录 2 一 一 引言引言 3 二 二 设计目的设计目的 3 三 三 设计要求设计要求 3 1 任务要求任务要求 3 2 设计所需的软硬件设备设计所需的软硬件设备 3 3 课程设计报告内容课程设计报告内容 4 四 四 总体设计总体设计 4 1 Visual Boy Advance 模拟器简介模拟器简介 4 2 安装交叉编译工具安装交叉编译工具 4 3 ZLIB 数据压缩库的安装 编译数据压缩库的安装 编译 5 4 编译 安装编译 安装 Libpng 图像库图像库 6 5 SDL 多媒体函数库多媒体函数库 6 6 编译与安装编译与安装 VBA 模拟器模拟器 7 7 VisualBoyAdvance 的调试与运行的调试与运行 9 五 五 总结总结 9 六 六 参考文献参考文献 10 3 一 一 引言引言 随着微处理器性能的提升 现在的微处理器已经可以支撑游戏模拟器的运 行 用户可以选择在非 PC 平台下操作街机游戏以及 20 世纪 90 年代需要 PC 才 能运行的游戏节目 这无疑提升了游戏硬件平台的移动性 电子游戏业将是这 一技术的最大收益者 目前 在一个配有 LCD 图形界面和 32 位 ARM 微处理 器的移动平台上 甚至可以实现最早出现在 PC 上的 3D 游戏 本文介绍利用 ARM 嵌入式系统平台 内置 S3C2410A 核心微处理器 将开源游戏模拟器 Visual Boy Advance VBA 的代码移植到微处理器上的方法 二 二 设计目的设计目的 了解嵌入式微处理器的运算能力 进一步熟悉 ARM S3C2410 微处理器在多 媒体娱乐平台中的应用 该设计的目标是在一个配有 LCD 图形界面和 32 位 ARM 微处理器的嵌入式系统平台 内置 S3C2410A 核心微处理器 上 将开源游戏模 拟器 Visual Boy Advance VBA 的代码移植到微处理器上运行 在设计过程中 熟悉 Linux 系统中常用的压缩解缩工具包 图形工具包 多媒体函数库等的使用方法 从而为基于嵌入式系统平台的多媒体开发任务打 下更深厚的应用实践基础 三 三 设计要求设计要求 1 任务要求任务要求 要求能独立地分析题目意义 设计实现步骤 画出硬件原理图及软件流程 图 调试驱动模块 该设计的具体要求如下 1 掌握 ZLIB 数据压缩库的功能以及编译与安装方法 2 掌握 libpng 图像库的功能以及编译与安装方法 3 掌握 SDL 多媒体函数库的功能以及编译与安装方法 4 掌握开源模拟器 VBA 的编译与安装方法 5 掌握开源模拟器 VBA 的调试与运行 6 理解 VBA 程序的设计 选做 2 设计所需的软硬件设备设计所需的软硬件设备 1 硬件环境配置 计算机 Intel R Pentium R 及以上 内存 1GB 及以上 实验设备 UP NETARM2410 S 嵌入式开发平台 2 软件环境配置 操作系统 Microsoft Windows XP Professional Service Pack 2 虚拟机 VMware WorkStation 7 Linux 系统 Red Hat Enterprise Linux AS 4 2 6 9 5 EL 嵌入式交叉编译器 arm linux gcc 3 4 4 版本 Linux 内核版本 Linux 2 6 14 SKYEYE 版本 skyeye 1 2 4 U Boot 版本 U Boot 1 3 2 BusyBox 版本 BusyBox 1 2 0 4 ZLIB 数据压缩库 ZLIB 1 2 3 Libpng 图像库 Libpng 1 4 0 SDL 多媒体函数库 sdl 1 2 13 VBA 模拟器 VisualBoyAdvance src 1 7 2 3 课程设计报告内容课程设计报告内容 按该设计报告要求的模式格式提交课程设计报告书 四 四 总体设计总体设计 1 Visual Boy Advance 模拟器简介模拟器简介 开源游戏模拟器 VBA 是一个根据 GUN General Public License 发布的 免费软件 VBA 能够在不同的硬件平台上模拟 Nintendo 公司发行的手提游 戏机 包括 Game Boy Super Game Boy Game Boy Color Game Boy Advance 以及 Game Boy Advance ROMS 2 安装交叉编译工具安装交叉编译工具 交叉开发方式解决了目标硬件资源有限 无法在本机运行编译和调试 工具的问题 并且还得使开发者可以在熟悉的宿主机环境下进行程序开发 对于 ARM 嵌入式系统的开发 需要安装交叉版本的 GCC 工具包来搭建 嵌入式交叉编译环境 在此 使用 arm linux gcc 3 4 1 tgz 软件包 1 下载 arm linux gcc 3 4 1 tgz 软件压缩包 将其存放在 Linux 系统中 的 tmp 目录下 然后进入 tmp 目录 执行如下命令进行文件解压缩 root localhost cd tmp root localhost tmp tar xzvf arm linux gcc 3 4 1 tgz C 运行上述命令后把 arm linux gcc 安装到 usr local arm 3 4 1 目录 2 运行下面命令修改 root bashrc 文件的内容 root localhost vi root bashrc 编辑 root bashrc 文件 将最后一行 改为如图 1 划线标示所示 修改后保存退出 5 图图 1 修改修改 root bashrc 文件的内容文件的内容 3 重新登录系统 使上述设置生效 用以下命令行测试 root localhost arm linux gcc v 若出现如图 2 所示 gcc version 3 4 1 则说明交叉编译环境已经安装完毕 且 3 4 1 版本的交叉编译环境可以正常运行了 图图 2 交叉编译工具的版本信息交叉编译工具的版本信息 3 ZLIB 数据压缩库的安装 编译数据压缩库的安装 编译 ZLIB 是一个免费 通用的开源代码 提供数据的压缩与解压缩开发 库 而且还支持跨平台的应用 ZLIB 具有同 winzip 和 winrar 等商业软件 相比毫不逊色的压缩率 已经成功应用到诸如 MySQL Java 3DMax 甚至是微软的 DirectX 等大型的系统中 ZLIB 虽然支持文件的压缩 解压缩 删除与查看等功能 但主要是 对 Linux Unix 下的 GZ 文件进行相应的操作 对于 Windows 系统下的 ZIP 文件并不提供直接的支持 这里使用 ZLIB 的版本是 1 3 2 1 在命令终端窗口中 切换路径到 home ilovechina GBA 下 解压缩 6 zlib 1 2 3 tar gz 软件包 运行下面的命令 root localhost cd home ilovechina GBA root localhost GBA tar xzvf zlib 1 2 3 tar gz 2 在 zlib 1 2 3 目录中 运行如下的配置命令 可以得到 Makefile 文 件 root localhost GBA cd zlib 1 2 3 root localhost zlib 1 2 3 configure prefix usr local arm 3 4 1 arm linux 3 使用编辑器修改产生的 Makefile 文件 从而达到能够利用交叉编译 工具对 zlib 的源代码进行编译与安装 修改参数如下 第 19 行修改为 CC arm linux gcc 第 36 行修改为 AR arm linux ar rc 第 37 行修改为 RANLIB arm linux ranlib 4 在前面的步骤中已经将预先处理的各项都进行了设置 现在可以运 行下列命令开始编译 安装 zlib 软件包 root localhost zlib 1 2 3 make make install 4 编译 安装编译 安装 Libpng 图像库图像库 Libpng 提供多种应用程序解析 PNG 格式图像时使用的开发库 该软 件包含 png 库和 libpng configlib 文件 其中 PNG 库是用来创立和操作 PNG 格式的图像文件 PNG 格式是设计来替代的 GIF 的 PNG 对于更小 范围的 TIFF 来说 有了非常多的进步和拓展 libpng configlib 文件为 libpng 提供了设置信息 1 解压缩 libpng 1 4 0 tar gz 软件包 在命令终端窗口切换路径到 home ilovechina GBA 下 运行的命令如下 root localhost zlib 1 2 3 cd root localhost GBA tar xzvf libpng 1 4 0 tar gz 2 在 libpng 1 4 0 目录中 运行如下配置命令 可以得到 Makefile 文 件 root localhost GBA cd libpng 1 4 0 root localhost libpng 1 4 0 export LDFLAGS L usr arm 3 4 1 arm linux lib root localhost libpng 1 4 0 export CFLAGS I usr local arm 3 4 1 arm linux include root localhost libpng 1 4 0 configure prefix usr local arm 3 4 1 arm linux host arm linux 7 3 Makefile 文件生成之后 在前面预先处理的各项的相应设置后 下 面就可以编译安装 libpng 软件包了 所需要运行的命令如下 root localhost zlib 1 2 3 make make install 5 SDL 多媒体函数库多媒体函数库 SDL Simple DirectMedia Layer 现在广泛应用与游戏 游戏 SDK 模拟器 MPEG 播放器和其他众多的软件设计领域 特别是 SDL 在游戏 开发领域已经得到了广泛的认可 许多著名的游戏都用到了 SDL 开发包 SDL 是一个跨平台的多媒体函数库 支持对底层的音频 鼠标 键盘 游 戏杆 基于 OPENGL 的 3D 硬件以及 2D 图像帧缓冲区的访问 另外 SDL 几乎支持现在所有的平台 Linux Windows WindowsCE BeOS MacOS Mac OS X FreeBSD NetBSD OpenBSD BSD OS Solaris IRIX 以及 QNX 等 SDL 在音频处理 视频处理 事件响应 线程管理 数据流处理 定 时器等方面都有比较突出的功能 1 在终端命令窗口中 切换到 home ilovechina GBA 路径下 解压缩 SDL 1 2 13 tar gz 软件包 运行如下命令 root localhost libpng 1 4 0 cd root localhost GBA tar xzvf SDL 1 2 13 tar gz 得到 SDL 1 2 13 文件夹 2 在生成的 SDL 1 2 13 目录中 运行如下配置命令 就可以得到 Makefile 文件 root localhost GBA cd SDL 1 2 13 root localhost SDL 1 2 13 configure prefix usr local arm 3 4 1 arm linux disable video qtopia disable video dummy disable video fbcon disable video dga disable arts disable esd disable alsa disable cdrom disable video x11 disable nasm target arm linux host arm linux enable video fbcon 3 在前面的步骤中已经将需要预处理的各项都进行了相应的设置处理 现在可以编译 安装 SDL 软件包了 运行如下命令即可 root localhost SDL 1 2 13 make make install 6 编译与安装编译与安装 VBA 模拟器模拟器 1 切换路径到 home ilovechina GBA 目录下 开始运行如下命令解压 缩游戏模拟器 VisualBoyAdvance src 1 7 2 tar gz 软件包 root localhost SDL 1 2 13 cd root localhost GBA tar xzvf VisualBoyAdvance 1 7 2 tar gz 8 这样在 home ilovechina GBA 下得到 VisualBoyAdvance 1 7 2 文件夹 2 VisualBoyAdvance 1 7 2 目录下 运行如下配置命令 可以得到 Makefile 文件 root localhost GBA cd VisualBoyAdvance 1 7 2 root localhost VisualBoyAdvance 1 7 2 configure host arm linux target arm linux with sdl prefix usr local arm 3 4 1 arm linux with sdl exec prefix usr local arm 3 4 1 arm linux 3 在 home ilovechina GBA VisualBoyAdvance 1 7 2 src sdl SDL cpp 文 件中分别从第 2323 行 第 3381 行开始 有如下的相同代码 surface SDL SetVideoMode destWidth destHeight 16 SDL ANYFORMAT SDL HWSURFACE SDL DOUBLEBUF fullscreen SDL FULLSCREEN 0 将其修改为 surface SDL SetVideoMode 640 480 16 1 其中 640 480 表示 LCD 的分辨率 如果不修改这段代码 在 ARM9 开发板上运行 VBA 时将可能会提示 video 模式无法设置 也可能出现屏幕不正常显示的情况 保存上述修改 并退出对 SDL cpp 文件的编辑 4 在前面的步骤中已经将需要的预处理的各项都进行了相应的设置 现在可以开始编译 安装 VisualBoyAdvance 软件包了 运行如下命令 root localhost VisualBoyAdvance 1 7 2 make make install 在编译 安装 VisualBoyAdvance 软件包之后 可以在 VisualBoyAdvance 1 7 2 src sdl 目录下看到在 arm 平台运行的两个文件 TestEmu VisualBoyAdvance 如图 3 所示 图图 3 编译得到的编译得到的 VisualBoyAdvance 文件文件 9 另外 在其上一级目录下有一个 VisualBoyAdvance cfg 配置文件 如图 4 所示 图图 4 VisualBoyAdvance cfg 配置文件配置文件 7 VisualBoyAdvance 的调试与运行的调试与运行 1 首先 将 TestEmu VisualBoyAdvance 及 VisualBoyAdvance cfg 这 3 个文件同时下载到 ARM9 开发板根文件系统的 home ziapc 目录下 然后 编写或下载一个 GBA 游戏 同样下载到开发板的根文件系统的 home ziapc 目录下 2 接着添加 vba over ini 文件 将其下载到开发板中根文件系统的 home ziapc 目录内 再次运行模拟器程序 注意开发板网串口中断上输出 的信息 3 上一步提示 VBA 运行时缺少 libSDL 1 2 so 0 共享库文件 该文件 是一个指向 libSDL 1 2 so 011 2 共享库文件的链接文件 它们都位于 usr local arm 3 4 1 arm linux lib 目录下 将它们下载到开发板根文件系统中 的 home ziapc 目录里 4 最后 再次在 ARM9 开发板上运行 VBA 游戏模拟器即可运行起来 在 LCD 显示屏上出现游戏画面 五 五 总结总结 整个课程设计过程中 需要用到 arm linux gcc 3 4 1 版本的嵌入式交叉编译 环境 ZLIB 数据压缩库 libpng 图像库 SDL 多媒体函数库以及主要的 VisualBoyAdvance src 1 7 2 开源代码包 上述软件包有一定的版本匹配关系 交叉编译环境必须使用 3 4 1 版本的交叉编译器 且不能与 3 4 4 版本的同时运 行 在开始安装 VBA 模拟器之前一定要确认版本是否正确 下面列出在设计 10 过程中遇到的问题 1 由于虚拟机中的 Linux 系统之前已经
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 刑事侦查学考试题及答案
- 中国广电临汾市2025秋招行业解决方案岗位专业追问清单及参考回答
- 曲靖市中石油2025秋招面试半结构化模拟题及答案机械与动力工程岗
- 安康市中储粮2025秋招笔试行测高频题库及答案
- 渭南市中储粮2025秋招信息技术岗高频笔试题库含答案
- 2025年重庆木工考试题及答案
- 中国联通乐山市2025秋招笔试行测题库及答案市场与服务类
- 潮州市中石油2025秋招面试半结构化模拟题及答案财务与审计岗
- 北京市中储粮2025秋招财务资产岗高频笔试题库含答案
- 岳阳市中储粮2025秋招面试典型题目及答案
- 2025年未来就业报告
- 使用吹风机课件
- 安检流程课件
- 中国未来50年产业发展趋势白皮书(第四期)
- 2025年财会类资产评估师资产评估基础-资产评估基础参考题库含答案解析(5卷)
- 公安宣传打击黄赌毒课件
- 工程建设施工项目管理人员职业标准
- GB/T 16895.3-2024低压电气装置第5-54部分:电气设备的选择和安装接地配置和保护导体
- GB/T 882-2008销轴
- 定价转让之同期资料模板
- 公路养护技师、高级工、初级工考试复习重点
评论
0/150
提交评论