




已阅读5页,还剩50页未读, 继续免费阅读
(通信与信息系统专业论文)基于嵌入式linux的图像采集与传输实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
硕士论文 基于嵌入式l i n u x 的图像采集与传输实现 摘要 图像采集系统在交通、银行、家庭安防等领域应用广泛,具有直观、方便、信息内 容丰富等优点,目前正在向网络化和嵌入式的方向发展。因此,本文在对其发展现状及 发展趋势进行详细的研究之后,设计了一种基于嵌入式l i n u x 的图像采集与传输实现方 案,采用该方案设计的系统具有体积小、成本低、性能高等优点,具有很好的实用价值。 首先,本文对系统的软硬件做了整体的设计,系统的硬件开发平台为a r m 开发板, 微处理器$ 3 c 2 4 4 0 ,外接u s b 摄像头z c 3 0 1 p ,并通过以太网连接宿主机p c ;其次,本 文研究了系统的软件开发平台,主要包括交叉编译环境的建立、b o o t l o a d e r 的移植、l i n u x 内核的移植和根文件系统的移植;然后,通过利用v i d e of o rl i n u x2 提供的接口函数设 计摄像头的图像采集程序,利用j p e g l i b 库和f r a m e b u f f e r 实现了图像的解码和在l c d 上 的显示;最后,采用t c p 协议作为图像数据流传输协议,在a r m 开发板上建立t c p 服务器,完成采集图像的发送,在p c 机l i n u x 操作系统下建立客户端,接收图像,完 成图像的解码和利用s d l 库函数对其进行显示。 本文完成了系统的整体测试,给出运行结果。对所完成的设计内容进行了总结,并 在此基础上提出了改进方法。 关键词:l i n u x ,嵌入式,u s b 摄像头,v i d e of o rl i i l u x2 ,l c d ,t c p ,s d l a b s t r a c t 硕士论文 a b s t r a c t w i t ht h ea d v a n t a g e so fi n t u i t i v ed i s p l a y , c o n v e n i e n c e ,t h er i c hi n f o r m a t i o na n ds oo n , i m a g ea c q u i s i t i o ns y s t e mi sw i d e l yu s e di nt r a f f i c ,b a n k , s e c u r i t ya n do t h e rf i e l d s n o wi t i s d e v e l o p i n gt ot h ed i r e c t i o no fn e t w o r k e da n de m b e d d e d t h e r e f o r e ,b a s e do nt h es t u d yo ft h e c u r r e n td e v e l o p m e n ta n dt r e n do fi m a g ea c q u i s i t i o ns y s t e m , t h ep a p e rd e s i g nan e wm e t h o dt o f i n i s ht h ei m a g ea c q u i s i t i o na n dn e t w o r kt r a n s m i s s i o nb a s e do ne m b e d d e do fl i n u x b yu s i n g t h i sm e t h o d ,t h es y s t e mh a st h ea d v a n t a g e so fs m a l lv o l u m e ,l o wc o s t ,h i g hp e r f o r m a n c ea n d e t c ,i th a sag o o dp r a c t i c a lv a l u e f i r s to fa l l ,t h eh a r d w a r ea n ds o f t w a r eo ft h es y s t e ma reg e n e r a l l yd e s i g n e d t h e h a r d w a r ep l a t f o r mo ft h es y s t e mi sa r mb o a r du s i n g $ 3 c 2 4 4 0m i c r o p r o c e s s o r i tc o n n e t st o u s bc a m e r at h r o u g hu s bp o r ta n dt h eh o s tp ct h r o u g he t h e m e t s e c o n d , w es t u d yt h e h a r d w a r ed e v e l o p i n gp l a t f o r mo ft h e s y s t e m ,i n c l u d i n g t h ee s t a b l i s h m e n to ft h ec r o s s c o m p i l i n ge n v i r o n m e n t ,t h et r a n s p l a n t a t i o no fb o o t l o a d e r , l i n u xk e r n e la n dr o o tf i l es y s t e m t h e nw ed e s i g nt h ec a m e r ai m a g ec o l l e c t i o np r o g r a mb yu s i n gt h ev i d e of o rl i n u x2a p i f u n c t i o n n e x tw ef i n i s ht h ei m a g ed e c o m p r e s s i o na n dd i s p l a yo nl c db yu s i n gj p e g l i ba n d t h ef r a m e b u f f e r l a s t , w ec h o o s et h et c p p r o t o c o la st h ei m a g ed a t at r a n s f e rp r o t o c o l 。t h e t c ps e r v e ri sd e s i g n e do nt h ep l a t f o r mo fa r m ,i ts e n d st h ea c q u i r e di m a g e st ot h ec l i e n t o n t h eh o s tp cw ed e s i g nt h et c pc l i e n ti nt h es y s t e mo fl i n u x ,r e c e i v et h ei m a g e sa n dt h e n f i n i s ht h ei m a g ed e c o m p r e s s i o na n dd i s p l a yi tb yu s i n gs d ll i b r a r y t h eg e n e r a lt e s to ft h es y s t e mi sf m i s h e da n dt h eo p e r a t i o nr e s u l t sa r eg i v e n w e s u m m a r i z et h ed e s i g nw o r kw eh a v ef m i s h e da n dt h e ng i v et h em e t h o do ft h ei m p r o v e m e n t b a s e do ni t k e yw o r d :l i n t l x ,e m b e d ,u s bc a m e r a , v i d e of o r l i n u x2 ,l c d ,t c p , s d l h 硕士论文 基于嵌入式l i n u x 的图像采集与传输实现 1 绪论 1 1 研究背景 随着信息技术的快速发展,数字图像的采集、处理、传输技术近几年得到了很快的 发展,因其具有直观、方便、信息内容丰富等优点,在各行各业中应用广泛,具有很大 的发展空间【l ,2 j 。 军用方面,图像采集系统可以将搜集到的图像情报通过无线网络传输到监控指挥中 心,监控指挥中心将其作为重要依据,指挥前方战场行动。民用方面,在视频监控、交 通运输、智能家居、生物医学、工业生产等领域,都有着极其重要的作用。在不久的将 来,也许我们只需通过一个摄像头,就可以直接进行身份的验证和识别,而不是像现在 一样需要钥匙或密码。所以,对图像采集处理系统的研究具有重大的意义。 传统的图像采集技术采用c c d 摄像机获取图像信息,该方法易于实现,但是成本 较高,而且在实时性和人机交互性方面也不能得到很好的满足。超大规模集成电路的出 现,加快了嵌入式硬件的发展,从而使得图像采集系统的体积大大地减小,同时随着嵌 入式软件的快速发展,系统网络化和图像高频率采集也成为一种可能。在此基础上,我 们得出一种很好的图像采集技术改善方法,即将嵌入式技术和图像采集结合在一起,研 究出一种基于嵌入式的图像采集处理系统【3 1 。 嵌入式系统是一种为特定应用而设计的专用计算机系统,其发展迅速,系统在效率 和稳定性方面都具有很大的优势,而且成本不高、体积小,方便携带,在许多特殊应用 场合中使用,同时也越来越多地出现在人们的生活中,深受广大用户的喜爱。系统硬件 部分根据应用需求进行设计,添加系统所需设备,去除其他无用设备,这样不仅节省了 资源,而且系统也更加精简;系统软件部分一般采用模块化设计,方便后期的维护和管 理;硬件与软件的紧密结合,使得系统性能更加稳定。趋于成熟的嵌入式技术与图像采 集技术、网络传输技术结合在一起,为图像采集处理系统的发展助了一臂之力【4 ,5 1 。 在前面的研究背景下,本论文提出了一种成本较为低廉的基于嵌入式l i n u x 的图像 采集与传输实现方案,主要完成的内容有嵌入式开发平台的创建、前端图像采集、图像 解码、l c d 显示、图像网络传输及客户端解码显示。前端采集部分采用a r m 开发板 ( $ 3 c 2 4 4 0 微处理器) 和中星微u s b 摄像头,开发环境为嵌入式l i n u x 操作系统,网 络传输部分则采用s o c k e t 套接字传输,p c 客户端利用s d l 库显示。 1 2 研究现状与发展趋势 1 绪论 硕士论文 目前,国内外对图像采集技术的研究主要是基于p c 机,p c 机具有一些通用的接口 和强大的处理能力,发展已经相当成熟。除此之外,图像采集卡在图像采集系统中也被 广泛应用,许多相关的软件也层出不穷。基于p c 机的图像采集系统功能强大,软件丰 富,技术成熟,应用范围广泛。但是,该系统不方便携带,不适用于许多特殊的场合, 而且成本相对较高,采集过程中需占用很多的资源,容易造成资源浪费巾j 。 随着微电子技术的不断发展与创新,大规模集成电路的集成度和工艺水平也得到了 很大的提高,使得图像采集系统在多种平台上实现成为可能。同时嵌入式软件的发展, 特别是嵌入式实时操作系统的提出,为嵌入式系统应用软件的开发提供了更好的底层软 件,使得开发平台效率更高。 嵌入式系统主要分为硬件和软件两大部分,硬件主要包括嵌入式微处理器和外围设 备,软件主要包括底层软件、支撑软件和应用软件。 在整个嵌入式系统中,嵌入式处理器是个特殊的硬件单元,它是为特定的用户和特 定的应用而专门定制的,主要负责控制和辅助系统的运行,是整个系统的核心部分。其 范围很广,有4 位、8 位、3 2 位、“位,现在大规模应用的单片机就是8 位,嵌入式 c p u 有3 2 和6 4 位两种。目前具有嵌入式功能特点的处理器已超过1 0 0 0 种,有单片机、 d s p 、f p g a 等,速度越来越快,性能也越来越强;寻址空间可从6 4 k b 到1 6 m b ,处 理速度也不一样,最慢o 1 m i p s ,最快可达2 0 0 0 m i p s :封装引脚的个数一般可从8 个 到1 4 4 个。根据其发展现状,嵌入式处理器主要分为微控制器( m c u ) 、嵌入式微处理 器( e m p u ) 、数字信号处理器( d s p ) 和片上系统( s o c ) 这四大类,嵌入式微处理器 具有体积小、重量轻、成本低、稳定性高等优点,主要类型有a m l 8 6 8 8 、3 8 6 e x 、p o w e r p c 、6 8 0 0 0 、a r m s t r o n ga r m 等系n t 7 , 引。 嵌入式外围设备,一般分为存储( f l a s h 、s d r a m ) 、接口( i i c 总线接口、r s - 2 3 2 串口等) 、人机交互( l c d 、键盘等) 三部分,是在整个嵌入式系统中负责存储、通信、 调试和显示等功能的一些硬件设备。 近年来,互联网的飞速发展,各种各样的3 c 合一产品将会成为网络接入设备的发 展主流,在人们的工作和家庭生活中扮演越来越重要的角色,这使得嵌入式系统的应用 服务领域得到了很大的扩展。相应地,嵌入式软件也将得到很好的发展,不仅包括嵌入 式操作系统和文件系统等一些系统底层软件,还包括支撑软件,比如调试软件、数据库、 用户界面系统、网络通讯协议和各种应用软件。如今的商业嵌入式操作系统种类繁多, 产品间的竞争相当激烈,具有代表性的主要有v x w o r k s 、p a l mo s 、w i n d o w sc e 和各种 嵌入式l i n u x 等。 1 3 本文主要研究内容 2 硕士论文基于嵌入式l i n u x 的图像采集与传输实现 本论文在研究了图像采集系统及嵌入式软硬件发展现状的基础上,设计了一种基于 嵌入式l i n u x 的图像采集与传输实现方案,将微处理器为$ 3 c 2 4 4 0 的a r m 开发板作为 图像采集端,通过外接u s b 摄像头进行图像采集,解码后在开发板外接的l c d 上进行 显示;然后在开发板端建立一个t c p 服务器,p c 宿主机建立t c p 客户端,图像通过 t c p 协议进行网络传输,在p c 端解码后利用s d l 库显示。 本论文主要研究内容包括: ( 1 ) 嵌入式开发平台的构建,包括交叉编译器的安装和系统底层软件的移植: ( 2 ) 前端图像采集程序设计。对v 4 l 2 接口标准进行了研究,并在此基础上实现了图 像采集; ( 3 ) 解码及l c d 显示。对j p e g 及b m p 格式的图像进行研究,将采集到的j p e g 图 像解码后利用帧缓冲实现l c d 显示; ( 4 ) 基于t c p 口协议的s o c k e t 编程原理; ( 5 ) 服务器端软件设计,主要包括图像的采集与发送两部分; ( 6 ) 客户端软件设计,主要包括解码及s d l 库显示两部分。 1 4 本文的组织结构 本文主要按照系统开发步骤来安排章节,论文结构如图1 1 所示。 图1 1 论文结构图 第一章绪论。主要介绍了论文的研究背景、图像采集系统的研究现状及发展趋势。 1 绪论 硕士论文 第二章嵌入式系统设计概述。主要介绍了系统的组成、系统硬件设备的选择和底 层软件的选择,在此基础上得出系统的结构框图和开发流程。 第三章嵌入式系统的构建。主要包括硬件平台的构建和嵌入式软件开发平台的建 立。 第四章嵌入式图像采集与传输部分的应用软件开发。主要包括图像采集、图像解 码、l c d 显示和网络传输设计几部分。这章是作者工作的核心部分。 第五章系统调试及运行结果。介绍了对各部分应用软件的实际测试过程,并给出 运行结果。 第六章总结与展望。对全文工作进行总结,并对论文的不足之处提出改进方法。 4 硕士论文基于嵌入式l i n u x 的图像采集与传输实现 2 嵌入式系统设计概述 2 1 嵌入式系统组成 本论文设计所需完成的主要任务是将u s b 摄像头采集到的图像数据,通过处理, 在前端a r m 板的l c d 上实时显示;然后将采集的图像通过网络传输至普通p c 机,通 过p c 客户端软件来观察。系统主要组成框图如2 1 1 所示: 图2 1 1 系统主要组成框图 本系统主要由软件和硬件两大部分组成,硬件部分主要是摄像头的选择和开发平台 的选择;软件部分主要由底层软件( b o o t l o a d e r 、操作系统、文件系统等) 和应用软件 组成。 2 2 嵌入式系统设备介绍 嵌入式系统具有较强的专用性【9 j ,所以选择合适的硬件设备至关重要,对后续的软 件开发具有重要的作用。下面将对本系统的硬件平台进行详细的介绍。 2 2 1u s b 摄像头 在视频会议、远程医疗及实时监控等领域中,摄像头作为一种视频输入设备,随处 可见。从其发展状况来看,主要可分为数字摄像头和模拟摄像头。模拟摄像头捕捉到的 模拟视频信号须经过视频捕捉卡,转换成数字视频信号,压缩后才可以传到计算机中。 而数字摄像头比模拟摄像头方便,它可以直接捕捉影像,然后传到计算机中,传输可通 过串口、并口或u s b 口。所以考虑到模拟摄像头的成本较高,u s b 接口的传输速度又 比串口和并口的速度快得多,现在市场上普遍使用的是数据传输接口的u s b 数字摄像 头,本文也将采用此类摄像头。 u s b 摄像头主要由镜头、图像传感器、数字信号处理芯片、电源这几个部件组成。 其中图像传感器可分为c c d 和c m o s 两大类,由于c c d 具有灵敏度高、噪音小、信 噪比大等优点,一般用在对图像要求比较高的场合,比如摄影、摄像,但是其成本 5 2 嵌入式系统设计概述 硕士论文 高、功耗高、生产工艺复杂;c m o s 一般应用于对图像要求不高的场合,如u s b 摄像头,具有集成度高、功耗低( 不到c c d 的1 3 ) 、成本低等优点,但是也具有 一定的缺点,如噪音较大、灵敏度较低、对光源的要求也高。 目前,市场上的摄像头d s p 的种类较多,主要有v i m i c r o ( 中星微) 3 0 1 p l 、 s o n i x ( 松瀚) 1 0 2 1 2 0 1 2 8 、s t ( 罗技) 、s o ( 倚强) 9 3 0 c 等,其中中星微3 0 1 p 芯片是目前运用最普遍的,也是最好的芯片之一。所以根据成本和市场接受程度 这两点,本系统将采用中星微z c 3 0 1 p 的c m o s 摄像头,该摄像头的主要性能指标为: 硬件j p e g 压缩方式,传输接1 5 1u s b2 0 同时兼容u s b1 1 ,自动曝光与自动增益控制, 支持动态与静态视频采集。 u s b 摄像头的工作原理非常简单,主要为:被拍摄的景物经过镜头转换成光 学图像,该图像再经过图像传感器,变为电信号,对其进行a d 转换后得到数字 信号,然后在d s p 芯片中对该信号进行加工处理,最后处理后的数据可通过摄像 头的u s b 接口传送到电脑中,用户直接通过显示器查看图像【1 0 】。 2 2 2 芯片选择及简介 嵌入式处理器是整个嵌入式系统的核心部分,对系统的运行有控制和辅助的作用。 目前世界上已经有超过1 0 0 0 种的嵌入式处理器,根据其现状,主要可分为嵌入式 微处理器( e m p u ) 、嵌入式微控制器( e m c u ) 、嵌入式d s p 处理器( e d s p ) 、s o c 片上系统【1 1 】。嵌入式微处理器( e m p u ) 是具有3 2 位以上的处理器,实际的嵌入 式应用中,可以只选择与应用有关的一些功能硬件,这样不仅可以节省资源,而 且使得系统的功耗也低。目前市场上的嵌入式处理器主要有a r m s t r o n g a r m 、 m i p s 、p o w e r p c 、a m l 8 6 8 8 、s c 一4 0 0 、6 8 0 0 0 系列等。 a r m 处理器属于嵌入式微处理器的一种,采用r i s c 架构,具有以下优点: ( 1 ) 体积小、成本低、功耗低、性能高; ( 2 )支持t h u m b ( 1 6 位) 指令集和a r m ( 3 2 位) 指令集,兼容8 位1 6 位器件; ( 3 )大量使用寄存器,速度更快; 本文采用的硬件平台是广州天嵌公司开发的t q 2 4 4 0 开发板,其c p u 为韩国三星公 司生产的s 3 c 2 4 4 0 微处理器,该处理器采用r i s c 架构,内核为a r m 9 2 0 t ,主要由三 部分组成:a r m 9 t d m i 、存储管理单元( m m u ) 、高速缓存,主要应用在音视频解码 器、数字机项盒、3 g 基带、无线通信设备、p d a 等。 $ 3 c 2 4 4 0 微处理器具有性价比高、功耗低等优点,在手持设备中应用广泛。它为系 统提供了完整的片内外设,开发者无需再去额外配置,大大降低了系统的成本。所包含 的片上功能包括:独立的电源供给方式,内核1 8 v ,1 8 v 2 5 v 3 3 v 存储器,扩展i o 为 3 3 v ;外部存储控制器,总容量1 g b ,可扩展成8 组,支持从n a n d 闪存启动;l c d 控制 器,支持4 k 色的s t n 和2 5 6 k 色的t f t ;4 个d m a 通道,有外部请求引脚;3 个通用异步 6 硕士论文基于嵌入式l i n u x 的图像采集与传输实现 串行端口和2 个串行外围接口电路( s p i ) ;l 通道i i c 总线接口( 多主技术) ;i i s 音频编 解码器接口;s d 卡接口和m m c 卡接口;4 + p w m 定时器,1 个内部定时器,看门狗定时 器;8 通道1 0 l :h 特a d c 和触摸屏接口;1 3 0 个通用i o 口和2 4 个外部中断源;电源控制模 式:标准、慢速、休眠、空闲;具有日历功能的r t c 和带p l l 的片上时钟发生器:数码 相机接口( 支持最大4 0 9 6 * 4 0 9 6 像素输入,支持缩放) 。 2 3 嵌入式系统的底层软件设计 要使l i n u x 在嵌入式系统中正常运行,至少需要b o o t l o a d e r 、l i n u x 内核、根文件系 统这三部分,有了这三个底层软件的支持,才算构建好了嵌入式软件开发平台,用户才 能设计开发应用软件。嵌入式开发板上首先须移植好b o o t l o a d e r ,它是整个系统的引导 程序,负责对硬件设备进行初始化和引导系统内核。然后我们需移植l i n u x 内核,它是 整个系统中最重要的部分,少了它,系统实现的功能将非常有限。最后,移植根文件系 统,以便开发者对文件进行管理。在以下几小节中,将逐步介绍这几部分内容。 2 3 1b o o t l o a d e r 的选择 所谓引导程序( b o o t l o a d e r ) ,就是系统加电之后运行的第一段软件代码【1 2 】。一般 来说,嵌入式系统的引导程序负责加载整个启动任务,主要过程包括:硬件设备的初始 化、内存空间映射图的建立、软硬件环境的配置,从而使用户能够调用操作系统的内核。 要想成功启动操作系统,b o o t l o a d e r 首先要将硬盘上的内核映像读取到r a m 中,然后 才能跳转到该内核的入口点,执行内核映像。 大多数引导程序都分为两大部分,第一部分s t a g e l 用汇编语言实现,主要是依赖于 处理器体系结构的代码,如设备初始化的代码,实现的功能较为简单;第二部分s t a g e 2 则通常用c 语言来实现,代码具有很好的可读性和可移植性,实现的功能也更复杂。 引导系统的s t a g e l 主要有以下几步: 1 ) 初始化基本的硬件设备 2 ) 为加载引导系统的s t a g e 2 准备r a m 空间 3 ) 拷贝引导系统的s t a g e 2 到s d r a m 空间 4 ) 设置好堆栈指针 5 ) 跳转到s t a g e 2 的c 语言入口地点 引导系统的s t a g e 2 ,通常包括以下步骤: 1 ) 初始化本阶段所需的硬件设备 2 ) 检测系统内存映射 3 ) 从f l a s h 中读取内核映像和根文件系统映像到r a m 空间中 4 ) 为内核设置启动参数 7 2 嵌入式系统设计概述硕士论文 5 ) 调用内核 b o o t l o a d e r 具有很强的依赖性,包括处理器架构和具体的板卡硬件。在体系结构方 面,根据其不同,可选取不一样的b o o t l o a d e r ,而且某些b o o t l o a d e r 可同时适用于多种 体系结构;在嵌入式的板级配置方面,对于两块c p u 体系结构相同的嵌入式板,在其 中一块板子上可以运行的b o o t l o a d e r ,可能在另一块板子上需要修改其源代码后才能正 常运行。 目前,引导系统的种类繁多,在l i n u x 操作系统下常用的b o o t l o a d e r 包括l i l o 、 g r u b 、v i v i 、b l o b 、u b o o t 以及r e d b o o t ,其中u b o o t 是通用的b o o t l o a d e r ,它是 德国d e n x 小组开发的适用于多种嵌入式c p u 的b o o t l o a d e r 程序,可以运行在多种嵌 入式开发板上,如p o w e r p c 、a r m 、m i p s 等,支持串口下载、网络下载,提供了大量 的命令,可以更方便地调试程序。本系统采用u b o o t 作为引导程序,移植到a r m 开发 板上,下一章将详细介绍移植过程。 2 3 2 嵌入式操作系统的选择 在嵌入式系统中,操作系统是一个很重要的系统软件,它两密不可分,嵌入式系统 没有操作系统的支持,实现的功能将十分有限,而且其优势也不能得到充分的发挥。嵌 入式操作系统能有效地管理复杂的系统资源,虚拟化硬件,同时提供工具集、驱动程序、 各种库函数和应用程序,使得开发效率获得了很大的提高。 开发者选择嵌入式操作系统时,主要从以下几点进行考虑: ( 1 )操作系统能否在硬件平台上使用,开发出来的应用软件是否能移植到其他硬 件平台上; ( 2 ) 开发工具是否支持该操作系统,主要包括编译器、汇编器、连接器、调试器、 在线仿真器等; ( 3 ) 操作系统性能是否满足应用需求,兼容性是否良好,技术支持是否过硬1 3 】。 目前,适用于嵌入式系统的操作系统差不多有4 0 种左右,具有代表性的有3 c o r n 公 司的p a l mo s 、微软的w i n d o w sc e 、开源的嵌入式l i n u x 、u c o s i i 和风河公司的 v x w o r k s 等【1 4 l 。 ( 1 ) p a l m o s p a l mo s 是一种专门为掌上电脑而开发的3 2 位嵌入式操作系统,其所占用的内存 非常小,基于其开发的应用程序占用空间也不大,提供很多接口,可方便地对外进行通 信 i i = 1o ( 2 ) w i n d o w sc e w i n d o w sc e 是由微软公司开发的一种3 2 位嵌入式操作系统,它基于w i n 3 2a p i , 系统开放可升级,所以它和w i n d o w s9 5 9 8 编程工具具有很强的通用性,软件只要经过 简单的修改即可从x 8 6 机上移植到w i n d o w sc e 平台上。最大的优点就是操作简单、功 8 硕士论文 基于嵌入式l i n u x 的图像采集与传输实现 能强大,但是它也有很多缺陷,譬如源代码不开放、效率不高、功耗较高、应用程序庞 大等。 ( 3 ) 嵌入式l i n u x l i n u x 是一个功能强大、设计完善的操作系统,由于其源代码开放且遵循g p l 协议, 许多厂家和个人将其改造成为能在嵌入式平台上运行的操作系统,目前开发的嵌入式操 作系统中,有大约一半以上的项目都选择其作为嵌入式操作系统。它有着其他操作系统 所没有的优点: a 、内核可裁剪。根据实际应用需求,对内核进行合理的裁剪,使得内核变得精简 而且小巧,固化在一定容量的存储芯片上,成为用户专用的嵌入式操作系统。 b 、属于自由软件。l i n u x 属于g u n 项目,操作系统属于自由软件且源代码开放, 开发人员可以根据自己的需求对源代码进行修改,生成属于自己的操作系统。 c 、软件资源丰富,移植方便。l i n u x 具有大量的各种开源软件,只需重新编译便 生成可在嵌入式平台上直接运行的应用软件。 相比较其他系统而言,嵌入式l i n u x 具有更小、更稳定、价格低等优点,是嵌入式 操作系统的首选。 ( 4 ) u c o s i i u c o s i i 是一款相对比较简单的嵌入式操作系统,其源代码开放,内核结构小巧、 可裁剪、可固化,是一种抢占式的实时多任务内核,具有占用空间小、执行效率高、可 移植性强、实时性能优良、可扩展性强等优点,一般应用在中小型嵌入式系统中和一些 对时间要求很高的场合。 ( 5 ) v x w o r k s v x w o r k s 是美国风河公司开发的一种实时嵌入式操作系统。因其可靠性高,实时性 好,故在商业嵌入式操作系统中占有率最高,但价格昂贵,需要专门的技术人员来开发 和维护,成本高,支持的硬件数量也有限。它主要应用在对实时性要求较高的高端技术 领域中,比如通信、军事、航空航天等。 本文要求操作系统需具有良好的实时性,嵌入式l i n u x 符合该要求,而且嵌入式 l i n u x 免费,众多的l i n u x 爱好者可以提供给开发者很好的技术支持。综上所述,本系 统选择嵌入式l i n u x 作为嵌入式操作系统,它能更好地与硬件芯片紧密结合,而且其源 代码开放,与p c 时代智能设备的多样性相适应。l i n u x 的代码开发类似于“集市式” 开发,开发人员可选择自己所需的功能,开发出适合自己的特殊新产品【l5 1 。 2 3 3 嵌入式文件系统的选择 文件系统的使用方便了用户与操作系统之间的交互操作,用户可以很直观地看到存 储在计算机上的信息,这些信息一般由操作系统提供。文件系统是l i n u x 重要的子系统, 如果少了它,将造成内核恐慌。在l i n u x 系统中,采用虚拟文件系统的机制,所有的东 o 2 嵌入式系统设计概述 硕士论文 西都可以看作文件,文件系统是在块设备驱动程序的基础上建立起来的。l i n u x 文件系 统一般可分为基于f l a s h 闪存的文件系统( c r a m f s 、j f f s 2 、y a f f s ) 和基于r a m 的文件 系统( r a m d i s k 、r a m f s t m p f s ) ,用户选择文件系统类型时,通常从可靠性、健壮性和 增强的功能需求等几方面考虑u 6 1 。 ( 1 ) c r a m f s c r a m f s 是一种只读的压缩文件系统,系统小巧而且简单,通常在r o m 芯片或c d 上使用。它一次压缩文件的一个页,允许随机页访问,最大压缩比可达2 :1 ,所以存储 只需容量很小的f l a s h 存储空间,降低了嵌入式系统的成本。c r a m f s 不支持写操作,磁 盘映像需使用工具“m k c r a m f s 制作,大小不能超过1 6 m b ,文件系统尺寸最大约为 2 5 6 m b 。c r a m f s 映像支持硬连接,但被连接文件的连接数只能是1 。 另外,c r a m f s 文件系统也具有速度快、效率高、稳定性高等优点。它的只读特性使 得文件系统可以受到很好的保护,但是该特性也具有一定的缺陷,即用户无法对其内容 进行扩充。通常在实际应用中,我们可以将c r a m f s 与其他文件系统相结合来使用,并 可以基于m t d 设备使用。 ( 2 ) j f f s 2 j f f s 2 是一种适用于n o r 闪存的日志文件系统,它基于m t d 驱动层,源代码开放。 它最初是由r e d h a t 公司开发的,所以适用于l i n u x 、u c l i n u x 操作系统。该文件系统的 日志节点结构是基于哈希表的,可对其进行读写和数据压缩,同时在系统崩溃和意外掉 电时,对系统进行安全保护,免受破坏。提供“写平衡 支持,可支持多种节点类型, 提高了f l a s h 的利用率。目前j f f s 2 已成为f l a s h 设备上运用最为广泛的文件系统,但 是它也有一定的缺点,当文件系统己满或接近满时,j f f s 2 的运行速度会下降很多。 目前,j f f s 3 文件系统正在开发中,可以将这些统称为j f f s x 。j f f s x 文件系统不 适用于n a n d 闪存,因为n a n d 闪存的容量较大,j f f s x 需要用更大的内存空间来维 护日志节点,另外在挂载时也要消耗大量的时间,对整个f l a s h 的内容进行扫描,找出 日志节点。 ( 3 ) 雌 y a f f s 文件系统是一种日志型文件系统,它是专门针对n a n d 闪存而设计的。提供 了损耗平衡和掉电保护,使得文件系统在意外掉电时也能保持自身的完整和统一,不因 意外掉电而遭到破坏。y a f f s 文件系统可以很方便地集成到系统中去,它是按照文件管 理层接口、y a f f s 内部实现层和n a n d 接口层这样的层次结构来设计的,使得在设计其 与系统的接口时,更加简单方便。y a f f s 不支持数据压缩,所以与j f f s 2 相比,其速度 更快,占用内存更少旧。另外,它支持多种平台,包括l i n u x 、w i n c e 、e c o s 、p s o s 等操作系统。 y a f f s 文件系统中文件都是由特定大小的数据段组成,这是因为n a n d 闪存是以页 l o 硕士论文基于嵌入式l i n u x 的图像采集与传输实现 面为单位进行存取的。n a n d 闪存为每个页面提供了备用空间,大小为1 6 字节,用来 存储e c c 和文件系统的组织信息,可以很方便地进行错误的排查和坏块的处理,同时 加载文件系统的速度也得到了提高。 经过慎重考虑,本文选择基于n a n d 闪存的y a f f s 文件系统,具体安装过程第三章 将详细介绍。 2 4 嵌入式系统结构图及开发流程 在对本系统的硬件和软件选择进行了详细的考虑之后,制定出了一套基于前端嵌入 式图像采集、在外接的l c d 上显示或网络传输至p c 端显示的图像采集传输方案。图 2 4 1 是该系统的结构框图。 目标机宿主机 应用软件 软 应用程序 件 层 l i n u x 操作系统 软 件 文件系统 q 仪z 鬲 层 l i n u x l 勾核 件p c 层 b o o t l o a d e r 摄像头 争 硬 c 。接 l c d 件a r m 开发板 层 图2 4 1 系统结构框图 嵌入式系统开发流程一般主要包括五个阶段:系统应用需求分析、体系结构设计、 硬件软件设计、系统集成和代码固化【l5 1 。在进行开发之前,应弄清楚系统要实现哪些 功能,包括系统输入的信息和最终要输出的结果,最终结果要达到的性能指标;此外还 要考虑系统的体积、成本、重量、功耗等。然后根据需求分析提炼出来的规格说明书, 划分硬件和软件的相应功能,并选择硬件、软件系统和操作系统的类型。完成上述步骤 后,就可以开始对系统的软件部分和硬件部分进行详细的设计。完成之后将硬件模块和 设计的软件模块进行整合并调试,调试成功之后,重新编译源代码,生成可执行代码并 1 l 2 嵌入式系统设计概述硕士论文 将其烧写到f l a s h 中。本文的核心部分工作为软件的设计,图2 4 2 为系统开发的流程图。 2 5 本章小结 图2 4 2 系统开发流程图 本章分别从系统硬件、软件两个方面,对其进行了整体的设计概述。硬件方面,对 硬件开发平台进行了需求性分析,嵌入式c p u 选择$ 3 c 2 4 4 0 微处理器,图像采集设备 选择中星微z c 3 0 1 p 的u s b 摄像头。软件方面,对系统的底层软件进行了设计,主要完 成b o o t l o a d e r 、操作系统、文件系统的选择。在此基础上,得出了系统的结构框图及开 发流程,为后续的底层软件移植和应用软件设计打下了基础。 1 2 硕士论文基于嵌入式l i n u x 的图像采集与传输实现 3 嵌入式系统的构建 3 1 硬件平台构建 本文采用的硬件平台是处理器为$ 3 c 2 4 4 0 的a r m 开发板,通过板上的u s b 口外 接c m o s 摄像头来实现图像的采集,采集成功后对图像数据进行处理,然后显示在a r m 开发板携带的l c d 上,或者通过网络直接将采集到的图像传输至p c 端,解压缩后通过 软件显示。摄像头通过u s b 口和a r m 开发板相连,宿主机p c 主要通过串口与网线和 a r m 开发板相连,主要完成交叉编译环境的建立、系统底层软件的移植、应用程序的 下裁和调试等。本系统a r m 开发板选择的是天嵌公司生产的t q 2 4 4 0 开发板,该开发 板资源丰富、外设齐全、接口标准,很容易扩展,适合低功耗场合的应用设计。图3 1 1 为系统硬件平台原理框图。 图3 1 1 系统硬件平台原理框图 3 2 宿主机p c 的r e dh a tl i n u x 安装 嵌入式系统的开发方式主要有两种,一种是p c 机只安装l i n u x 操作系统,所有的 应用软件都是在该操作系统下工作;另一种就是p c 机安装的是w i n d o w s 操作系统,l i n u x 操作系统安装在虚拟机中,同时建立嵌入式l i n u x 的开发环境,虽然有两个操作系统, 但它们共用p c 机的内存空间。 因为l i n u x 系统的分区方法与w i n d o w s 的不一样,所以如果贸然的直接安装l i n u x 可能导致整个硬盘的数据丢失,所以本文选择使用虚拟机安装l i n u x 操作系统。宿主机 p c 是基于x 8 6 体系结构的,要在上面进行嵌入式开发,首先需在w i n d o w s 系统下安装 好虚拟机软件,然后再在该虚拟机上进行l i n u x 操作系统的安装【l 引。 v m w a r ew o r k s t a t i o n 是v m w a r e 公司出品的一个多系统安装软件。它其实是把p c 13 3 嵌入式系统的构建 硕士论文 机上的一部分硬盘和内存虚拟化成了若干台机器,每台机器对应一个操作系统,它们互 不相干,单独地运行各自的操作系统。同时每台机器都有各自的硬盘和c m o s ,用户可 以对其进行分区、格式化、安装操作系统和各种应用软件,所有的这些操作都是一个虚 拟的过程,不会对真实的主机造成影响。 首先,完成v m w a r ew o r k s t a t i o n 的安装。从网站上下载免费软件,版本为 v m w a r e w o r k s t a t i o n 一6 5 1 1 2 6 1 3 0 ,双击安装程序,根据安装向导逐步完成软件的安装。 然后,新建一个虚拟机。鼠标左建双击桌面中的v m w a r ew o r k s t a t i o n 图标,运行虚 拟机,点击“f i l e ( 文件) ”一“n e w ( 新建) ”一“n e w v i r t u a lm a c h i n e ( 新建虚拟机) ”, 弹出虚拟机创建菜单,根据向导一步一步地创建虚拟机,选择安装方式是“t y p i c a l ( 典 型) ”,g u e s to p e r a t i n gs y s t e m ( 客户操作系统) 中选择“l i n u x ”。在l o c m i o n ( 位置) 中 选择虚拟机的安装位置,所选的磁盘区应保留足够大的空间,以便于操作系统和应用软 件的安装。网络环境选择u s eb r i d g e dn e t w o r k i n g ( 使用路由网络) ,点击f i n i s h ,返回 v m w a r e 主界面,l i n u x 虚拟机就建好了。v m w a r e 主界面如图3 2 1 所示。 图3 2 1w m w a r e 主界面图 最后,在虚拟机中安装r e dh a tl i n u x 。选中l i n u x 虚拟机,在工具栏中选择开关按 钮,打开l i n u x 虚拟机。安装方法可以选择从光盘或硬盘安装,本系统选择从硬盘安装, 点击s e t t i n g s c o n f i g u r a t i o ne d i t o r 进入设置界面对虚拟机进行配置,h a r d w a r e 选项中, 选择d v d c d r o m i d e1 :0 】项,在左边的选项中进行设置,在c o n n e c t i o n 选项选中 1 4 硕士论文基于嵌入式l i n u x 的图像采集与传输实现 u s ei s oi m a g e ( 使用i s o 镜像包) ,然后点击b r o w s e 按钮,找到放置i s o 文件的目录, 点击将i s o 文件打开,进行安装,后面的i s o 文件安装过程以此类推【1 9 1 。 点击p o w e ro n 就可以启动r e dh a tl i n u x ,如下图3 2 2 所示。 y i l t 曼d itz i 臀v 堕i e _ _e i n d o w s丝1 p 一阴l 下1 9 ;岱萄圆i 固团圆圆j 固圈盾 i 荡国 r oc l i r e c tx r t p u tt 。t k is ,e l ic ki n s i d e 。:ef i t r l + g ,磊鳕豳如匀耱j 图3 2 2r e dh a tl i n u x 启动界面 到此,在p
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年四川省村级后备干部选拔考试题(含答案)
- 2025年管理心理学试卷及答案
- 数字化建筑模型更新创新创业项目商业计划书
- 水生植物自然教育创新创业项目商业计划书
- 无人机智能巡逻与安防监控创新创业项目商业计划书
- 2025年超星尔雅学习通《劳动通论》章节测试题库附答案(突破训练)
- 建筑图纸绘制创新创业项目商业计划书
- 建筑消防设备安全管理与维护指南
- 项目道路土方开挖施工方案模板
- 影视剧拍摄场记表模板下载与填写方法
- 《小王子》读书分享成品课件
- MT-T 1199-2023 煤矿用防爆柴油机无轨胶轮运输车辆安全技术条件
- 婴儿期的认知发展-客体永久性
- 医院保洁服务投标方案(技术方案)
- 中药冷敷技术护理
- 劳动教育实践活动设计 课件 主题3、4 劳动最伟大、劳动最美丽
- 视频监控系统升级项目实施方案
- SB-T 11238-2023 报废电动汽车回收拆解技术要求
- 消防安装工作计划书
- 诊所质量体系自查报告
- 商标肖像权使用授权书(通用)
评论
0/150
提交评论