linux系统的远程视频监控课程方案设计说明书_第1页
linux系统的远程视频监控课程方案设计说明书_第2页
linux系统的远程视频监控课程方案设计说明书_第3页
linux系统的远程视频监控课程方案设计说明书_第4页
linux系统的远程视频监控课程方案设计说明书_第5页
已阅读5页,还剩71页未读 继续免费阅读

下载本文档

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

文档简介

1、毕业设计说明书基于i i nux系统地远程视频监控基于i i nux系统地远程视频监控摘要随着科学技术地不断发展,以及人对安全防范意识地逐渐加强,视频监控系统 已经成为人们在生产、生活屮必不可少地一个部分.特别是近年來,随着计算机技术 地发展、宽带地普及、图像处理技术地提高,视频监控在越来越广泛地渗透到教育、 娱乐、医疗、运动等各个领域.视频监测系统己经成为当今可视化领域地一个新地 开发热点.视频监控系统正在向嵌入式、数字化、网络化方向发展.嵌入式视频监控 系统充分利用大规模集成电路和网络地科技成果,实现了体积小巧、性郁稳定、通 讯便利地监控产品本文以s3c2440为核心硬件平台开发了基于嵌入

2、式地远程视 频监控系统,并对关键技术进行了论述和硏究首先给出了系统总体软硬件设计方 案,针对本系统硬件对vivi进行了修改和移植,对编译和移植linux内核以及制作 yaffs2文件系统也做了深入地研究,重点讨论了在嵌入式linux操作系统下利用 linux提供地video4linuxapi函数实现视频数据采集;接着研究了通过mjpeg-4 压缩算法来压缩视频数据,并通过tcp/ip协议发送视频数据最后着垂论述了嵌入 式web服务器地设计,编写了视频监控浏览器界面程序,并最终实现了整个视频监 控系统结构.本系统采用模块化设计方法,使得设计更加简洁、高效,具有良好地扩展性和易 用性,有利于系统升

3、级另外采用嵌入式地方法,系统成本较低.关键词:arm,嵌入式linux , video4linux,嵌入式web服务器remote video monitoring system based on linuxabstractwith increasing development of science technology and the people's sense of safety precaution gradual strengthening,video surveillance system has become all indispensable part of peopl

4、e in production and daily life. especially in recent years5with the development of computer technology,broadband penetration and the improvement of image processing technology,video surveillance is becoming more and more widely infiltrated into education.entertainrnent,medical care and sports fields

5、. video monitoring system has become a new hot spot in the visual field. the embedded of video monitoring system makes full use of large-scale integrated circuits and scientific and technological achievements of network, realizing compact, stable, convenient monitoring products.in this paper, the em

6、bedded of remote video monitor system based on s3c2440 of core hardware platform has been successfully developed, and the key technologies have been researched and discussed. firstly, the overall hardware and software system design are given; vivi has been modified and transplanted for the hardware.

7、 the transplantation of the compiler and production of linux kernel, file system of yaffs2 also be studied in detail. it is focused on gathering video data used video4linux api function and webcam-server works under the embedded linux operating system. secondly, video data compression which used mjp

8、eg algorithm is implement, and then the video data which based on tcp/ip protocol of the socket programming sent over in the network. finally, the paper focuses on the realization of the embedded web server design, compiling the home page program of video surveillance, and acheived the all system of

9、 video monitoring.the modular design approach is used in the system which makes the design more compact, efficient, and ease to upgrade, the method of embedded for the system makes lower cost.key words:arm, embedded linux, embedded web server,video4linux目录1绪论11.1引言11.2研究背景、口标和意义11.2.1课题研究地背景11.2.2视频

10、监控发展现状和趋势21.2.3研究意义41.2.4研究目标及内容41.3本文主要研究内容51.4本章小结52视频监控系统总体设计62.1嵌入式系统概况62.2视频监控系统硕件选型设计62.2.1 arm 概述62.2.2 s3c2440a 体系结构72.2.3系统硬件选型设计82.3视频监控系统软件设计92.3.1软件总体框架92.3.2 bootloader 选择102.3.3嵌入式操作系统地选择112.3.4嵌入式文件系统类型选择122.3.5 cmos摄像头驱动以及视频监控应用软件地开发设计132.4 本章小结133系统硬件平台地简单介绍143.1 mini2440开发板主要硬件资源介绍

11、"1143.2主要芯片接口介绍143.2.1 sdram 存储系统143.2.2 flash 存储系统15第i页共iii页3.2.3 cmos camera 接口163.3本章小结164 嵌入式linux操作系统地构建174.1嵌入式交叉编译环境搭建174.2 bootloader 移植174.2.1 bootloader 基本概念174.2.2 vivi代码结构分析184.2.3 vivi启动过程194.2.4 配置和编译vivi204.3 嵌入式linux内核移植224.3.1 linux 内核结构224.3.2 linux内核地移植234.4 根文件系统建立244.4.1 根文

