学士学位毕业设计论文
基于嵌入式ARM-Linux的电子相册设计
学生姓名
学 号
指导教师
所在学院
专 业
中国·
2013年05月
本科毕业设计论文任务书
注 1 任务书由指导教师填写后交给学生要求学生妥善保存。
2此任务书夹于论文扉页与论文一并装订作为论文评分依据之。
摘要
随着数码相机的盛行传统相机逐渐退出历史的舞台。对于数码相片的欣赏和摆设人们一般只能通过PC机极其不方便。 电子相册正是迎合这种需求它体积小能随时更换相片并具有USB传输功能能够即插即用拥有较大的存储空间。本设计采用了比较通用的S3C2410系列处理芯片为主芯片和源代码开放的嵌入l i nux操作系统共同建立的平台设计了电子相册系统主要实现的功能有对多种格式相片在640*480 LC D触摸屏上以幻灯形式播放、USB读取等功能。该设计具有成本低功能强大等特点。针对nandflash启动的支持实现了启动引导程序U-BOOT的修改和移植以及嵌入式linux内核的裁剪和驱动的修改包括nandflash分区、 LCD驱动修改等在软件开发的同时我们根据该项目设计需求完成了电路原理图和PCB版图的设计。
关键词 S3C2410 nandflash LCD触摸屏 linux
—I—
AB S TRAC T
With the prevalence of digital camera, traditional camera gradually withdrawfrom the stage of history.For digital photo appreciation and decoration,peoplegenerally only through the PC machine, is not very convenient.Electronic photoalbum is to meet this demand, it is small in size, can be replaced at any time andphoto,with USB transmission function, can plug and play,has a larger storagespace.This design uses the joint establishment of embedded operating system oflinux series S3C2410 chip as the main chip,and open source general platformdesign of electronic album system, the main function of a variety of photos in the640*480LCD touch screen in the slide show broadcast,USB read functions.Thedesign has the advantages of low cost,powerful features.The nandflash startupsupport, realize the bootloader of the modification and transplantation ofU-BOOT,and the embedded Linux kernel cutting and drive modifications,including nandflash partition,LCD driver modification; in software developmentand at the same time,we according to the design requirements of the project,completed the design of the circuit principle diagram and PCB layout.
Key words: S3C2410;Nandflash;LCD touch screen;Linux
—II—
目录
摘要. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .I
ABSTRACT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .II
目录. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .III
前言. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .IV
1绪论. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1
1. 1电子相册市场成长的必然性. . . . . . . . . . . . . . . . . . . . . . . . . .1
1. 2电子相册未来产品的发展. . . . . . . . . . . . . . . . . . . . . . . . . . . .1
1.2. 1数码相框. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1
1.2.2电子相册. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1
1. 3 目前市场上流行三种系统设计架构. . . . . . . . . . . . . . . . . . . .2
1.3. 1单芯片解决方案. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2
1. 3. 2以DSP+FPGA等硬件为基础用软件算法实现功能. . . . . 2
1.3.3 ARM9核心方案. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2
2硬件设计方案. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3
2. 1采用此硬件方案的优势. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4
2. 2采用LINUX操作系统的优势. . . . . . . . . . . . . . . . . . . . . . . . . . .4
2. 3硬件的设计方案. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5
2.3. 1 S3C2410简介. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5
2.3.2 SDRAM存储接口电路. . . . . . . . . . . . . . . . . . . . . . . . . . . . .6
2.3.3 NANDFLASH存储电路. . . . . . . . . . . . . . . . . . . . . . . . . . . . .7
2.3.4电源模块. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9
2.3.5USB电路模块. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9
2.3.6 LCD电路模块. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10
2.4小结. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12
3 LINUX系统的建立. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13
3. 1 LINUX的启动过程. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13
3. 2启动代码和BOOTLOADER. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15
3. 3 U-BOOT的简介. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .17
3.4 U-BOOT的移植和修改步骤. . . . . . . . . . . . . . . . . . . . . . . . . .19
3.4. 1 U-BOOT由Nand Flash启动概述. . . . . . . . . . . . . . . . . .19
3.4.2 U-BOOT基本配置移植步骤. . . . . . . . . . . . . . . . . . . . . . .19
—III—
3.4.3 U-BOOT对Nand Flash命令的支持. . . . . . . . . . . . . . . .20
3.4.4启动代码的移植. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .20
3.4.5 Nand Flash环境参数的设置. . . . . . . . . . . . . . . . . . . . .21
3. 5 LINUX内核移植. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21
3.5. 1 LCD驱动分析和修改. . . . . . . . . . . . . . . . . . . . . . . . . . . .22
3.5.2配置图形. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22
3.6文件系统的创建. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22
3.6. 1创建根文件系统. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23
3.6.2 yaffs文件系统的移植. . . . . . . . . . . . . . . . . . . . . . . . . .23
3. 7嵌入式图形用户界面系统概述. . . . . . . . . . . . . . . . . . . . . . .23
3. 7. 1图形用户界面GUI系统简介. . . . . . . . . . . . . . . . . .23
3. 7.2嵌入式图形用户界面简介. . . . . . . . . . . . . . . . . . . . . . .24
3. 7.3 Qt/Embedded简介. . . . . . . . . . . . . . . . . . . . . . . . . . . . .24
3.8 QT/EMBEDDED核心技术. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25
3.8. 1信号与槽. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25
3.8.2对象模型. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25
3.8.3国际化. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26
3.8.4 Frame Buffer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .27
3.8.5 Qt/Embedded工具. . . . . . . . . . . . . . . . . . . . . . . . . . . . .28
3.8.6 Qt/Embedded的移植. . . . . . . . . . . . . . . . . . . . . . . . . . . .29
3.9小结. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .29
4基于嵌入式的电子相册应用程序设计. . . . . . . . . . . . . . . . . . .29
4. 1图片播放模块. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .29
4. 1. 1程序实现功能及说明. . . . . . . . . . . . . . . . . . . . . . . . . . .29
4. 1.2关键代码实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .31
4. 2移动设备读取模块. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .32
4.2. 1程序实现功能及说明. . . . . . . . . . . . . . . . . . . . . . . . . . .32
4.2.2关键代码实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .33
4. 3设置模块. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .34
4.3. 1程序实现功能及说明. . . . . . . . . . . . . . . . . . . . . . . . . . . .34
4.3.2关键代码实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .35
4.4小结. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .36
结论. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1
参考文献. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1
致谢. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1
附录 Ⅰ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1
—IV—
附录Ⅱ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1
—V—
前言
随着数码相机的大量普及和人们对多媒体娱乐播放的需求各种记忆卡越来越多地被运用于存放数码照片和多媒体文件。不同用户的计算机中存满各种照片连桌上相框中照片的更换频率也提高了。先输出照片然后更换到相框中这样的程序比较烦琐常常要通过计算机才能将相片进行显示与分享。对数码相片进行便捷的显示、分享、编辑、删除、打印等操作逐渐成为市场的需求。电子相框数码伴侣等概念型产品逐渐出现在数码市场电子相册也由概念型产品进入市场已有六、七年。
目前电子相册产品主要应用于礼品市场其真正的目标用户却是非常广泛的并且它的最终消费人群应该是以家庭为主的普通消费者其应用的领域将更广阔。国内也有厂家很早就注意到这类产品的良好的发展趋势例如曾作为NH JM P4中国地区总代理的北京中电金捷数码科技有限公司就及时地推出了自有品牌的金捷电子相册并且以出众的外观设计和良好的口碑效应以及亲民的价格赢得了市场的青睐。
—IV—
1绪论
1 . 1 电子相册市场成长的必然性
1市场需求的必然性
在上世纪末本世纪初电子相册呈现迅速发展的势头普及型数码相机的分辨率由200万象素增长到现在的800—1500万象素价格也由300美元左右下降到现在的120美元左右。随着数码相机的日益普及作为一种以数字照片的保存、 回放和浏览为核心功能的产品——电子相册自然迎合了消费者的需求。
2 核心器件性能和价格的合理化推动市场的发展
电子相册有三大核心器件处理器半导体存储器和LCD显示单元。随着ARM的不断发展电子相册所需要的ARM+Jpeg处理器技术已为许多厂商所拥有集成了USB Host及卡接口单元的产品也屡见不鲜。Nandflash技术飞速发展单位容量的价格在过去的六年中约下跌40至50倍。
1 . 2电子相册未来产品的发展
1 . 2. 1数码相框
数码相框将是以数字照片的重显为主要功能的产品其功能更接近于传统意义上的相框。由于受到人机界面的限制为更方便地重显和浏览以及确定重显的规则这类产品不强调有大容量的内存以及丰富的卡接口。主要特征是
1 US B接口以便更新和同步数据
2在某些情况下如从P C端通过相框的US B接口同步数据时 允许修改数字照片的格式使其有最佳的重显效果
3仅依靠内置的半导体存储器存放需要重显的数字照片
4文件照片查询和播放规则设定非常简洁易用
5产品大致分为桌面和壁挂两种。
1 . 2.2电子相册
电子相册是以数字照片的存储和浏览为主要功能的产品 由于需要满足跟PC相同的类似功能这类产品的主要特征是
1 有大容量的内置数据存储器
2USB等各种卡接口并支持内部存贮器与各种数据存贮器之间的同步以及相互拷贝
—1—
轻云互联成立于2018年的国人商家,广州轻云互联网络科技有限公司旗下品牌,主要从事VPS、虚拟主机等云计算产品业务,适合建站、新手上车的值得选择,香港三网直连(电信CN2GIA联通移动CN2直连);美国圣何塞(回程三网CN2GIA)线路,所有产品均采用KVM虚拟技术架构,高效售后保障,稳定多年,高性能可用,网络优质,为您的业务保驾护航。官方网站:点击进入广州轻云网络科技有限公司活动规则:用户购买任...
今天中午的时候看到群里网友在讨论新版本的Apache HTTP Server 2.4.51发布且建议更新升级,如果有服务器在使用较早版本的话可能需要升级安全,这次的版本中涉及到安全漏洞的问题。Apache HTTP 中2.4.50的修复补丁CVE-2021-41773 修复不完整,导致新的漏洞CVE-2021-42013。攻击者可以使用由类似别名的指令配置将URL映射到目录外的文件的遍历攻击。这里...
MechanicWeb怎么样?MechanicWeb好不好?MechanicWeb成立于2008年,目前在美国洛杉矶、凤凰城、达拉斯、迈阿密、北卡、纽约、英国、卢森堡、德国、加拿大、新加坡有11个数据中心,主营全托管型虚拟主机、VPS主机、半专用服务器和独立服务器业务。MechanicWeb只做高端的托管vps,这次MechanicWeb上新Xeon W-1290P处理器套餐,基准3.7GHz最高...