基于嵌入式ARM-Linux的电子相册设计.doc
《基于嵌入式ARM-Linux的电子相册设计.doc》由会员分享,可在线阅读,更多相关《基于嵌入式ARM-Linux的电子相册设计.doc(38页珍藏版)》请在沃文网上搜索。
1、摘要目录摘要IABSTRACTII前言IV1 绪论11.1 电子相册市场成长的必然性11.2设计理念12 硬件设计方案22.1 采用此硬件方案的优势32.2 采用Linux操作系统的优势32.3 S3C24010处理器42.4 小结93 LINUX系统的建立93.1 Linux的启动过程93.2 启动代码和BootLoader103.3 U-BOOT的移植和修改步骤113.4 Linux内核移植143.5 文件系统的创建153.6 Qt/Embedded核心技术163.7 小结204 基于嵌入式的电子相册应用程序设计204.1图片播放模块204.2 移动设备读取模块234.3 设置模块254.
2、4 小结27结论28参考文献29致谢31附录32摘要随着数码相机的盛行,传统相机逐渐退出历史的舞台。对于数码相片的欣赏和摆设,人们一般只能通过PC机,极其不方便。电子相册正是迎合这种需求,它体积小,能随时更换相片,并具有USB传输功能,能够即插即用,拥有较大的存储空间。本设计采用了比较通用的S3C2410系列处理芯片为主芯片和源代码开放的嵌入linux操作系统共同建立的平台设计了电子相册系统,主要实现的功能有对多种格式相片在640*480LCD触摸屏上以幻灯形式播放、USB读取等功能。该设计具有成本低,功能强大等特点。关键词:S3C2410 Nandflash LCD触摸屏 linuxIVAB
3、STRACTABSTRACTWith the popularity of digital camera, traditional camera gradually withdraw from the stage of history. For digital photo appreciation and furnishings, it is generally only through the PC, is extremely inconvenient. Electronic album is to meet this demand, its small size, can be replac
4、ed at any time photos, and with the USB plug and play, with a large storage space. This design uses a more generic S3C2410 series processing chip-based chips and open source embedded Linux operating system designed to establish a platform for the electronic album, The main functions of a variety of
5、formats photos on the touch screen of 640 * 480LCD a slide show playback, USB read. The design has a low cost, powerful features.Key words: S3C2410 Nandflash LCD touch screen Linux 前言前言随着数码相机的大量普及和人们对多媒体娱乐播放的需求,各种记忆卡越来越多地被运用于存放数码照片和多媒体文件。不同用户的计算机中存满各种照片,连桌上相框中照片的更换频率也提高了。先输出照片,然后更换到相框中,这样的程序比较烦琐,常常要
6、通过计算机才能将相片进行显示与分享。对数码相片进行便捷的显示、分享、编辑、删除、打印等操作逐渐成为市场的需求。电子相框,数码伴侣等概念型产品逐渐出现在数码市场,电子相册也由概念型产品进入市场已有六、七年。目前,电子相册产品主要应用于礼品市场,其真正的目标用户却是非常广泛的,并且它的最终消费人群应该是以家庭为主的普通消费者,其应用的领域将更广阔。国内也有厂家很早就注意到这类产品的良好的发展趋势,例如曾作为NHJMP4中国地区总代理的北京中电金捷数码科技有限公司,就及时地推出了自有品牌的金捷电子相册,并且以出众的外观设计和良好的口碑效应,以及亲民的价格赢得了市场的青睐。27黑龙江八一农垦大学毕业设
7、计(论文)1 绪论1.1 电子相册市场成长的必然性(1)市场需求的必然性在上世纪末本世纪初,电子相册呈现迅速发展的势头,普及型数码相机的分辨率由200万象素增长到现在的8001500万象素,价格也由300美元左右下降到现在的120美元左右。随着数码相机的日益普及,作为一种以数字照片的保存、回放和浏览为核心功能的产品电子相册自然迎合了消费者的需求。(2) 核心器件性能和价格的合理化推动市场的发展电子相册有三大核心器件:处理器,半导体存储器和LCD显示单元。随着ARM的不断发展,电子相册所需要的ARM+Jpeg处理器技术已为许多厂商所拥有,集成了USB Host及卡接口单元的产品也屡见不鲜。Nan
8、dflash技术飞速发展,单位容量的价格在过去的六年中约下跌40至50倍。电子相册是以数字照片的存储和浏览为主要功能的产品,由于需要满足跟PC相同的类似功能,这类产品的主要特征是:(1)有大容量的内置数据存储器;(2)USB 等各种卡接口,并支持内部存贮器与各种数据存贮器之间的同步以及相互拷贝;(3)强大的文件管理功能:浏览,搜寻,命名(重命名),复制,删除,备份等;(4)带或不带内建显示单元,有能支持其它高分辨率显示设备的接口(如色差,VGA甚至是HDMI);与其他产品的功能结合的产品形态以及大头贴等产品,用于不在本文所包含的范围内。1.2设计理念本设计采用了比较通用的S3C2410系列处理
9、芯片为主芯片和源代码开放的嵌入linux操作系统共同建立的平台设计了电子相册系统,主要实现的功能有对多种格式相片在640*480LCD触摸屏上以幻灯形式播放、USB读取等功能。该设计具有成本低,功能强大等特点。针对nandflash启动的支持,实现了启动引导程序U-BOOT的修改和移植,以及嵌入式linux内核的裁剪和驱动的修改,包括nandflash分区、LCD驱动修改等;在软件开发的同时,我们根据该项目设计需求,完成了电路原理图和PCB版图的设计。在硬件上,可以再加一个DSP处理器,专门用来处理音视频的解码,实现视频播放功能;也可以增加以太网络或WIFI模块,实现上网获取图片的功能。2 硬
10、件设计方案本设计选用方案:以ARM9CPU_S3C2410为核心,以Linux操作系统为软件核心架构。基于ARM的微处理器具有低功耗、低成本、高性能等特点,ARM采用RISC(精简指令集计算机)架构和流水线结构,使用了大量的寄存器,具有极高的工作效率。其中,RISC架构具有如下特点:固定长度的指令格式,指令归整、简单,基本寻址方式只有23种,使用单周期指令,便于流水线操作。ARM微处理器按性能分为以下系列:ARM7,ARM9,ARM9E,ARM10E,SecureCore Xscale。ARM支持两种类型的指令集:一种是32位的ARM指令,以字对准保存;另一种是16位的Thumb指令,半字对准
11、保存。ARM具有7种工作状态:USR:正常的程序执行状态FIQ:用于高速数据传输或通道处理IRQ:用于通用的中断处理SVC:操作系统使用的保护模式ABT:用于虚拟存储及存储保护UND:当出现未定义指令终止时进入该模式SYS:运行具有特权的操作系统任务在ARM体系中有一个重要的概念异常:当正常的程序执行流程发生暂时的停止时就叫做异常,例如处理一个外部的中断请求。在处理异常之前,当前的处理器状态必须被保留,当异常处理完后,异常发生前的程序可以继续执行。处理器允许多个异常同时发生,它们将会按固定的优先级进行处理。ARM支持的异常类型有:复位:复位电平有效时,产生复位异常;未定义指令:遇到不能处理的指
12、令时,产生未定义指令异常;软件中断:执行SWI指令产生,用于用户模式下的程序调用特权操作指令;指令预取中止:处理器预取指令的地址不存在,或该地址不允许当前指令访问,产生指令预取中止异常;数据中止:处理器数据访问指令的地址不存在,或该地址不允许当前指令访问时,产生数据中止异常;中断服务请求:外部中断请求有效,且CPSR中的1位为0时,产生IRQ异常;快速中断请求:快速中断请求引脚有效,且CPSR中的F位为0时,产生FIQ异常。2.1 采用此硬件方案的优势如上所述:(1)系统芯片功能强大,实现的功能多,对于新的多媒体格式支持性好,只需要安装更新的软件;(2)硬件电路简单,可采用标准电路,不需耗费过
13、多的资源(人力,资金等);(3)可以在硬件上增加模块,留作二次开发使用,极为方便;(4)S3C2410是一个比较成熟的芯片,技术积累齐全;(5)S3C2410支持丰富的存储卡接口。2.2 采用Linux操作系统的优势Linux是一种自由和开放源码的类Unix操作系统。目前存在着许多不同的Linux,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,从手机、平板电脑、路由器和视频游戏控制台,到台式计算机、大型机和超级计算机。Linux是一个领先的操作系统,世界上运算最快的10台超级计算机运行的都是Linux操作系统。严格来讲,Linux这个词本身只表示Linux内核,但实际上
14、人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU 工程各种工具和数据库的操作系统。Linux是我国软件的国策,尤其是在IT行业,庞大的使用群体、开放的体系和丰富资源使得Linux将是日后普及和推广的重点。Linux的优越性日益凸显Linux将是我们学习和工作实用的首选。目前,很多网络技术、服务器、网络设备都是基于Linux操作系统,并且在不少时尚的手机、PDA、媒体播放器等消费类电子产品中已经广泛使用Linux作为操作系统。在Linux软件国策的指引下,Linux已经得到很大的普及。很多学生已经自发地通过书籍、互联网等资源学习Linux。综上所述,提高技术水平就是以市场流
15、行需求为导向进行研发,特别是像嵌入式种工程类的技术。在条件允许的情况下,我们甚至应该时刻与国际接轨,掌握当前最领先的技术。2.3 S3C24010处理器2.3.1 S3C2410简介S3C2410为手持设备和一般类型应用提供了低价格、低功耗、高性能小型微控制器的解决方案。采用272脚FPGA封装,内含一个ARM920T内核。为了降低系统成本,S3C2410A 提供了以下丰富的片内外围。ARM9-S3C2410处理器,ARM920T核由ARM9TDMI、存储管理单元,MMU和高速缓存三部分组成。其中MMU可以管理虚拟内存,高速缓存由独立的16KB地址和16KB数据高速Cache组成。ARM92T
16、0有两个内部协处理器:CP14和CP15。CP14用于调试控制CP15用于存储系统控制以及测试控制。总的资源如下:内核工作电压为1.2V,内存工作电压兼容1.8V/2.5V/3.3V,外围I/O口使用3.3V,集成16KB的指令缓存和16KB的数据缓存,带MMU(Memory Management Unit),支持SRAM和SDRAM等内存。LCD控制器接口(最高支持4K色的STN和256K色的TFT)4通道DMA控制器3通道UART2通道SPI接口IIC总线接口IIS音频编解码数据接口AC97音频接口MMC/SD存储卡接口2通道USB传输接口和1个复用的USB设备接口4通道PWM(脉宽调制)
17、定时器和1个看门狗定时器8通道10位ADC和一个触控屏接口实时时钟130个GPIO口和24通道外部中断源接口片上PLL时钟发生锁相环总的方案图如图2.1:LCD显示ARM芯片S3C2410RESET电 路SDRAMNandFlash时钟电路USB接口电源图2.1 硬件系统框图2.3.2 SDRAM存储接口电路SDRAM:同步动态随机存储器,同步是指 Memory工作需要同步时钟,内部的命令的发送与数据的传输都以它为基准;动态是指存储阵列需要不断的刷新来保证数据不丢失;随机是指数据不是线性依次存储,而是自由指定地址进行数据读写。使用S3C2410的nGCS6片选信号的数据总线与上S3C2410的
18、低16位相连。操作地址的最小值变为0x00000004,所以将S3C2410的ADDR2-ADDR14顺序与KM416S4030的A0-A12,HY29LV160的A1-A13相连。KM416S4030的BA0、BA1是SDRAM内部BANK选择地址线,代表着SDRAM内存的最高地址,因为两片KM416S4030组成了64M的内存,也就是说要26根地址线来实现寻址,所以将BA0、BA1分别与S3C2410的ADDR24和ADDR25引脚相连原理图如图2.2所示:图2.2 SDRAM存储电路2.3.3 NANDFLASH存储电路Nand-flash内存是flash内存的一种,其内部采用非线性宏单
19、元模式,为固态大容量内存的实现提供了廉价有效的解决方案。Nand-flash存储器具有容量较大,改写速度快等优点,适用于大量数据的存储,因而在业界得到了越来越广泛的应用,如嵌入式产品中包括数码相机、MP3随身听记忆卡、体积小巧的U盘等。NOR和NAND是现在市场上两种主要的非易失闪存技术。当前NORFLASH价格比较昂贵,考虑到成本问题,本设计采用了64M的K9F1208U0B Nand Flash作为介质存储电路,将K9F1208U0B的I/O0-7与上S3C2410的数据总线DATA0-7相连,实现数据的读写。S3C2410中Nand Flash控制器的R/nB与K9F1208U0B的R/
20、nB相连,可以检查nFCE/GPA22、nFRE/GPA20、nFWE/GPA19分别与K9F1208U0B的CLE、nCE、nRE、new是否相连。分别可以控制K9F1208U0B的地址锁存使能、命令锁存使能、片选使能、读使能和写使能。原理图如图2.3所示:图2.3 NandFlash 存储电路2.3.4 电源模块S3C2410的电源引脚分为:VDDalive引脚给处理器复位模块和端口寄存器提供1.8V电压;VDDi和VDDiarm为处理器内核提供1.8V电压;VDDi_MPLL提供1.8V模拟电源和数字电源;VDD_UPLL为UPLL提供1.8V模拟电源和数字电源;VDDOP和VDDMOP
21、分别为处理器存储端口提供3.3V电压;VDDRTC为 处理器内的ADC系统提供3.3V电压;VDDRTC为时钟电路提供1.8V电压,该电压在系统掉电后仍需要维持。在该系统中,需要使用1.8V和3.3V的直流稳压电源。为简化系统电源电路的设计,要求整个电路系统的输入为高质量的5V直流稳压电源,然后采用两个LM117电压稳压器转成3.3V的VDD和VCC;再采用IN4148稳压管来保证电源输入电压的稳定性。 组成。复位电路是用一个74HC14反施密特触发芯片实现两级非门是用于按钮去抖动和波形整形;nRESET端的输出状态与RESET端输出状态相反,用于低电平复位的器件。电源电路
22、如图2.4所示:图2.4 电源电路2.3.5 USB 电路模块根据S3C2410内部的USB控制器,它的接口规范:主机接口的正负数据线分别接15K欧姆的下拉电阻,并且分别通过22欧姆的电阻与CPU的Dpn和DNn相连;设备接口的正数据线要接1.5K欧姆的上拉电阻,而负数据线接470欧姆的下拉电阻,正负数据线与CPU之间接22欧姆的终端电阻。2.3.6 LCD电路模块LCD 的构造是在两片平行的玻璃基板当中放置液晶盒,下基板玻璃上设置TFT(薄膜晶体管),上基板玻璃上设置彩色滤光片,通过TFT上的信号与电压改变来控制液晶分子的转动方向,从而达到控制每个像素点偏振光出射与否而达到显示目的。现在LC
23、D已经替代CRT成为主流,价格也已经下降了很多,并已充分的普及。图2.5和图2.7是S3C2410X芯片内部集成的LCD控制器的外部管脚图和内部方框图,其中内部的寄存器作用如下:REGBANK有17个可编程寄存器组和256*16的调色板存储器,用来设定LCD控制器。LCDCDMA是一个专用DMA,自动从帧存储器传输视频数据到LCD控制器,用这个特殊的DMA,视频数据可不经过CPU干涉就显示在屏幕上。VIDPRCS接受从LCDCDMA来的视频数据,并在将其改变到合适数据格式后,经VD23:0将之送到LCD驱动器,如4/8单扫描或4双扫描显示模式。LENDLCD-PWRENLCDVF0LCDVF1
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
20 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 嵌入式 ARM Linux 电子相册 设计