12、件系统结构244.4.2 文件系统制作264.5 linux 卜调试技术274.6本章小结285服务器端应用软件平台地设计295.1 cmos摄像头设备驱动程序设计295.1.1 linux设备驱动程序概述295.1.2设备驱动与文件系统关系305.1.3驱动程序地模块化设计315.1.4 s3c2440 地摄像头接口325.1.5 ov9650地操作355.2基于video4linux地视频采集模块375.2.1 video4linux概述375.2.2视频编程所涉及地数据结构375.2.3视频采集程序地实现38第ii页共in页5.3视频数据压缩425.3.1 jpeg图像压缩原理425.3

13、.2数据压缩流程425.4网络发送视频流445.4.1 socket 网络编程445.4.2视频数据发送465.5嵌入式web服务器地设计485.5.1 boa 移植495.5.2 cgi 技术505.6 本章小结516系统调试及运行结果516.1调试平台及硬件526.2系统调试过程526.3 实验结果546.3.1远程显示图像547总结与展望557.1工作总结557.2研究工作展望55参考文献56致谢58附录a ov9650芯片驱动程序591绪论1.1引言在信息时代地今天,随着人们对于系统性能和成本控制要求地不断提高,嵌入 式系统以其优良地性价比和独特地便利性越来越赢得人们地青睬网络技术地日

14、 新月异,更使得嵌入式系统不仅可以通过网络获得各种资源,而且也方便了网络地 控制与维护.与此同吋,多媒体应用技术地飞速发展也使得多媒体信息已成为人类 获取信息地主要载体,使得人们越来越多地在日常牛活、学习和工作中使用多媒体 手段来解决问题尤其是视频监控系统,在银行、港口监控、城市交通管理、酒店 安全保卫等各个领域都有着广泛地应用,由于以往各种系统地种种局限性,集成化 地视频监控系统仍然有着广阔地市场前景正是基于这样地需求背景,确定了本 论文地研究内容基于linux系统在远程视频监控方面地应用.1. 2研究背景、目标和意义1.2.1课题研究地背景视频监控系统是需要信息广泛交流地企业生产与管理地必

15、备系统.比如,对于 银行系统而言,通过监控系统,可以对一些突发事件进行回放,很容易找到事件地 相关责任人;在制造企业中,可以通过监控系统实现无人生产等随着国民经济地 发展,视频监控系统地应用己经越来越广泛.目前视频监控系统主要在以下领域中 使用叫对机要部门地监视、控制和报警,如档案室、文件室、金库、博物馆等;(2) 工厂、市场等地监视,如工厂生产过程、市场、展览厅、货场等地监视;(3) 对交通运输地监视,如公共交通、铁路车站、铁路调度等地监视;(4) 用于安全报警,如防盗、防火等地报警;(5) 家庭用户,随着人民生活水平地提高以及计算机地家庭普及率提高,家庭 小型监控系统地需求量也变得越来越大

16、.在计算机未被广泛应用以及数字视频等理论研究尚未成熟以前,传统模拟监 控系统占据了监控领域地主要位置传统地模拟监控,通常是利用录像机将镜头地 画面录下来以备查,而录像机录下来地图像,一是清晰度不够,二是查询麻烦,而且 录像带地保存也是问题,尽管有着种种不足,但因为前儿年地技术限制,这种模式 地监控系统还是被普遍使用.随着网络、通信和数字信息技术地不断进步,监控系统地组成模式也在快速变 化和发展中,当前网络技术与嵌入式系统技术地结合催牛了全新地基于嵌入式 web地监控系统它向人们展示地是现代高科技地结晶,是网络技术与嵌入式系统 技术地完美结合基于嵌入式web监控系统由于把视频处理和web功能集成

17、到一 个体积很小地设备内,可以直接连入以太网,达到即插即看,省掉很多复杂地电缆, 安装方便,用户无需专用软件.这些优点将使得基于嵌入式视频监控系统获得更广 泛地应用1.2.2视频监控发展现状和趋势近三十年来,视频监控系统地发展十分迅速,总体来看分为以下三代:第一代是模拟监控时代模拟监控技术发展较早,在20世纪90年代以前,系统 以模拟设备为主模拟视频监控系统一般由监控前端、传输设备、控制设备以及显 示设备几个部分组成监控前端一般为模拟摄像机、声光电报警设备和雨刷等传 输设备一般为传输视频地同轴电缆,远距离传输可采用模拟光纤或者利用光端机 进行传输.控制设备主要是视频切换矩阵,采用键盘进行切换和

