粤嵌开发板电子相册嵌入式课程设计

上传人:第*** 文档编号:55670726 上传时间:2018-10-03 格式:DOC 页数:29 大小:1.69MB
返回 下载 相关 举报
粤嵌开发板电子相册嵌入式课程设计_第1页
第1页 / 共29页
粤嵌开发板电子相册嵌入式课程设计_第2页
第2页 / 共29页
粤嵌开发板电子相册嵌入式课程设计_第3页
第3页 / 共29页
粤嵌开发板电子相册嵌入式课程设计_第4页
第4页 / 共29页
粤嵌开发板电子相册嵌入式课程设计_第5页
第5页 / 共29页
点击查看更多>>
资源描述

《粤嵌开发板电子相册嵌入式课程设计》由会员分享,可在线阅读,更多相关《粤嵌开发板电子相册嵌入式课程设计(29页珍藏版)》请在金锄头文库上搜索。

1、课程设计说明书课程设计说明书题题 目:目: 电子相册电子相册 课程名称:课程名称: 嵌入式系统嵌入式系统 学学 院:院: 专专 业:学业:学 号:号: 姓姓 名:名: 指导教师:指导教师: 完成日期:完成日期: 2017 年年 6 月月 10 日日 1目目 录录1. 设计的工程背景.21.1 任务阐述.21.2 任务分析.21.3 课题项目管理计划进度表.32.工程设计方案.32.1 系统方案设计.32.2 硬件电路设计.52.3 软件程序设计.53. 方案实施.63.1 软件程序调试过程64. 结果与结论.124.1 设计结果.124.2 结论.135. 收获与致谢.146. 参考文献.15

2、7. 附件.16附件 1 :答辩问题回答记录表.2721. 设计的工程背景1.1 任务阐述设计任务:制作一个电子相册,要求每个人一种特效,结果显示在 ARM 开发板上。开发平台为 LINUX。电子相册简介:以数字照片的存储和浏览为主要功能,具有内置数据存储器、USB 等卡接口、强大的文件管理等特征。背景:在市场需求上,随着数码相机的普及,作为一种以数字照片的保存、回放和浏览为核心的功能产品迎合了消费者需求,嵌入式 linux 的电子相册比一般电子相册更具优越性和实用性。目前市场,目前主流电子相册软件普遍体积庞大、占用内存多、硬件要求高。所以开发一个运行速度快,占用空间小,对硬件要求较低的功能实

3、用的嵌入式 Linux 电子相册很有意义。Linux 开发优势:Linux 是一种自由和开放源码的类 Unix 操作系统。目前存在着许多不同的Linux,但它们都使用了 Linux 内核。Linux 可安装在各种计算机硬件设备中,从手机、平板电脑、路由器和视频游戏控制台,到台式计算机、大型机和超级计算机。Linux是一个领先的操作系统,世界上运算最快的 10 台超级计算机运行的都是 Linux 操作系统。严格来讲,Linux 这个词本身只表示 Linux 内核,但实际上人们已经习惯了用Linux 来形容整个基于 Linux 内核,并且使用 GNU 工程各种工具和数据库的操作系统。 Linux

4、是我国软件的国策,尤其是在 IT 行业,庞大的使用群体、开放的体系和丰富资源使得 Linux 将是日后普及和推广的重点。Linux 的优越性日益凸显 Linux将是我们学习和工作实用的首选。目前,很多网络技术、服务器、网络设备都是基于 Linux 操作系统,并且在不少时尚的手机、PDA、媒体播放器等消费类电子产品中已经广泛使用 Linux 作为操作系统。 在 Linux 软件国策的指引下,Linux 已经得到很大的普及。很多学生已经自发地通过书籍、互联网等资源学习 Linux。 综上所述,提高技术水平就是以市场流行需求为导向进行研发,特别是像嵌入式种工程类的技术。在条件允许的情况下,我们甚至应

5、该时刻与国际接轨,掌握当前最领先的技术。1.2 任务分析3设计的目标是制作 5 种电子相册特效,每个人负责制作一种。在制作前期,首先要查阅资料,了解电子相册的背景和制作原理,对其形成大致的设计方案。然后,根据资料安装 linux 和虚拟机软件,搭建开发环境,安装交叉编译。最后,根据自己设计的方案进行尝试,不断修改错误,直到达到目标。1.3 课题项目管理计划进度表序号各阶段完成的内容完成时间1查阅相关文献资料、课题调研2017.5.20-2017.5.232掌握设计软件、制订进度计划2017.5.23-2017.5.273系统方案的比较和选定2017.5.27-2017.5.284编写实现特效的

6、代码2017.5.29-2017.6.55编译,运行目标文件,查看结果,根据结果进行代码的修改2017.6.05-2017.6.086制作答辩 PPT2017.6.08-2017.6.097撰写课程设计说明书2017.6.09-2017.6.118答辩2017.6.122.工程设计方案2.1 系统方案设计目前市场上的主要设计方案: 单芯片解决方案以单芯片的解决方案,以 ESS/AMLOGIC/MPX 等芯片设计为代表,PHILIP/Sony 等品牌厂商也以该方式为主。 该方案的优点: (1)结构简单,成本低,芯片功能强大; (2)多媒体的编解码速度快。 该方案的缺点: (1)可扩展的余地不足;

7、 4(2)对读卡部分,某些方案使用硬件实现,不能支持新类型的卡; (3)应客户要求的二次开发比较不方便。以 DSP+FPGA 等硬件为基础,用软件算法实现功能这种方案,是以 DSP 来实现多媒体部分的编解码算法,再由 FPGA 实现显示输出格式的算法转化;读卡部分,文件系统部分由 DSP 软件处理,外围设备大的驱动由 DSP 的软件算法实现。 这种方案的优点: 功能扩展升级性强,软件实现读卡部分,新的类型卡,外围设备可以通过升级方式实现。这种方案的缺点: (1)整体成本比较大; (2)客户二次开发难度大。DSP 和 FPGA 的算法实现需要专业人员; (3)显示输出由 FPGA 实现,该类输出

