(系统工程专业论文)数字相框设计与实现.pdf_第1页
(系统工程专业论文)数字相框设计与实现.pdf_第2页
(系统工程专业论文)数字相框设计与实现.pdf_第3页
(系统工程专业论文)数字相框设计与实现.pdf_第4页
(系统工程专业论文)数字相框设计与实现.pdf_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

西南交通大学硕士研究生学位论文第1 页 摘要 随着计算机技术和通信技术的迅速发展,嵌入式系统得到了越来越广泛 的应用,成为当前i t 产业的焦点之,呈现出巨大的市场需求。数字相框作为 一种以数字照片的保存、回放和浏览为核心功能的产品,是嵌入式系统一种 比较新颖的应用。如今,数字相机和照相手机己成为比较普遍的消费品,以 致个人数字相片呈现出几何级数的增长。如果采用传统方法将这些照片都冲 印出来回味、欣赏,不仅费钱,而且也不易保存。于是数字相框应运而生, 相对于传统的冲洗照片,它有更加优良的回放功能和保存作用。 本设计以集成了j p e g 模块以及多种存储卡接口的多媒体专业芯片 p l l 0 6 1 为核心,通过在u c l i n u x 操作系统上设计驱动和应用程序,实现了通 过触摸盘控制数字照片的保存、回放和浏览的数字相框。 本文首先简单介绍了硬件系统。该设计采用一款专业多媒体应用芯片 p l l 0 6 1 ,加上基本的存储系统和输入输出等外围设备,就构成了数字相框的 硬件系统。 然后,本文具体描述了数字相框软件系统。软件系统由三部分组成,即 操作系统、驱动程序和应用程序。在操作系统方面,论文简单介绍了u c l i n u x 操作系统的历史,深入分析了u c l i n u x 下的内存管理、进程管理和设备驱动 原理。在设备驱动方面,本文具体给出了触摸盘驱动和内存管理驱动的设计 思想和实现流程。在应用程序方面,本文具体给出了前端显示和后台处理中 的相关算法和实现流程图。 最后,本文给出了数字相框系统的调试结果,并对调试结果进行分析, 对在调试过程中出现的问题,给出了相应的解决方案。 关键词:嵌入式系统;数字相框;p l l 0 6 1 西南交通大学硕士研究生学位论文第1 i 页 a b s tr a c t a l o n gw i t ht h ef a s td e v e l o p m e n to fc o m p u t e ra n dc o m m u n i c a t i o n s t e c h n o l o g y ,t h ee m b e d d e ds y s t e mh a sb e e nu s e dm o r ea n dm o r ew i d e l y i t h a sb e c o m ear e s e a r c hf o c u so f i ta n dp r e s e n t sg r e a tm a r k e td e m a n d d p f ( d i g i t a lp h o t of r a m e ) w h o s em a i nf u n c t i o ni sk e e p i n g ,r e p l a y i n ga n d s h o w i n gp i c t u r e si san e wa p p l i c a t i o no fe m b e d d e ds y s t e m n o w ,d i g i t a l c a m e r aa n dp h o t om o b il ep h o n eh a v eb e c o m eu n i v e r s a lc o n s u m a b l e ,w h i c h m a k e st h eq u a n t i t yo fp e r s o n a lp h o t o si n c r e a s i n gf a s t s oi ti sag r e a t w a s t eo f m o n e yi f w ed e a lw i t hp h o t o sa sb e f o r e ,a n di t i sa l s o d i s c o m m o d i o u st ok e e pt h e s ep h o t o s s od p fi sr i s i n g ,a n di t sf u n c t i o n s o fr e p l a y i n ga n dk e e p i n gp h o t o sa r eb e t t e rt h a nt h et r a d i t i o n a lm e t h o d t h ed p fw i t ht h ef u n c t i o n so fk e e p i n g ,r e p l a y i n ga n ds h o w i n g p i c t u r e su n d e rt o u c hp a dc o n t r o l l i n gw a sr e a l i z e di nt h i sd e s i g n t h e p l l 0 6 1w h i c hi sam u l t i m e d i ap r o f e s s i o n a lc h i p ,a n di n t e g r a t e dj p e g m o d u l ea n dm u l t i p l i c a t em e m o r yc a r d si n t e r f a c e sw a su s e da st h ec p u o ft h ed p f ,a n dt h ed r i v e ra n da p p l i c a t i o np r o g r a m sf o rt h ed p fw e r e d e s i g n e db a s e do nu c l i n u xo s i nt h i sp a p e r f i r s t l y ,t h eh a r d w a r es y s t e mo ft h ed p fw a si n t r o d u c e di nt h i sp a p e r t h eh a r d w a r ep l a t f o r mi sc o m p o s e dw i t ht h em u l t i m e d i ap r o f e s s i o n a lc h i p p l l 0 6 1a n dp e r i p h e r a lu n i t ss u c ha sb a s i cm e m o r y ,i oa n ds oo n t h e n ,t h es o f t w a r es y s t e mo ft h ed p fw a si n t r o d u c e di nt h ep a p e r t h es o f t w a r es y s t e mi s c o m p o s e dw i t ht h r e ep a r t s ,o s ,d r i v e ra n d a p p li c a t i o np r o g r a m s f o rt h eo s ,t h ed e v e l o p m e n t ,m e m o r ym a n a g e m e n t , p r o c e s sm a n a g e m e n ta n dd e v i c ed r i v e rt h e o r e mo ft h e u c l i n u xw e r e i n t r o d u c e d f o rt h ed e v i c ed r i v e r ,t h ed e s i g n i n g c o n c e p t i o na n d i m p l e m e n t a t i o nf l o wo f t h et o u c hp a dd r i v e ra n dm e m o r y m a n a g e m e n t d r i v e rw e r ep r e s e n t e di nt h ep a p e r f o rt h ea p p l i c a t i o n ,t h ea l g o r i t h m s a n di m p l e m e n t a t i o nf l o wo ff r o n t e n dd i s p l a ya n db a c k g r o u n dp r o c e s s i n g w e r es h o w e dint h ep a p e r a tl a s t ,t h ed e b u go ft h ed p fw a sp r e s e n t e d ,a n dt h es o l u t i o n so f q u e s t i o n si nt h ed e b u gw e r es u p p li e di nt h ep a p e r k e y w o r d s :e m b e d d e ds y s t e m ;d p f ;p l l 0 6 1 西南交通大学 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定, 同意学校保留并向国家有关部门或机构送交论文的复印件和电子 版,允许论文被查阅和借阅。本人授权西南交通大学可以将本论文 的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印 或扫描等复印手段保存和汇编本学位论文。 本学位论文属于 1 保密口,在年解密后适用本授权书; 2 不保密酣使用本授权书。 ( 请在以上方框内打“”) 指导老师签名: f 孤叫讵可让 隅抄p 钐 罗垆 、-= 仔口 疆v 7 名 刃 签乳秘蝴仁日 文论位学 西南交通大学学位论文创新性声明 本人郑重声明:所呈交的学位论文,是在导师指导下独立进行研究 工作所得的成果。除文中已经注明引用的内容外,本论文不包含任何其 他个人或集体已经发表或撰写过的研究成果。对本文的研究做出贡献的 个人和集体,均己在文中作了明确的说明。本人完全意识到本声明的法 律结果由本人承担。 本学位论文的主要创新点如下: 1 、j p e g 图片采用硬件解码,图片从解码到显示的时间只需1 6 s 。 如果被解码图片的分辨率跟液晶分辨率在横轴或纵轴上成一定比例,则 图片从解码到显示的时间会缩短一半。 2 、采用优化的算法,来实现系统图片、文件夹信息的存储。 3 、在满足显示速度的情况下,采用不同算法,来实现图片的多种回 放模式和效果。 伽豸罗 伊7 ,弓,1 吁 西南交通大学硕士研究生学位论文第1 页 1 1 研究背景 第1 章绪论 随着计算机技术、通信技术的快速发展,人类社会迈入了信息飞速膨胀 的时代,每个人每天都必须面对大量的信息,所以需要借助各种数字工具, 才能快速地对各类信息进行分类处理。现在的数字工具,已经不局限于以前 的个人计算机,而是包括功能千差万别的各类专用嵌入式系统。 嵌入式系统( e m b e d d e ds y s t e m ) 是以应用为中心,以计算机技术为基础, 软硬件可以裁减的,能满足应用系统对功能、可靠性、成本、体积、功耗等 指标的严格要求的专用计算机系统。 嵌入式系统自诞生以来,得到了广泛的应用,从消费电器到工业设备, 从民用产品到军用器材,嵌入式系统被广泛地应用到各个领域。在众多的应 用中,消费电子是嵌入式系统应用比较多的领域,也是大众比较熟悉的应用 产品。当前,消费电子产品更新换代的速度进一步加快,市场需求不断增大。 数字相框作为一种以数字照片的保存、回放和浏览为核心功能的产品, 是一种比较新颖的消费电子应用。数字相框从最初的概念型产品进入市场, 至今已有六、七年时间。由于最初消费者的接受程度及价格过高等因素,数 字相框沉寂了四、五年。随着主要器件价格的下降,尤其是液晶和闪存价格 的下降,数字相框的价格也逐步下降,渐渐地在消费电子市场占据一定份额。 数字相框市场在2 0 0 4 年开始复苏,尤其在2 0 0 5 年,数字相框产品开始在欧 美热销。2 0 0 6 年全球数字相框供货量为2 8 0 万台,预计到2 0 1 1 年供货量将达 到4 2 3 0 万台。从屏幕尺寸来看,2 0 0 6 年5 6 9 英寸产品占主流,不过从2 0 0 7 年开始,7 8 9 英寸产品成为最大市场,预计2 0 1 1 年,7 8 9 英寸产品的 供货比例将持续保持首位心1 。现阶段,中国数字相框的市场处在逐渐走向成熟 的阶段,其产销量和市场需求将依然保持大幅度的增长。进入2 0 0 8 年以来, 中国的数字相框市场随着消费势头走高逐渐变暖。 早期的数字相框解决方案,多数是采用高频率的非专业多媒体控制器和 图像软件解码库,由于成本的限制,在显示设备上都会选择低分辨率和低色 彩度的l c d 。如今,数字相框市场正在经历一个上升期,很多半导体厂商纷纷 进入该市场,各种针对数字相框的专业级平台方案逐步发展成熟。现在的数 字相框般由专用多媒体控制器、精巧的操作系统、高品质的l c d 以及大容 西南交通大学硕士研究生学位论文第2 页 量的闪存构成。主流的数字相框专用控制器厂商很多,比如a t m e l 、h m l o g i c 、 p r o l i f i c 、s u n p l u s 等,这些公司的控制器硬件集成了l c d 控制器、大容量闪 存卡接口和图像及视频解码模块,这不仅提高了数字相框的运行效果,同时 也降低了硬件成本。在操作系统方面,可以采用多种操作系统,但l i n u x 凭 借其结构清晰、源代码开放等方面的优势,受到企业和开发者的青睐。不同的 多媒体控制器配合不同的操作系统,再加上各个公司的应用代码,可以实现 档次和效果不一的数字相框。所以设计一款优良的数字相框,可以采用不同 的方案。要针对不同的需求,选择合适的处理器和操作系统。 1 2 研究意义 中国的国民经济正飞速增长,人均购买力也在增大,并且原本昂贵的数 字相机与高像素照相手机也不再昂贵,享受灵活、方便、快捷的数字相机已 成为潮流。同时个人的数字相片开始呈现出几何级数的增长,用各种存储器 ( 电脑硬盘、半导体存储器及可刻录光盘) 保存照片成为人们习惯的做法, 即使打印出照片,其来源也大多来自数字相机或照相手机。当每个人的数字 照片如此多时,如果采用传统方法将这些照片都冲印出来回昧、欣赏,不仅 费金钱,而且传统的相框、相册也无法再承担起保存的重任。作为一种以数 字照片的保存、回放和浏览为核心功能的产品,数字相框应运而生。 1 3 主要研究内容及论文结构 本文的研究目标是实现一款可以通过电容式触摸键盘( 本文后面简称触 摸盘) 控制数字照片的保存、回放和浏览的数字相框。其中,主要研究内容 及工作包括: 1 熟悉p l l 0 6 1 的硬件资源以及开发平台; 2 。熟悉u c l i n u x 操作系统的内存管理、进程管理、进程间通信机制以及 驱动开发: 3 设计基于u c l i n u x 和p 11 0 6 1 硬件平台的驱动程序和应用程序,以实 现通过触摸盘控制数字照片的多种浏览模式和播放效果。 针对上述主要研究内容,本文的结构安排如下: 1 简要介绍嵌入式系统的相关内容,分析本课题的研究背景及研究意 义。 西南交通大学硕士研究生学位论文第3 页 2 介绍本课题的硬件平台。从所使用的p l l 0 6 1 的硬件系统出发,整体 上分析了数字相框的硬件组成,具体介绍p l l 0 6 1 的最小系统组成及 连接图,同时分析了p l l 0 6 1 的硬件优势。 3 从整体上介绍d p f ( 数字相框) 的软件系统构成。介绍了d p f 软件体 系中各个模块的功能、实现流程及模块之间的通信机制。 4 介绍u c l i n u x 下的驱动程序开发流程,主要描述了本系统设计的触摸 盘驱动和内存管理驱动开发。 5 具体介绍本系统文件信息扫描、多种浏览模式、播放效果的算法实现, 以及j p e g 文件格式和图片解码过程( 主要针对j p e g 的标记头和e x i f 信息头的解码) 。 6 介绍功能测试,并且分析测试结果,同时给出问题的解决方案。 西南交通大学硕士研究生学位论文第4 页 第2 章d p f 硬件系统构成 d p f 是一种以数字照片的保存、回放和浏览为核心功能的产品,所以在设 计实现d p f 的时候,要充分考虑到系统能否支持大容量存储和图片的快速解 码。d p f 主要采用如下两种方法来解决上面两个问题: 1 通用计算机系统( 包括嵌入式系统) 和图像软件解码; 2 采用专业多媒体芯片。 第一种方案在早期比较流行,开发起来比较简单,也能支持大容量存储 和图片的解码。因为通用计算机系统中的能支持几种常见的存储卡接口,如 u s b 、n a n df l a s h 等接口,同时有开源的图像软件解码库,可以被移植到多种 操作系统上,如解码j p e g 的i j g 库。但该方案只有在硬件上扩展出多种接口, 才能支持市场上不同的存储卡。这样不仅加重主控制器的负担,同时也提高 了系统的成本,而且该方案是采用软件解码。 第二种方案是采用专业多媒体芯片。专业芯片充分考虑到大容量存储功 能和图片的快速解码功能,此类芯片自身带有多种标准存储卡的接口,如u s b 、 s d 、s m 、m m c 、m s 、c f 等存储卡接口,并且内部有硬件图像解码模块。不需要 扩充太多的外围芯片,一款专业芯片加上基本的存储系统和输入输出设备即 可搭建成标准的数字相框平台,在成本方面比第一种方案低,在图片的解码 速度上比第一种方案快。 本设计采用第二种方案。 2 1 硬件平台框架 d p f 的硬件系统主要由c p u ( p l l 0 6 1 ) 、s d r a m 、f l a s h 、触摸盘、l c d 和闪 存卡等模块组成。 d p f 的硬件系统总体框图如图2 - 1 所示。 由图2 - 1 可见,本系统的c p u 采用p r 0 1 i f i c 公司的专业多媒体芯片 p l l 0 6 1 ,该芯片内部资源丰富,自带的存储卡接口可以支持市场上绝大部分 数码相机的存储卡,如u s b 、s d 、s m 、m m c 、m s 、c f 等存储卡,同时内部集成 静态图像j p e g 和动态图像m o t i o nj p e g 的解码模块。基于该芯片,外部只需 西南交通大学硕士研究生学位论文第5 页 扩展s d r a m 、f l a s h 、输入输出设备就可以构成一款数字相框的硬件系统。 图2 一id p f 的硬件框架 系统的s d r a m 采用h y 5 d u 5 6 1 6 2 2 ,它是一款1 6 位总线宽度的d d rs d r a m , 空间大小为2 5 6 m b 。f l a s h 采用k 9 f 4 g 0 8 u o m ,它是一块n a n df l a s h ,总线宽 度是8 位,空间大小为5 1 2 m b 。显示设备采用l c d 液晶显示器,通过修改系统 启动参数,可以支持多种分辨率和色彩深度。输入设备控制芯片采用e k t 8 1 2 2 , 它是一款低功耗的触摸盘控制器,可以通过多种模式跟主控制器进行通信, 例如i i c 、s p i 、u a r t 等模式。 本章下面具体介绍硬件系统的c p u 、s d r a m 、f l a s h 和外扩的触摸盘控制 芯片,并给出相应的连接图。 2 2 数字相框的主控制器 p l l 0 6 1 是一款低功耗、高性能的r i s c ( 精简指令系统) 的多媒体专用芯 片,它为数字多媒体系统提供了良好的解决方案。该芯片内部硬件集成有广 泛的外围控制接口和j p e g 的解码模块,可以满足多数多媒体应用的要求。总 体上,p l l 0 6 1 具有如下优势口1 : 高集成度; 高性能并且低功耗; 优化的多媒体应用模块; 西南交通大学硕士研究生学位论文第6 页 支持大量存储卡接口。 p l l 0 6 1 的内部结构如图2 2 所示口1 。 图2 - 2p l l 0 6 1 简单功能模块框图 p l l 0 6 1 的特色如下所示: m i p sr s 3 0 0 03 2b i tr i s e 核,可兼容m a c 协处理器; 主频可达1 4 4 m h z ,允许通过软件实时改变工作频率; 支持一级高速缓存:指令c a c h e8 k b ,数据c a c h e8 k b ; 芯片内部有1 6 k b 的被保护的r o m 空间,用于存储启动代码; 支持简单的系统内存映射,但没有m m u ; 可外扩一块r a m 芯片,可选6 4 1 2 8 2 5 6 5 1 2 m b 的s d r a m 或d d rs d r a m ; 支持s d r a m 的两种节能模式:掉电模式和自刷新模式; 1 5 个d m a 通道; 可连接r g b l 2 、r g b l 6 、r g b l 8 、r g b 2 4 的l c d ; 硬件支持光标闪烁,光标大小3 2 * 3 2 像素; 支持o s d ( o n s c r e e n d i s p l a y ) 及o s da l p h a 技术; 支持视频格式m o t i o nj p e g :最大帧速度为3 0 f p s ,画面分辨率是 西南交通大学硕士研究生学位论文第7 页 8 0 0 * 4 0 0 ; j p e g 解码:最大尺寸( 8 1 9 2 8 1 9 2 ),y u v 格式( 4 4 4 、4 2 0 、4 2 2 ) , 解码硬件缩小( 1 4 、1 1 6 、1 6 4 ) : s d ( 安全数字卡) 删c ( 多媒体卡) s p i 接口; m s 记忆棒接口; 可最多外接5 个m l c s l cn a n df l a s h 设备,1 个s m 或x d 卡; 硬件实现n a n df l a s h 操作中的e c c 检查和形成; 内部可设置n o rf l a s h 的两种连接模式:串行连接模式,并行连接模 式; 支持u s b 2 0 ( 全速) 主机端口和u s bo t g 技术; 支持u s b2 o 客户端接口:支持4 个u s b 设备地址和1 5 个u s b 可编 程端点: 8 1 6 b i t 的c f 卡接口; a t a a t a p i 主机控制接口: a c 9 7 i i s 接口; u a r t i r d a p s 2 接口; i i c 接口:兼容p h i l i p s 的i i c 总线标准,最高速度达到4 0 0 k h z , 可选择1 0 位和7 位地址模式; 3 2 位的r t c ; 通用i o 口和p w m 模块。 2 3s d r a m 接口 p l l 0 6 1 可以外扩一块s d r a m 或d d rs d r a m 存储芯片,大小可选择为 6 4 1 2 8 2 5 6 5 1 2 m b i t s ,并且可以通过设置p l l 0 6 1 的s d r a m 的控制寄存器来 支持总线宽度为1 6 位或3 2 位。 本系统的存储芯片采用h y 5 d u 5 6 1 6 2 2 。h y 5 d u 5 6 1 6 2 2 是一款1 6 位总线宽 度、5 1 2 m b 存储空间的d d rs d r a m 。 h y 5 d u 5 61 6 2 2 主要引脚如下所示n 1 : c k ,c k :芯片的时钟输入,采用差分输入模式; c k e :时钟使能,高电平使能时钟输入; c s :芯片的片选引脚,低电平有效,p l l 0 6 1 只能外扩一块s d r a m , 所以该引脚可以直接接地,或者与p l l 0 6 1 的m c s j 引脚连接; 西南交通大学硕士研究生学位论文第8 页 b a 1 :0 :组地址选择,用于片内4 个组的选择,可直接接p l l 0 6 1 的m b a 1 :0 引脚; a 1 2 :0 :行列地址信号线,依次接p l l 0 6 l 的m m a l 2 m m a o ; d q 1 5 :0 ;数据总线; r a s ,c a s :行、列地址锁存引脚; w e :芯片的写使能信号,低电平有效; d m ( l d m ,u d m ) :数据屏蔽引脚,在数据写过程中,当d m 的引脚为高时, 对应的数据总线上的数据被屏蔽,其中l d m 对应低8 位数据,u d m 对应高8 位数据; d o s ( l d q s ,u d q s ) :数据选通信号,用来捕获输入数据,l d q s 对应低 8 位数据,u d o s 对应高8 位数据。 p l l 0 6 1 与h y 5 d u 5 6 1 6 2 2 连接如图2 - 3 所示: p l l 0 6 1 h y 5 d u 5 6 1 6 2 2 m 1 5 :o 】 g - d q 【1 5 :0 】 砌值 1 2 :0 】 氏 , a 1 2 :0 】 船a 0 一 b a 0 皿a 1 b a i 加) q s 0l d q s 加) q s li 】d q s d q i b ol d d q l 1 切m c l kc k c l kc k 肥旺c 髓 舳丁 忱 m c s js 珊c a s j c a s m t a s jr a s 图2 - 3p l l 0 6 1 与h y 5 d u 5 6 1 6 2 2 连接图 西南交通大学硕士研究生学位论文第9 页 2 4f l a s h 接口 p l l 0 6 1 支持n o rf l a s h 和n a n df l a s h 。n a n df 1a s h 相对于n o rf l a s h 操作比较复杂,但价格却比较便宜。本系统中的f l a s h 不仅仅用来存储操作 系统和文件系统的镜像文件,同时也是系统中一块独立的存储空间。基于以 上考虑,本系统选择n a n df l a s h 。p l l 0 6 1 最多可以外接5 个8 位或1 6 位的 n a n d f l a s h ,支持一页最大8 k b ,块最大5 1 2 k b ,同时硬件实现e c c 的检查和 形成。 本系统的n a n df l a s h 采用k g f 4 g 0 8 u o m 。k 9 f 4 g 0 8 u o m 的存储空间是5 1 2 m b , 一页2 k b ,一块1 2 8 k b 。主要的引脚如下所示啼1 : i o 7 :0 :数据输入和输出引脚,是命令、地址、数据共享的引脚; c l e :命令发起使能引脚,高电平有效; a l e :地址发起使能引脚,高电平有效; c e :芯片使能引脚,低电平有效; r e ,w e :读、写使能引脚; w e :写保护引脚; r b :忙等待信号输出引脚,高电平表示已准备好,低电平表示忙。 p l l 0 6 1 与k 9 f 4 g 0 8 u o m 连接如图2 - 4 所示: p l l 0 6 1 礤f 4 g 0 8 u o m d i o 7 :0 刀 卜、 工0 7 :0 】 一 c l ec l e a l e 札e c e 耵 1 】 c e r o e 町他 眦耵 垤 1 | i p j 1 | p r d y _ b s 玎 r 丑 图2 - 4p l l 0 6 1 与k 9 f 4 g 0 8 u o m 连接图 西南交通大学硕士研究生学位论文 第1 0 页 2 5 触摸盘接口 本系统的输入设备采用触摸盘输入。e k t 8 1 2 2 是一款低功耗的触摸盘控制 芯片,内部集成一块8 位的r i s c 微控制器,该r i s c 微控制器监控触摸盘, 当用户触摸时,微处理器将相应的数据传输给主机。其中反抖动处理是由该8 位微处理器来完成,主机不会有任何负担。 e k t 81 2 2 的主要特性如下所示阳1 : 工作电压:2 6 v - 5 5 v ; 复位电压保持时间小于1 5 0 m s ; 与主机交互接口:s p i ( 主从模式) 、u a r t ( 9 6 0 0 b p s ) 、i i c ( 一般快 速模式) 和通用i o 口; 工作模式: 一般模式:指头接触到触摸盘和高频率扫描工作在该模式,芯 片电流值小于1 5 m a ; 空闲模式:指头离开触摸盘和低频率扫描工作在该模式,芯片 电流值小于2 0 0 u h ; 睡眠模式:没有扫描,芯片电流值小于2 0 u h 。 应用模式: i o 口模式:最大支持9 个触摸盘,该9 个触摸盘信息通过9 个g p i o ( 低电平表示有触摸) 传递给主机; 总线模式:最大支持1 3 个触摸盘。 触摸敏感度:可以软件设置,设置范围是0 1 0 ,默认值是4 。 p l l 0 6 1 支持i i c 模块,并且可以软件设置主或从模式,所以与e k t 8 1 2 2 的连接非常方便,主要引脚连接如图2 5 所示。 p l l 0 6 l e e t s l 2 2 8 1 | | j k x s d a 一0 s d os i ) at x x c l ko s c ks c l g p i o o i 盯 g p l 0 1 c e 图2 5e k t 8 1 2 2 主要引脚连接图 西南交通大学硕士研究生学位论文第l l 页 其中,e k t s l 2 2 主要连接引脚如下所述1 : s d os d a t x :i i c 的数据线,进行数据的输出和输入; s c k s c l :i i c 的同步时钟线,同步时钟由主机p l l 0 6 1 输出,e k t 8 1 2 2 根 据该时钟信号,读取s d os d a t x 上的数据; i n t :触摸信号引脚。当e k t 8 1 2 2 b w j k 监测来自触摸盘的数据时,就会将 该引脚置为低电平,从而通知主机有数据需要处理,待主机将数据读取后, 该引脚被置为高电平,直到再次监测到来自触摸盘的数据; c e :芯片使能引脚,高电平使芯片开始扫描触摸盘,低电平使芯片停止扫 描。 西南交通大学硕士研究生学位论文第1 2 页 第3 章d p f 软件系统整体设计 本章从整体上介绍了d p f 系统的软件框架,并描述了主要模块的功能和 内部组成,以及各个模块之间的通信机制。 3 1d p f 软件系统框架 根据各个部分的具体功能,数字相框的软件系统可以分为前端显示、后 台处理、操作系统、底层驱动等四个部分,系统框架如图3 - 1 所示。 前端显示 后台处理 操作系统 底层驱动 图3 一ld p f 软件系统框架 前端显示,是跟用户直接交互的一层,主要实现用户交互操作和向用户 展示数字照片。其中,主要实现如下两方面功能: 配置界面:为用户提供d p f 系统的功能配置界面,例如配置幻灯片播 放的时间间隔、幻灯片播放的文件夹或存储卡范围、幻灯片播放的效 果、菜单语言选择、是否要离线更新、是否显示照片的拍摄日期、是 否使能按键音等功能: 图片显示:让用户浏览指定的照片,这里可以采用三种浏览模式,即 缩略图、全屏、四分格浏览。 后台处理,是采集系统信息从而为前端显示服务,主要实现以下几方面的 西南交通大学硕士研究生学位论文第1 3 页 功能: 监控硬件:这里的监控是通过操作系统的系统调用访问底层驱动来实 现监控硬件操作。例如实时获取当前的存储卡信息( 插入和移出) 和 键值信息; 改变配置操作:当进入配置界面,进行配置时,首先系统要将最新的 配置信息保存到指定的f l a s h 存储块上,同时要同步配置信息的结构 体成员; 文件信息收集:访问当前系统的存储设备,统计系统上支持的数字照 片信息和文件夹信息,这为最终图片显示做好准备; 图片解码:对图片进行解码,主要是针对j p e g 解码; 音频解码:对m p 3 和w m a 格式的音频文件进行解码; 字库调整:主要针对中文简体、繁体和英文三个版本的支持,不同的 版本,调用不同的字库。 如上所述,前端显示和后台处理涉及到的工作非常多,本文只涉及文件 信息搜集、图片浏览和播放模式、j p e g 的解码( 主要针对e x i f 头的解码) 等 三部分,具体内容在第五章介绍。 操作系统,它是整个软件系统的平台,用于管理系统资源,协调各个模 块工作。由于p l l 0 6 1 没有m m u ( m e m o r ym a n a g e m e n tu n i t ) ,不方便使用l i n u x , 所以本系统采用u c l i n u x ,下一节是对该系统的具体介绍。 底层驱动,即硬件驱动代码,用于驱动系统硬件运行,是最接近内核级 的代码。d p f 系统涉及很多的字符设备驱动和块设备驱动,如串口驱动、 n a n d f l a s h 驱动、u s b 驱动、c f 卡驱动、s d 卡驱动、删c 卡驱动、m o t i o nj p e g 解码驱动等等,本论文只涉及i i c 驱动和内存分配驱动,下一章是对该部分 的详细介绍。 3 2 嵌入式u c l in u x 操作系统 3 2 1u o lin u x 简介 操作系统是嵌入式系统的灵魂,嵌入式系统设备要求其操作系统精小和 功能齐全,此类操作系统多种多样,但l i n u x 凭借其结构清晰、源代码的开 放性等方面的优势,受到企业和开发人员的青睐。 标准l i n u x 是针对有m m u 的处理器设计的。在此类处理器上,虚拟地址 西南交通大学硕士研究生学位论文第1 4 页 被送到m m u ,m m u 把虚拟地址映射为物理地址。通过赋予每个任务不同的虚拟 地址和物理地址转换映射,可支持不同任务之间的保护。全球每年生产的c p u 的数量在二十亿颗左右,其中超过8 0 应用于专用的嵌入式系统,此中又有相 当一部分面向低端市场,为降低硬件成本及运行功耗,有一类c p u 在设计中 取消了m m u 功能模块口1 。p l l 0 6 1 就是属于这类c p u 。 最初,运行于没有m m u 的c p u 之上的都是一些很简单的单任务操作系统, 甚至根本就没有操作系统而直接运行应用程序。在这种情况下,系统无法运 行复杂的应用程序,或者运行效率很低。而且,软件系统在不同平台上进行 转换时,所有的应用程序需要重写,并要求程序员十分了解硬件特性。这些 都阻碍了应用于这类c p u 之上的嵌入式产品开发的速度。这时,u c l i n u x 应运 而生 3 8 1 。u c l i n u x 是一个完全符合g n u g p l 公约的项目,完全开放代码,现由 l i n e o 公司支持维护。英文单词中u 表示m i c r o ,小的意思,c 表示c o n t r o l , 控制的意思,所以u c l i n u x 就是m i c r o - c o n t r o l - l i n u x ,即“微控制领域中的 l i n u x 系统”订1 。它专门针对没有姗u 的c p u ,并为嵌入式系统做了许多小型 化的工作。 u c l i n u x 的主要优点如下所示阳1 : 精简:开发人员可以编译u c l i n u x2 6 的内核得到一个3 0 0 k b 以下的 内核镜像,它包括终端和些基本的设备驱动以及只读文件系统; x i p ( e x e c u t i o ni np l a c e ) :x i p 可以实现在一个较小的r a m 情况下 执行内核镜像,甚至是应用程序; 便宜:u c l i n u x 是针对无肼u 的c p u ,选择了u c l i n u x ,就选择了没 有m m u 的c p u ,同时u c l i n u x 可以提供的功能接近于l i n u x 。而m m u 核心大小大约占典型的a r ms o c ( s y s t e m - o n c h i p 单片机) w a f e r ( 晶体) 的3 0 。在典型的网络和嵌入式系统里有一半以上的应用程序不需要 删u 。 完全的l i n u x 应用程序接口:除少数情况外,开发人员可以在u c l i n u x 平台上完全使用l i n u x 应用程序接口。能在u c l i b c 里使用多线程以 及使用标准的系统调用。 地址空间统一:在u c l i n u x 上,应用程序可以访问整个地址空间,包 括寄存器,开发人员可以制作固件代码作为应用程序运行在u c l i n u x e 。 西南交通大学硕士研究生学位论文 第1 5 页 3 2 2u c lin u x 内核结构 现代操作系统分为单一内核操作系统和微内核操作系统两种类型,单一 内核是将每一个内核层都集成到整个内核程序中,并代表当前内核态运行。 相反,微内核操作系统对内核的要求仅仅是一个很小的函数集,这个集合一 般包括一些同步机制、一个简单的调度程序和一个进程间通信机制。运行在 微内核之上的一些系统进程实现了其它操作系统层的函数,如内存分配程序、 设备驱动程序和系统调用处理程序等阳1 。 图3 2u c l i n u x 的内核结构 微内核迫使系统程序员采取模块化方式,尽管任何操作系统层都是一个 相对独立的程序,且必须通过良好定义的软件接e l 与其它层进行交互。微内 核结构中,操作系统的内核只需要提供最基本、最核心的一部分操作( l t 女u g , j 建和删除任务、内存管理、中断管理等) 即可,而其他的管理程序( 如文件系 统、网络协议栈等) 则尽可能地放在内核以外。这些外部程序可以独立运行, 并对外部用户程序提供操作系统服务,服务之间使用进程间通信机制( i p c ) 进 西南交通大学硕士研究生学位论文第1 6 页 行交互引。只有在需要内核的协助时,才通过一套接口对内核发出调用请求。 微内核结构的优点是使操作系统具有良好的灵活性。在内核以外的程序分别 独立运行,它们之间并不互相关联。因此,我们可以对这些程序分别进行维 护和拆装,只要遵循已经规定好的界面,就不会对其他程序有任何干扰。但 这样的结构也存在着不足之处。首先,程序代码之间的相互隔离,使得整个 系统丧失了许多优化的机会;其次,部分资源浪费在外部进程之间的通信上 ( 进程间通信的开销要比直接的函数调用大) ,这样,微内核结构在效率上必 然低于传统的单一内核结构,这些效率损失是结构精简的代价。 u c l i n u x 系统是一个类微内核系统,为了达到微内核理论上的很多优点而 不影响性能,u c l in u x v 2 4 以后的内核提供了模块。模块是一个目标文件,其 代码可以在运行时链接到内核或从内核解除链接。这种目标代码通常由函数 组成,用来实现文件系统、驱动程序或其他内核上层功能。与微内核操作系 统的外层不同,模块不是作为一个特殊的进程执行的。相反,与任何其他静 态链接的内核函数一样,它代表当前进程在内核态下执行。 图3 - 2 是u c l i n u x 的内核结构框图。 3 2 3 对没有m m u 的特殊处理 u c l i n u x 内核的功能结构,与l i n u x 基本相同,但对于u c l i n u x 来说,它 的设计就是针对无m m u 的处理器,系统的地址空间是所有进程共享的,不支 持虚拟内存管理技术。但是u c l i n u x 仍然采用存储器的分页管理,系统在启 动时就把实际存储器进行分页,在加载应用程序时程序分页加载。但是由于 没有m m u 管理,所以u c l i n u x 采用实存储器管理策略。 u c l i n u x 是直接访问内存的,它对内存不具有保护作用( 这一般是由m m u 来实现的) ,所有进程中访问的地址都是物理地址。一个进程在执行前,系统 必须为进程分配足够的连续地址空间,然后全部载入主存储器的连续空间中。 u c l i n u x 对内存管理减少的同时给开发人员提出了更高的要求。如果从易 用性这一点来说,u c l i n u x 的内存管理是一种倒退,退回到了u n i x 早期或是 d o s 系统。开发人员不得不参与系统的内存管理。从编译内核开始,开发人员 必须告诉系统这块开发板到底可以用多少的内存,从而系统将在启动的初始 化阶段对内存进行分页。 由于应用程序加载时必须分配连续的地址空间,针对不同的硬件平台, 可以一次成块分配内存大小的限制是不同的,所以开发人员编写代码时必须 西南交通大学硕士研究生学位论文第1 7 页 考虑内存的分配情况,并关注应用程序需要运行空间的大小。另外由于采用 实存储器管理策略,系统上的所有进程存在于同一个地址空间,程序开发时 要保证不侵犯其他进程的地址空间,从而不至于破坏系统的正常工作,或导 致其他进程的运行异常。 3 2 4u c k ip i m x 内核的进程管理 l i n u x 是一个多任务操作系统,即可以同时执行多个任务,u c l i n u x 也保 留了l i n u x 的这一特性,也是一个多任务操作系统。 1 l i n u x 系统的进程管理 在标准l i n u x 中,父进程调用f o r k 来创建子进程。子进程会继承父进程 的一些特性,它们共享一个代码段,但各自拥有独立的堆栈、数据段、用户 空间以及进程控制块。换言之,父与子进程执行的代码是一样的,但各有各 的程序计数器与私人数据。 当内核接收到f o r k 请求时,它会查核三件事:首先检查内存空间是否足 够;其次检查进程表是否有空缺;最后检查用户是否建立太多的子进程。如 果上述三个条件满足,那么操作系统会给子进程一个进程i d ,并且设定c p u 占用时间,接着设定与父进程共享的段,同时将父进程的i n o d e 拷贝一份给 子进程,最终子进程会返回数值0 以表示它是子进程,至于父进程,它可能 等待子进程的执行结束,或与子进程同时执行。 标准l i n u x 中非常高效的f o r k 操作是依赖于m m u 支持的写时拷贝技术, 因而无法用于u c l i n u x

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论