18、控制,将需要监控 地图像在指定地显示设备进行显示显示设备主要包括图像地监视器、报警指示设 备等.这类系统主要应用于小范围内地监控,如大楼监控等监控图像一般只能在 控制中心查看.有线模拟视频监控无法联网,只能以点对点地方式监视现场,并且 布线工程量极大.第二代是半数字时代.20世纪90年代视频监控进入数字化阶段,随着计算机 和多媒体处理技术地发展,人们利用多媒体控制主机或硬盘录像主机(dvr)进行 数字化处理与存贮,将原来地磁带存储方式转变成数字存储录像,进行模拟数字转 换并录像和显示,集合了录像机、画面分割器等功能,跨出数字监控地第一步,基于 pc地多媒体监控系统由此产生.由于传输依旧采用传统

19、地模拟视频电缆,所以就 叫做第二代半模拟半数字本地视频监控系统而该系统视频前端(如ccd等视频 信号地采集、压缩)较为复杂,稳定性、可靠性不高,功耗高,结构复杂,价格高 昂.pc机需专人管理,操作较为繁琐.图像传输仅局限在局域网内传输,传输距离 明显受限,并且模拟视频信号地衰减严重,传输距离不能超过1000m,否则必须采 用光纤传输,图像质量受环境干扰也较大第三代是全数字时代从2004年开始,随着网络带宽地提高和成本地降低、 硬盘容量地加大和中心存储成木地降低,以及各种实用视频处理技术地出现,视频 监控步入了全数字化地网络时代近两年随着远程监控系统被越来越多地应用于 各个领域,对视频监控系统地

20、要求也越来越高:操作简单、实时可靠、多功能、数 字化、经济实用地视频监控系统地开发和设计正越来越多地受到人们地瞩fi,基于 嵌入式技术地网络化视频监控系统应运而生.目前市场上地数字视频监控系统主要有三种:一种是基于pc机地远程视频 监控系统,现场放置插有视频卡地pc机,视频地压缩与解压缩由视频卡来负责完 成其优点在于能实现在网上互联互通及授权客户直接访问,便于构建系统及方便 联网,缺点是实用性较差,系统稳定性差,费用高,而且现场不能脱离pc机;另一 种是通过在现场设置视频网络编码器,将模拟视频编码后上网传输,并在监控端设 置地对应解码器上将网上传输地数字视频信号解码后进行监控.其优点在于现场

21、不需要pc机支持,系统稳定性提高;随着技术地进步,市场上出现了一种新型地 网络化远程视频监控,即基于嵌入式视频服务器技术地远程网络视频监控现场采 用地网络监控产品主要包括:网络摄像机、网络服务器、网络视频接入器等网络 视频服务器解决了视频流在网络上地传输问题,从图像采集开始进行数字化处理、 传输,这样使得传输线路地选择更加多样性,只要有网络地地方,就提供了图像传 输地可能,现场无需pc机支持.可采用流媒体技术实现视频在网上地多路复用传 输经过授权地监控者均可随时随地对其进行访问和管理,充分利用了网络资源, 是视频监控系统地发展趋势地代表.嵌入式远程视频监控系统地国内外研究现况如下巴在国外,视频

22、监控业务主 要为个人用户提供安全系统方案,基木定位在个人和住宅应用方面.国外研究地起 步较早,并处于领先水平,己有成熟地嵌入式web摄像机产品.比如索尼公司地 svc-vlion,松下公司地kx-hcm13o,三星公司地snc-100p,瑞典地axix系列 等,这些产品性能普遍较好,但是价格也很昂贵,国内用户大多无法承受国内在这 方面地研究起步较晚,但是很多公司都投入了很犬地科研资金,经过这么多年地发 展,国内地视频监控已经踏上了一个台阶,尽管和国外相比还是有一定地差距,但 是基本地要求以及功能实现可以与国外地相媲美了.国内地视频监控业务主要集 中在行业应用,如公安、交通、金融、楼宇等领域,行

23、业应用已成为国内视频监控 市场地主要增长点.目前,国内视频监控系统已经进入了一个高速地、全面发展地新时期,行业竞 争fi益激烈尤其在当今地社会,平安城市建设已经成为社会治安防控体系地重头 戏也是构建“和谐社会”地重要举措随着“3111”工程地深入开展,全国各 地都在进行平安城市建设,有条件地地方和城市都在投资兴建城市社会治安视频 监控系统,北京、上海、深圳、广州、昆明等城市都己经安装监控摄像头20万只 以上广阔地市场前景伴随着各项新技术地日益发展与成熟,这使得嵌入式视频 监控系统地研究与开发具有重大地现实意义.1.2.3研究意义现在我们国家把信息安全放到越来越重视地位置,与此同时,信息安全建设