8、大部分是数字的输出,模拟输出支持比较弱。ARM 核心方案以 ARM 等强大的 CPU 为核心,以 WINCE、LINUX 等操作系统为软件核心架构系统。此方案以 ARM 如 S3C2410、Intel xscale 等强大的嵌入式 CPU 为架构,速度在 200M-300MHZ。嵌入 WINCE、LINUX 等操作系统,实现多媒体的编解码。 该方案的优点: (1)系统芯片功能强大,实现的功能多,对于新的多媒体格式支持好,只需要安装更新的软件; (2)硬件电路简单; (3)二次开发容易实现。 该方案的缺点: (1)成本较大,该类强大的 CPU 一般使用在 PDA 等嵌入式领域;(2)比较耗电,使

9、用软件解码功耗与频率相关性很大。本设计选用的是第三种方案:以 Cortex A8 为核心,以 Linux 操作系统为软件核心架构。 基于 Cortex A8 的微处理器具有低功耗、低成本、高性能等特点。GEC210 开发板简介:GEC210 是一款高性能的 Cortex A8 核心板,它由广州粤嵌股份设计、生产和发行销售。它采用三星 S5PV210 作为主处理器,运行主频可高 1GHz。S5PV210 内部集成了 PowerVR SGX540 高性能图形引擎,支持 3D 图形流畅运行,并可流畅播放1080P 大尺寸视频。5GEC210 主要采用了 2.0mm 间距的双排针,引出 CPU 大部分

10、常用功能引脚, ,另外还根据 S5PV210 芯片的特性,分别引出了标准的 miniHDMI 接口,如图所示。GEC210 板载 512M DDR2 内存,可流畅运行 Android, Linux 和 WinCE6 等高级操作系统。它非常适合开发高端物联网终端,广告多媒体终端,智能家居,高端监控系统,游戏机控制板等设备。图 2-1 GEC210 开发板(a) 图 2-2 GEC210 开发板(b)2.2 硬件电路设计粤嵌 GEC210 开发板为硬件平台,Ubuntu 为开发环境,通过串口进行文件的传输,在工程师给定的项目基础函数上,通过修改和运用“void lcd_draw_bmp(char

11、*name, int x0, int y0, int w, int h)”函数实现图片位置,大小的改变,再加上延时函数的运用,实现五种图片特效。图 2-3 硬件总框图2.3 软件程序设计总设计方案:ARM 芯片Cortex A8时钟电路LCD 显示USB 接口电路63. 方案实施3.1 软件程序调试过程安装虚拟机和 linux 软件。搭建环境和安装交叉编译。1)找到 ubuntu 系统工作目录大层叠(图形浮现大小及位置)小反转(反转函数)大7图 3-12)在 windos 系统下找到该工作目录并创建一个文件夹,将 arm-2009q3.tar.bz2 复制过去。图 3-23)启用共享文件夹8图

12、 3-34)主机路径为 windos 系统下 arm-2009q3.tar.bz2 的目录,名称自动生成图 3-49图 3-55)可以在文件系统中/mnt/hgfs/share 目录下看到这些。图 3-66)为了可以将 arm-2009q3.tar.bz2 复制到/opt 目录下,/opt 默认所有者为 root,所以要更改/opt 的所有者为我登陆的账户。图 3-77)将文件复制到/opt 目录下。10图 3-88)执行如下解压命令。 聚焦逐现特效部分调试原本打算做图片翻转的特效,在网上查到图片翻转特效的算法并经过修改如下:/24bit to 32bit for(x=0,y=800*480*

13、4-1;x0; x-)b = chi;g = chi+1;r = chi+2;i += 3;color = (r #include #include int open(const char *pathname, int flags);int open(const char *pathname, int flags, mode_t mode);file descriptor:文件描述符*/#include #include #include #include #include #include /for open17#include #include #include#include/for c

14、loseint *plcd = NULL;char wo = 0x04,0x40,0x0E,0x50,0x78,0x48,0x08,0x48,0x08,0x40,0xFF,0xFE,0x08,0x40,0x08,0x44,0x0A,0x44,0x0C,0x48,0x18,0x30,0x68,0x22,0x08,0x52,0x08,0x8A,0x2B,0x06,0x10,0x02;void lcd_draw_point(int x0, int y0, int color)*(plcd + y0*800 + x0) = color;/在顶点为 x0,y0 的位置开始显示一个颜色矩形,矩形的宽/度为

15、 w, 高度为 h,颜色为 colorvoid lcd_draw_rect(int x0, int y0, int w, int h, int color)int x, y;for (y = y0; y 0; j-);/显示一张 24 位的 bmp 图片,图片的宽度必须为 4 的倍数void lcd_draw_bmp(char *name, int x0, int y0, int w, int h)int fd;fd = open(name, O_RDWR);if (-1 = fd)printf(“open %s error!n“, name);return ;19/1、跳过前 54 个 by

16、telseek(fd, 54, SEEK_SET);char chw*h*3;read(fd, ch, sizeof(ch);close(fd);/lcd 的像素点占 4byte, 24 位 bmp 3byteint color;char r, g, b;/位运算int x, y, i = 0;for (y = 0; y 0; x-)b = chi;21g = chi+1;r = chi+2;i += 3;color = (r 像素点的个数:len * 8/ 已知:字的宽度= 高度:len*8/w high = len*8 / w; /64 int flag;23flag = w/8; / 4for (i = 0

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号