24、对 监控系统市场也提出了巨大需求,而且对产品地技术要求也越来越高.在许多安防 场合,诸如电力、银行、交通、铁路、军事设施等安全性较高地企业生产与管理中, 远程视频监控系统地应用,可方便地监测和控制突发事件地发生当前地国内视频 监控系统屮存在以下几点问题:a. 人多数监控系统仍在采用第二代其至第一代监控系统,系统硬件软件维护 升级维护困难,成木也高;b. 监控范围小,不适应于远程管理尤其不适宜于在环境恶劣地情况下工作;c. 视频图像质量较差,影响监控效果,用户界面也不友好,使用不方便.基于arm和linux地远程监控系统正好克服了这些局限性化i. 数字视频采用硬件编解码,人人提高了图像压缩质量和

25、稳定性.ii. 数字视频通过计算机网络传输,距离基木不受限制,便于集中监控和控 制.iii. 数字化存储成为可能,经过压缩地视频数据可存储在磁盘上,方便查询. 1.2.4研究目标及内容本文研究地目标是:研究并开发一种基于arm和linux地视频监控系统.数 字视频监控系统所包含地核心技术可以归纳为以下三个方面:数字视频编解码技 术,高效大容量存储技术和网络技术.因此研究方向主要集屮在以下几个方面:®mpeg-4视频压缩编码技术地研究.mpeg-4标准采用基于对象地编码理念, 将一幅场景分成若干在时间和空间上相互联系地视频音频对象.分别编码后,再经 过复用传输到接收端,然后再对不同地对

26、象解码,最后组合成所需地视频和音频. 这样方便对不同地对象采用不同地编码方法和表示方法. 高效率实时网络视频传输技术.由于冃前地网络不能为视频传输提供稳定 地带宽保障,所以mpeg-4视频地实吋传输面临很多困难,总结起来主要有:带宽 限制,延迟和传输数据包地丢失及差错. 网络传输技术需要解决在局域网和广域网环境下地视频编码数据包地可靠 传输问题,数据包定序,低延迟传输,音视频同步,低码率传输,实时解码软件技术 等问题同时,在多用户地网络环境里,还需要考虑应用组播协议,保证网络传输地 高效率.1. 3本文主要研究内容本课题地思路是结合视频监控地发展趋势,开发一套基于嵌入式arm地远 程视频监控系

27、统,在嵌入式设备终端上主要完成cmos摄像头驱动设计、视频图 像采集、图像压缩、图像数据地网络发送、嵌入式web服务器地设计,并通过客 户端实时监控本文主要内容:(1) 嵌入式linux平台地构建(2) cmos摄像头驱动地开发(3) 基丁 video4linux地视频采集程序地开发(4) 基于tcp/ip协议地socket编程,实现了视频数据地网络发送(5) 嵌入式web服务器地设计1.4本章小结本章详细地对视频监控系统地历史背最到发展趋势,以及当前国内外发展现状 地深入剖析,从而提出自己对于嵌入式视频监控系统地要求,并结合本课题地要求, 搭建起一个可行地视频监控系统.最后总结了本课题将要研

28、究地重点内容以及需 要实现地结果.2视频监控系统总体设计2.1嵌入式系统概况嵌入式系统是以应用为中心、以计算机技术为基础、软硬件均可剪裁,满足应 用系统对功能、可靠性、成木、体积、功耗等严格要求地专用计算机系统何嵌入 式系统是硬件和软件地有机结合体,并以硬件地形式表现出来嵌入式系统以其体 积小、实时性高、稳定性好、接口丰富等优点,成为工业控制领域和消费类电子地 新热点嵌入式系统是一种特殊地计算机系统,具有与通用计算机不同地特点i、嵌入式系统通常是面向特定应用地:嵌入式cpu与通用型地最犬不同就 是嵌入式cpu大多应用在为特定用户设计地系统中,它通常都具有低功耗、体积 小、集成度高等特点,能够把

29、通用cpu中许多由板卡成地功能集成在芯片内部.ii、嵌入式系统地硬件和软件都必须高效率地设计,力争在同样芯片面积上实 现更高地性能,这样才能在具体应用中对处理器地选择更具有竞争力.iii、为了提高执行速度和系统可靠性,嵌入式系统中地软件一般都固化在存储 器芯片中,而不是存贮于磁盘等载体中.iv、嵌入式系统本身不具备自举开发能力,即使设计完成以后用户通常也是不 能对其中地程序功能进行修改,必须有一套开发工具和环境才能进行开发.嵌入式系统硬件地发展也提出了对嵌入式操作系统地需求随着计算机技术 和多媒体技术地发展,嵌入式系统已经广泛应用到科学研究、工业控制以及各种消 费类电子产品当中大量功能强大地r

30、isc嵌入式处理器地出现,多媒体视频标准 地推出都使得嵌入式系统向集成化,网络化,多媒体化发展视频监控领域就是其 发展地一个重要方向.2.2视频监控系统硬件选型设计2.2.1 arm 概述arm (advanced risc machines),既可以认为是一个公司地名字,也可以认为 是对一类微处理器地通称,还可以认为是一种技术地名字1991年arm公司成立 于英国剑桥,主要出售芯片设计技术地授权.目前,采用arm技术知识产权(ip)核 地微处理器,即我们通常所说地arm微处理器,己遍及工业控制、消费类电子产 品、通信系统、网络系统等各类产品市场,基于arm技术地微处理器应用约占据 了 ris

31、c微处理器75%以上地市场份额,arm技术正在逐步渗入到我们生活地各 个方面采用risc架构地arm微处理器一般具有如下特点:体积小、低功耗、低成木、高性能;支持thumb (16位)/arm双指令集,能很好地兼容8位/16位器件;大量使用寄存器,指令执行速度更快;大多数数据操作都在寄存器屮完成;寻址方式灵活简单,执行效率高;指令长度固定.目前常见arm处理器系列有:arm7系列、arm9系列、arm 11系列、 securecore sc100> strong arm. xscale.在此,我们主要讲解 arm7 系列、arm9 系列.arm7系列:0.9mips/mhz、3级流水线、

32、冯.诺依曼结构;其内核主要有 arm7tdmi和arm720t; t支持16位thumb指令,d支持在片调试,m增强型 乘法器,产生全64位结果,1嵌入式ice硬件提供片上断点和调试点支持.arm9系列:1mips/mhz、5级流水线、哈佛结构;其内核主要有arm920t、 arm922t 和 arm940t.此外,arm芯片还获得了许多实吋操作系统(real time operating system)供 应商地支持,比较知名地有:windows ce、linux、vxworks> nueleus、ucos、beos 等.2.2.2 s3c2440a 体系结构三星公司推出地16/32位

33、risc微处理器s3c2440a,为手持设备和一般类型 应用提供了低价格、低功耗、高性能小型微控制器地解决方案.为了降低整体系 统成木,s3c2440a提供了一下丰富地内部设备u2j .s3c2440a采用了 arm920t 地内核,0.13um地cmos标准宏单元和存储器单元.其低功耗,简单,优雅,且全静 态设计特别适合于对成本和功率敏感型地应用它采用了新地总线架构advanced micro controller bus architecture (amba).s3c2440a 地杰出地特点是其核心处理 器(cpu),是一个由 advanced risc machines有限公司 设计地

34、16/32位 arm920t 地 risc 处理器.arm920t 实现了 mmu, amba bus 和 harvard 高速缓冲体系结构这一结构具有独立地16kb指令cache和16kb数据 cache.通过提供一套完整地通用系统外设,s3c2440a减少整体系统成本和无需配 置额外地组件综合对芯片地功能描述,s3c2440a集成地以下部分片上功能: 1.2v内核供电,1.8v/2.5v/3.3v存储器供电,3.3v外部i/o供电,具备16kb 地icache和16kb dcache/mmu微处理器 lcd 控制器(最大支持4k色stn和256k色tft)提供1通道lcd专 用dma 3

35、通道 uart(irda1.0, 64 字节 tx fifo,64 字节 rx fifo) 1通道iic-bus接口(多主支持) 1通道iis-bus音频编解码器接口 2端口 usb主机/i端口 usb设备(1.1版) 4通道pwm定时器和1通道内部定吋器/看门狗定吋器相机接口(最大4096 x 4096像素地投入支持) 130个通用i/o 口和24通道外部中断源2.2.3系统硬件选型设计根据课题地要求,我们选择了 s3c2440arm处理器,在处理器丰富资源地基 础上 还进行了相关地配置和扩展.我们采用256mb地16位flash-k9f2g0&该 芯片是samsung公司生产地采用

36、nand技术地大容量、高可靠flash存储器,用 来存放系统地启动代码、内核代码及根文件系统.ram是2片hy57v561620共 64mb 地 sdram.网卡芯片采用dm9000芯片.dm9000是一款完全集成地和符合成本效益地, 单芯片快速以太网mac控制器.dm9000提供了介质无关地接口,来连接所有提供 支持介质无关接口功能地家用电话线网络设备或其他收发器该dm9000支持8 位,16位和32 位接口访问内部存储器,以支持不同地处理器.摄像头采用cmos摄像头.其中主要芯片是ov9650.ov9650是omnivision 公司地coms摄像头,能实现基本地摄像头功能.硬件功能框图见

37、图2.1:cmos 摄 像头以太网 控制器dni9000flash: 256mb sdram: 64nibcpu: s3c2440撒处理器 <>jiag串口 rs232图2.1系统硬件功能框图开发板实物如图2.2所示:图2.2 mini2440开发板实物图2.3视频监控系统软件设计视频监控软件是工作地核心部分本文研究地主要内容分为两个方面:一是软 件平台地构建,二是视频监控软件中地cmos摄像头驱动模块和应用程序模块地 设计与实现设计软件应遵循软件工程地方法:首先根据软件地功能,对软件进行 模块划分和抽象,然后逐步求精,由抽象到具体地分析和构造出软件地层次结构, 提高软件地可理解性

38、.2.3.1软件总体框架该视频监控系统软件是基于“arm+linux”平台开发地.软件地层次结构关 系如图2.3所示.www浏览器视频监控应用软件tcp/ip网络系统文件系统linux内核板级支持包(bsp)以太网驱动cmos驱动其他驱动mini2440开发板cmos摄像头图2.3软件系统层次结构根据图2.3所示,本系统软件主要是服务器端地实现服务器端包括系统软件 和应用软件两部分组成.系统软件主要包括bootloader地移植、嵌入式linux操 作系统移植、文件系统建立、cmos摄像头驱动模块设计;应用软件主要包括图 像数据地采集、图像输入检测、图像压缩、图像数据地网络发送等.2.3.2

39、bootloader 选择简单地说,bootloader就是在操作系统内核或用户应用程序运行z前运行地 一段小程序.它对开发板上地主要部件如cpu, ram, flash,串口等基本硬件进 行初始化,建立内存空间地映射图(包括设置系统堆栈和系统启动参数区等),从而 将系统地软硬件环境带到一个合适地状态,以便为最终调用操作系统内核准备好 止确地环境然后跳转到操作系统内核地入口.表2.1目前各种bootloader地比较曲bootloader说明lilo, grubx86 平台上 linux 地 bootloaderredboot基于 ccos 地 bootloaderbloblart 项目中地

40、bootloaderu-boot支持体系结构最多地通用bootloadervivi专门为arm9设计,支持s3c2440目前,bootloader地开发通常都是基于一些开源地bootloader (如 vivi,u-boot,blob,redboot等)设计地表2.1列出了几种比较流行并且支持linux操 作系统地bootloader并对它们进行了简单地比较.本文采用地bootloader是vivi, 已经在嵌入式arm板上移植成功.详细地移植过程将在第三章阐述.2.3.3嵌入式操作系统地选择嵌入式操作系统主要指支持嵌入式系统应用地操作系统软件,通常包括与硬 件相关地底层驱动软件、系统内核、设

41、备驱动接口、通信协议、图形界面等.嵌入 式操作系统具有通用操作系统地基本特点,如能够有效管理复杂地系统资源、能够 提供高效率地库函数、驱动程序、工具集以及应用程序.到目前为止,国际上已经出现地嵌入式操作系统多达十几种,从市场占有率来 看,目前常用地嵌入式操作系统有以下几种:、嵌入式linux嵌入式linux(embedded limix)是指对标准linux经过小型化裁剪处理之后, 能够固化在容量只有几kb或者几mb地存储器芯片或者单片机屮,是适合于特定 嵌入式应用场合地专用linux操作系统.在目前已经开发成功地嵌入式系统中,大 约有一半使用地是linux.这与它自身地优良特性是分不开地.嵌

42、入式linux同 linux -样,具有低成本、支持多种硬件平台、优异地性能和良好地网络支持等优 占八、(2) 、vxworksvxworks操作系统是美国windriver公司于1983年设计开发地一种嵌入式实 时操作系统(rtos) vxworks地实时性做得非常好,其系统木身地开销很小,进程 调度、进程间通信、中断处理等系统公用程序精练而有效,使得它们造成地延迟很 短另外vxworks提供地多任务机制,对任务地控制采用了优先级抢占和轮转调 度机制,这充分保证了可靠地实时性,并使同样地硬件配置能满足更强地实时性要 求另外vxworks具有高度地可靠性,从而保证了用户工作环境地稳定.但是,由

43、 于vxworks地开发和使用都需要交高额地专利费,因此大大增加了用户地开发成 本.同时,由于vxworks地源码不公开,造成它部分功能地更新(如网络功能模块) 滞后.(3) 、windowscewindowsce是微软开发地一个开放地、可升级地嵌入式操作系统,是基于掌 上型电脑类地电了设备操作系统它是精简地windows95. windowsce地图形用清华大学2012届毕业设计说明书 户界面相当出色.windowsce具有模块化、结构化和基于win32应用程序接口以 及与处理器无关等特点它不仅继承了传统地windows图形界面,并口用户在 windowsce平台上可以使用windows上地

44、编程工具(如visualbasie、visualc+ 等)、也可以使用同样地函数、使用同样地界面风格,使绝大多数windows上地应 用软件只需简单地修改和移植就可以在windowsce平台上继续使用.但与 vxworks相同,windowsce也是比较昂贵地.(4) 、palm ospalm os在pda和掌上电脑有着很大地用户雛palm os最明显地特点在精 简,它地内核只有几千个字节,同时用户也可以方便地开发定制,具有较强地可操 作性.因此,基于以下原因我们选择了嵌入式linux作为开发平台地操作系统嗣: linux系统是层次结构且内核完全开放.嵌入式linux内核性能高效、稳定,小巧灵

45、活,易于裁剪.具有良好地开发环境. linux具有广泛地硬件支持特性.开发成本低廉.2.3.4嵌入式文件系统类型选择目前为止在嵌入式系统中常用地根文件系统地类型有cramfs> jffs2、 yaffs> ramfs等类型,下面将分别介绍这些文件系统.(1) cramfs: 一种只读地压缩文件系统,它也基于mtd驱动程序在cramfs文 件系统屮,每一页(4kb)被单独压缩,可以随机页访问,其压缩比高达2:1,为嵌入 式系统节省大量地flash存储空间,使系统可通过更低容量地flash存储相同地 文件,从而降低系统成木.cramfs文件系统以压缩方式存储,在运行时解压缩,所 以不支

46、持应用程序以x1p(片内运行)方式运行,所有地应用程序要求被拷到ram 里去运行,但这并不代表比cramfs需求地ram空间要大一点,因为cramfs是采 用分页压缩地方式存放档案,在读取档案时,不会一下子就耗用过多地内存空间, 只针对目前实际读取地部分分配内存,尚没有读取地部分不分配内存空间,cramfs 文件系统自动计算压缩后地资料所存地位置,再即时解压缩到ram中.(2) jffs2:是redhat公司基于jffs开发地闪存文件系统,最初是针对redhat公司地嵌入式产品ecos开发地嵌入式文件系统,所以jffs2也可以用在 linux,uclinux中.日志闪存文件系统版本jffs2主

47、要用于nor型闪存,基于mtd 驱动层,特点是:可读写地、支持数据压缩地、基于哈希表地日志型文件系统,并提 供了崩溃/掉电安全保护,提供“写平衡”支持等缺点主要是当文件系统已满或接 近满时,因为垃圾收集地关系而使jffsz地运行速度大大放慢问jffs2不适合用于nand闪存主要是因为nand闪存地容量一般较大,这样 导致jffs为维护日志节点所占用地内存空间迅速增大,另外,jffsz文件系统在挂 载时需要扫描整个flash地内容,以找击所有地日志节点,建立文件结构,对于大 容量地nand闪存会耗费大量时间.yaffs: yaffs/yaffs2是专为嵌入式系统使用nand型闪存而设计地一 种口

48、志型文件系统与jffs2相比,它减少了一些功能(例如不支持数据压缩),所 以速度更快,挂载时间很短,对内存地占用较小.yaffs/yaffs2自带nand芯片 地驱动,并且为嵌入式系统提供了直接访问文件系统地api,用户可以不使用 linux中地mtd与vfs,直接对文件系统操作吧本文选择yaffs文件系统,yaffs文件系统以速度快,效率高,占用内存少,其只 读地特点有利于保护文件系统免受破坏,提高了系统地可靠性.2.3.5 cmos摄像头驱动以及视频监控应用软件地开发设计由于我们采用地是cmos摄像头,该款摄像头在linux系统中没有为之实现地 驱动代码,所以我们应该为其设计编写驱动,好让

49、其正常工作首先我们确定将其注 册为字符设备,然后为其实现操作函数.其中包含了三个主要文件:s3c2440camif.c、 s3c2440_ov9650.c> sccb.c.而视频监控软件则是利用linux系统v4l接口,实现数据压缩,传输,连接客户 端浏览器来设计实现地.具体实现过程见第5章.2.4本章小结本章主要内容是视频监控系统地总体方案设计首先介绍了嵌入式系统概况, 及arm技术和s3c2440体系结构,然后给出了视频监控系统硬件平台地构建及软 件总体框架设计,并对系统中地一些关键技术进行了分析和选型.3系统硬件平台地简单介绍3.1 mini2440开发板主要硬件资源介绍a、cpu

50、处理器 samsung s3c2440a,主频 400mhz,最高 533mhzb、sdram 内存在板64m sdram32bit数据总线sdram 吋钟频率高达100mhzc、flash 存储在板256m nand flash,掉电非易失在板2m nor flash,掉电非易矢已经安装biosd、接口和资源1个100m以太网rj-45接口(采用dm9000网络芯片)3个串行口 1 个 usb host-1 个 usb slave b 型接口-1个i2c总线at24c08芯片,用于i2c总线测试1个2.0 mm间距20pin摄像头接口-板载实时时钟电池电源接口 (5v),带电源开关和指示灯3

51、.2主要芯片接口介绍3.2.1 sdram存储系统mini2440使用了两片外接地32m bytes总共64m bytes地sdram芯片 (型号为:hy57v561620ftp/mt48lc16m16a2),般称之为内存,它们并接在一起 形成32-bit地总线数据宽度,这样可以增加访问地速度;因为是并接,故它们都使 用了 ngcs6作为片选,根据s3c2440技术手册5-2中地介绍可知,这就决定了它 们地物理起始地址为0x30000000,下面是摘自mini2440原理图屮地sdram部 分原理图.如图3.1所示.udou 23m100id 打la80iu 其u>00m / uwn 3

52、0“ppu 订 upoiw 32uoom10 门uboim 迥laboitlj b uooii* wadala3ma3a9 a10 all ailu6udor2 233010 卑 umiu 卫 um iu 卫umitt ” u»oin 刃labpm if lapoio 33i ad oum«ia9d,o 33irrr 7f3t utw“bokm 20l«doiu» 市ia00iu4 20lamsotu*riiio|j iuwsiij5"ldqm udqmnew pl1cmw uutt54612坊hscke sclkvsso vssl vss2v

53、mx) vdoi vdd2aoala3ma5a9a10 all allvs9j0 vs3q1vssq2ys3q3vdeo vduqi vddq2vddq3? smo ? “iuiutbcli士 w1vdd33vnew 刃ucum 3814432szi31ba0xkexlkvssqo vssqi vssq2vssq31loata1i4l04ta1?"tl0au1il0aya1i丁l0ayu010l0ata211)uoata22|342l0ata24a1loatus45l0atuil0atu710atui50loatamimym0ioataj119lnkboit"maa卄luk

54、m10lnwi丄vc0j3vhi刀19 t«i-«ivddo vddivdd2vdcqo vddq1 vddq2 vddq)t£ras 出cas 倔hy57v%io)g2mb)hy57v5616a(12mb)图3.1 sdram原理图3.2.2 flash存储系统mini2440 具备两种 flash.nor flash,型号为 sst39vf1601,大小为 2mbyte;另 一种是nand flash,型号为k9f2g0&大小为256m.s3c2440支持这两种flash启 动系统,通过拨动开关,你可以选择从nor述是从nand启动系统.nand fl

55、ash不 具有地址线,它有专门地控制接口与cpu相连,数据总线为8-bit,fi这并不意味着 nand flash读写数据会很慢大部分地优盘或者sd卡等都是nand flash制成地 设备.从下面地原理图3.2可以看出,nor flash采用了 a1-a22总共22条地址总 线和16条数据总线与cpu连接,请注意地址是从a1开始地,这意味着它每次 最小地读写单位是2-byte,因此根据原理图,该设计总共可以兼容支持最大 8mbyte地nor flash,实际我们地开发板上只用了 a1-a20条地址线,因为与 a21、a22相连地sst39v1601地相应引脚是悬空地.图3.2 flash原理图

56、3.2.3 cmos camera 接口s3c2440带有cmos摄像头接口,在开发板上通过标称为camera地接 口引出它是一个20脚2.0mm间距地针座,用户可以直接使用我们提供地 cam 130摄像头模块;其实cam 130摄像头模块上面没有任何电路,它只是一个 转接板,它直接连接使用了型号为zt130g2摄像头模块,它们地定义如图3.3所示.图3.3 camera摄像头接口3.3本章小结本章首先详细介绍了 mini2440开发板地资源.其后重点解析了开发板上对与 本课题有重要关系地接口与芯片,包括内存、flash.摄像头接口等,并提供引脚图以 便之后地软件设计参考.4嵌入式linux操作系统地构建4.1嵌入式交叉编译环境搭建在裁减和定制嵌入式linux之前,由于一般嵌入式开发系统存储大小有限,通 常需要在强大地pc机(宿主机)上建立一个用于目标机地交叉编译环境所谓交叉 编译,简单地说就是在一个平台上生成另一个平台上地可执行代码.这里所谓平台 实际上是体系结构和操作系统地结合体程序地编译是在宿主机,一般为桌面主 机;执行是在口标端,即嵌入式系统地硬件平台一般是在宿主机上通过跨平台交 叉编译器把源文件编译成目标平台上可执行地文件,再通过串口、并口或者网络下 载至目标平台上地flash或

温馨提示

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

评论

0/150

提交评论