最新版基于USB2460数字相机的设计毕业设计.docx
《最新版基于USB2460数字相机的设计毕业设计.docx》由会员分享,可在线阅读,更多相关《最新版基于USB2460数字相机的设计毕业设计.docx(29页珍藏版)》请在冰豆网上搜索。
最新版基于USB2460数字相机的设计毕业设计
编号
本科生毕业论文
基于USB2.0数字相机的设计
TheSubjectofUSB2.0basedonthedesignofdigitalcamera
2009年6月
摘要
随着电脑外设和数码产品的不断发展,各种设备与PC机之间的接口成为当前需要解决的难题。
USB是由Intel,Compaq,Microsoft等七家着名的计算机和通信公司于1994年推出的通用串行总线,它的出现大大简化了PC机和外设的连接过程,使PC机接口的扩展变得更加容易。
USB具备其它总线无法比拟的优点,比如支持热插拔、传输速度快且稳定、低耗能等等。
目前,USB己成为微机与外围设备通信的首选接口。
尤其是USB2.0协议的发布,是USB技术发展史上的里程碑,它在USB1.0的基础上有了质的提高,其理论传输速度可达到480Mb/s,为计算机与外设的高速数据交换提供了可能。
本文对USB接口技术的基本原理进行了较详尽的研究,详细介绍了基于USB2.0的应用系统的基本组成框架。
考虑到数字成像和USB技术都是近些年来的热点技术,本文以一种USB2.0的图像采集系统为实例,给出了该系统的解决方案。
文章首先概括的介绍了USB形成的背景、USB接口的优点、USB层次结构、USB的通信协议、USB的数据传输方式等等。
然后,重点论述了基于USB2.0技术的图像采集系统的设备端和主机端软、硬件的设计与实现方法。
在硬件方面,在对USB接口芯片CY7C68013和CMOS图像传感器芯片OV7620的功能结构进行分析的基础上,提出了系统硬件电路的设计方案,就主要功能模块的实现进行了论述。
在本设计中,选用OV7620实现视频图像的采集,选用Cypress公司的USB接口芯片CY7C68013实现图像采集系统中的接口功能,完成图像数据的传输;在软件方面,详细地介绍了USB接口芯片的固件程序、驱动程序的开发流程。
关键词:
USB2.0,OV7620,CY7C68013,固件,驱动程序
Abstract
WiththedevelopmentofPCperipheralsanddigitalproducts,theinterfaceand
connectionbetweenthemandPChasbecomeadifficultproblem.TheUSBSpecificationwasproposedbyIntel,ComPaq,MicrosotfnadohtereomPnaiesin1994,itsemergencesimplifiedtheconnectionbetweenPCandPCperipherals,andmadePCinterfaceextensiontobecomemoreeasier.Ithasmoreadvantagesthanotherbus,suchassupportingofhotinsert&Plug,hightransmissionspeedandlowexpense.NowUSBhasbeenwidelyusedinPCperipheralsandithasbecomeoneofthebestselectionsinmanybuses.Especiallythe2.0revisionoftheUSBspecificationisissued,whichisthelandmakintheUSBhistory.ItstransmissionspeedIs480Mb/s.Soit'sPossibletorealizethehightransmissionspeedbewteenPCandthePeripherals.
ThispaperresearchedthebasicprincipleofUSBtechnologyindetail,andintroducedthebasicframeofanapplicationsystembasedonUSB2.0indetail.InconsiderationofthedigitalimagingandUSBtechnologyarehottechniquesinrecentyears,weselectaUSB2.0imageacquisitionsystemtobeexample,andgivethesolutionofthatsystem.Thepapergeneralizedthedevelopingbackgroundandthe
advantagesofUSB,thehierarchicalstructureIncludingprotocol,andtransmissionmeansofdataetcbriefly.Thenthedesignandimplementationofthehardwareandsoftwareonbothhostanddevicesidesofanimageacquisitionsystembasedon
USB2.0aredemonstratedindetail.Inhardwaresegment,afteranalyzingthefeaturesofUSBinterfacechipCY7C68013andCMOSimagesensorOV7620,thepaperproposesthelayoutofthecircuitdesignandtheimplementationofthemainfunctionalmodulesisintroducedindetail,Inthisdesign,weselectCMOSimagesensorOV7620tocompletetheimageacquisition,andselectUSBinterfacechipCY7C68013tocompletetheimagetransmission.Insoftwaresegmentfirmwaredesignanddevicedriverareintroducedindetail.
KeyWords:
USB2.0,OV7620,CY7C68013,Firmware,Drvier
第一章:
绪论
1.1USB总线技术发展过程及现状
作为计算机外设接口技术的重要变革,USB在传统计算机组织结构的基础上,引入了网络的拓扑结构及其设计思想[1]。
USB具有终端用户的易用性、广泛的应用性、带宽的动态分配、优越的容错性能、较高的性能价格比等特点,方便了外设的增添,适应了现代计算机多媒体的功能拓展,己逐步成为计算机的主流接口。
USB总线从诞生起便引发了一场产业革命。
它以灵活、方便、应用范围广、通信稳定、成本低廉等优点,使得PC的接口纷纷从串行口和并行口转到USB总线上来。
SB2.0标准于2000年4月提出[2],它的传输速率达到了480Mb/s,比它之前的USB1.1标准的12Mb/s快了40倍。
速率瓶颈的突破使USB的应用领域得到了很大的拓展,原来由于速率限制而不适合用USB的大容量硬盘、高品质摄像头、高分辨率扫描仪等设备都可以使用USB2.0接口。
1.2USB总线的优势
USB[3](UniversalSerialBus)通用串行总线由Intel提出,它是一种快速的、双向的、同步传输的、廉价的并支持热拔插的串行接口。
USB技术的应用是计算机接口技术的重大变革,同以上两种接口总线相比,USB具有不可比拟的优点:
1.USB可连接多达127个外设,简单方便的扩大了PC机接口能力。
2.对于PC用户来说,USB实现了真正的即插即用和热插拔,当用户需要将外设连接到PC机上进行功能扩展时,只需要将外设的连线插入PC机的USB接口上就可以了,其余由操作系统来完成。
3.USB规范具有良好的向下兼容性,如USB2.0的主机控制器就能很好地兼容USB1.1的产品。
4.USB技术具有开放性,是非营利性的规范,得到了广泛的工业支持。
5.不管是硬件设计或是数据传输的协议,USB都很稳定。
USB驱动程序、接收器以及电缆的硬件规范,都会尽量减少噪声干扰产生的错误数据。
随着USB2.0版本的发布,USB越来越流行,它己经成为一个标准接口。
目前市场上出售的所有PC机都支持USB,而且很多外设只推出了USB版本,如移动硬盘等。
可以预见,USB的应用肯定会越来越广泛,其传输速率也会越来越高。
1.3图像采集系统的概述
随着数码产品的不断普及,摄像头的应用范围在不断的扩大,摄像头中的核
心部件---图像传感器的用量也在日益增长,由于CCD图像传感器成本等因素的限制,近几年CMOS图像传感器的用量急剧上升,特别在手机、数码照相机的应用。
与CCD相比,CMOS器件则是一种可大规模生产的集成电路,具有成品率高、价格低等特点。
相对于CCD而言,CMOS器件技术有一些明显的特点[4]:
其一,集成度高;其二,价格低廉,CMOS器件结构简单,从而成品率高,制造成本低。
因此,大量的摄像头生产商都选用了CMOS图像传感器作为其摄像头的传感器。
随着CMOS摄像头的图像象素增加,对传输摄像头数字图像的通道速度要求越来越高。
对百万象素以上的摄像头,就要求几十兆的传输速度。
因此,研究高速的数字图像传输接口对CMOS数字图像摄像头的生产和应用有着很重要的意义。
1.4论文主要研究内容和主要工作
本论文主要研究了USB总线技术,包括USB形成的背景、USB接口的优点、USB层次结构、USB的通信协议、USB的数据传输方式等等。
在充分研究了USB2.0协议的基础上,总结出基于USB2.0的应用系统的基本组成框架。
并以此为依据,提出了一种USB2.0的图像数据采集系统实现方法。
整个系统在功能上分为采集、传输和显示三个部分。
利用嵌入式CPU采集CMOS图像传感器芯片输出的数字图像信号,然后把数据传输到主计算机(PC机),最后PC机将重建图像在屏幕上显示出来。
第2章:
系统框架
2.1USB2.0规范概述
2.1.1USB的特性
(1)USB的即插即用。
USB实现了自动配置,它不需要用户手工配置I/O地址和中断请求(IRQ)。
当USB设备连接到计算机上时,操作系统会自动检测该设备,并加载适合的驱动程序。
(2)支持热插拔。
用户可以把USB设备连接到一台正在运行的计算机上。
(3)最大支持127个物理设备(包括根集线器)的连接。
用USB连接的外围设备数目最多达127个,共7层。
在这7层中,除根集线器外,最多支持5个集线器的级连,即一个USB设备最多可以经过5个集线器连接至主机。
(4)灵活供电,USB电缆具有传送电源的功能,支持节约能源模式,耗电低,能够采用总线供电。
USB总线提供最大为5V,500mA电流,对于功耗较小的设备来说这是非常有效的。
另外,USB支持低功耗模式,如果连续3ms没有总线活动,USB就会自动进入挂起状态,以节省电能消耗。
(5)支持主机和外围设备之间多个数据和信息流的传输。
UBS支持三种类型的传输速率:
1.5Mb/s的低速传输、12Mb/s的全速传输和480Mb/s的高速传输;USB共有4种传输方式:
控制传输、同步传输、中断传输、批量传输,以适应不同设备的需要。
(6)USB规范具有良好的向下兼容性,如USB2.0的主机控制器就能很好地兼容USB1.1的产品,操作系统在检测到全速USB设备接入时,会自动按照12Mb/s的速率进行传输,而其他高速USB设备,并不会因为全速设备的连接而减慢它们的传输速率。
[5]
2.1.2应用范围分类
USB支持三种类型的传输速率:
1.5Mb/s的低速传输、12Mb/s的全速传输和480Mb/s的高速传输;4种传输类型:
控制传输、中断传输、批量传输和同步传输,这使其能适合多种外设的需要。
表2-l[5]按照数据传输速率对USB设备进行了分类,可以看出480Mb/s可以包括高速、全速、低速的情况。
表2-1USB应用范围分类
2.1.3USB系统构成
USB系统可以从三个方面进行描述:
三个逻辑层:
USB互连、USB主机和USB设备。
USB系统分为三个逻辑层[6]:
功能层、USB设备层和USB总线接口层,且每一层都由主机和UBS设备的不同功能模块组成[9],如图2-1所示。
主机互连物理设备
客户软件功能层
USB设备层
USB总线接口层
实际通信流逻辑通信流
图2-1USB系统的分层
2.1.3.1USB总线拓扑结构
USB总线的物理连接是一种分层的星型拓扑结构[9],如图2-2所示。
集线器(hub)是每个星型结构的中心。
由于集线器和电缆的传播时间有定时的限制,允许的最大层数是7层(包括根层)。
通过这种层次星型的总线拓扑结构,USB系统最多可以支持127个USB设备(包括根集线器)的连接。
在这7层中,主机和任何设备之间的通信通路最多可支持5个非根集线器。
一个复合设备占用两层,因此它不能被连接到第7层。
第7层只允许连接功能设备。
如果采用5m长的USB电缆,则最大的传输距离为30m,可见USB现在还不适合长距离的数据传输。
图2-2USB总线拓扑结构
2.1.3.2USB主机
在USB系统中USB主机是总线上唯一的主人(10),USB设备仅仅响应主机请求。
USB主机通过主机控制器管理总线上的数据传输。
USB主机的功能如下:
1)检测USB设备的安装和拆卸;
2)管理在主机和USB设备间的控制流;
3)管理在主机和USB设备间的数据流;
4)收集状态和动作信息;
5)提供电源给连接的USB设备。
USB主机通常包括以下部分:
客户软件(USB设备驱动程序和主机应用程序)、USB
系统软件(USB总线驱动程序、主机控制器驱动程序和主机软件)和UBS主机控制器。
图2-3显示了UBS主机的软、硬件组成及它们之间的通信。
图2-3USB主机的组成
2.2系统的硬件构成
2.2.1采集系统总体结构
系统总体结构[7]框图如图2-4所示,系统主要由CMOS图像传感器芯片OV7620、可编程逻辑器件EPM7128、数字信号处理器芯片TMS320VC5401、USB2.0接口控制器CY7C68013、SRAMCY7C1041、总线驱动器HC244等构成。
2.1.3.3USB设备
图2-4图像采集系统结构框图
2.2.2OV7620
OV7620[8]是美国OmniVision公司推出的一款高集成度、中分辨率(640×480)、逐行/隔行扫描、彩色/黑白CMOS数字图像传感器芯片[19]。
它的数字视频口支持多种输出格式,包括:
60Hz16位/8位YCrCb4:
2:
2格式,ZV口输出格式、RGB原始数据16位/8位输出格式和CCIR601/CCIR656格式。
输出帧频可于0.5到30帧/秒范围内编程。
OV7620内部集成I2C总线兼容的SCCB(SerialCameraControlBus)接口,外部主机以此来操作芯片内部寄存器,对芯片的功能进行设置。
OV7620内部结构如图2-5所示,其中Y0~Y7为图像数据输出Y线;UV0~UV7图像数据输出UV线;SDA为I2C总线数据线;SCL为I2C总线时钟线;FODD为奇场信号输出;HREF为行同步输出;VSYNC为帧同步输出;PCLK为像素同步时钟输出;VTO模拟视频输出;MID为多片应用允许;CS[2:
0]与Y6、Y4、Y7复用,用于在芯片上电或复位时设置SCCB总线地址。
图2-5OV7620内部结构
OV7620的数据输出时序如图2-6所示:
图图2-6OV7620输出时序
2.23CY7C68013
CY7C68013[9]集成了USB2.0收发器、SIE(串行接口引擎)、增强的8051微控制器和可编程的外围接口。
FX2这种独创性结构可使数据传输速率达到480Mb/s,即USB2.0允许的最大带宽。
在FX2中,智能SIE可以处理大部分USBI.1和USB2.0协议,使得微控制器可以专注于应用功能,从而减少了开发时间和确保了USB的兼容性。
GPIF(GeneralProgrammabaleInterface)和主/从端点FIFO(8位或16位数据总线)为ATA、UTOPIA、EPP、PCMCIA和DSP等提供了简单的无缝连接接口。
几CY7C68013只支持两种传输速率:
全速(Fullspeed)12Mb/s和高速(Highspeed)480Mb/s,不支持低速(Lowspeed)1.5Mb/s。
CY7C68013结构图如图2-7所示:
图2-7CY7C68013内部结构
第三章系统硬件设计
3.1系统总体方案与基本原理
整个图像采集系统主要由图像采集电路、EEPROM、USB接口芯片、电源转换电路等模块组成。
系统的原理框图如图3-1所示。
图3-1系统原理框图
3.2图像采集电路设计
本系统[10]的图像采集工作由光学镜头和图像传感器OV7620完成。
图像传感器OV7620与EPM7128及SRAM构成了前端数据采集电路,其具体连接关系如图3-2所示。
图3-2数据存储接口
OV7620的SCCB接口SCL、SDA两个引脚与的I2C接口连接,由CY7C68013
设置OV7620工作于8位总线模式。
图像数据通过输出线Y[7:
0]输出,将Y[7:
0]通过两片HC244连入系统板的数据总线上,分别连接到CY7C1041的数据总线高8位和低8位上。
帧同步信号VSYNC和行同步信号HREF连接到EPM7128的通用I/O引脚。
OV7620的PCLK引脚为像元同步时钟输出信号,连接到EPM7128的全局时钟引脚GCLK1,作为全局时钟以保证OV7620与EPM7128的同步。
3.3EEPROM电路设计
在本系统中,采用的是I2C总线上连接有EEPROM[11],且在EEPROM中存放有固件和VID/PID/DID。
如图3-3所示:
图3-324LC64
图3-4为EERPMO硬件电路。
图3-4EEPROM电路
3.4CY7C68013与0V7620连接
CY7C68013使用其功能强大的GPIF接口实现和OV7620的无缝连接。
它们之间的连接如图3-5:
图中几个主要的引脚说明如下:
Y[7:
0]:
8位图像数据输出
PCLK:
像素时钟输出
VSYNC:
垂直同步信号输出
HREF:
水平同步信号输出
SI00:
SCCB总线的数据信号线
SI01:
SCCB总线的时钟信号线
IFCLK:
GPIF接口的同步时钟信号
RDY[1:
0]:
GPIF接口的准备输入线
图3-5CY7C68013与OV7620的连接
CY7C68013与OV7620构成的数据通道的工作原理是:
首先,USB设备完成总线枚举和设备配置(通过I2C总线对OV7620的内部寄存器配置),OV7620完成配置后就进入工作状态,开始图像采集。
然后,CY7C68013通过GPIF接口监测OV7620垂直同步信号VSYNC和水平同步信号HREF的变化,判断新的一帧是否开始。
新的一帧图像开始后,在同步时钟信号PCLK的作用下,CY7C68013通过数据总线PB[7:
0]将图像数据传送到FIFO中。
3.5电源设计
模拟电源由电源芯片LDI117[12]负责提供,LD1117总共四个引脚,其中两个接模拟地,并连接到USB电缆的地线。
LD1117的连接如图3-6所示。
图3-6电源芯片LD1117连接方式
3.6电源转换电路设计
整个硬件电路系统采用USB总线供电。
也就是说,整个硬件电路的供电是主机(PC机)通过USB接口提供的,其提供的电压为+5v,最大电流为500mA。
硬件电路中OV7620工作电压为+5V,而USB控制器CY7C68013工作电压是+3.3V,因此必须通过电源转换芯片LT1763CS8一3.3将+5V的供电电压转换为+3.3V电压,从而适应整个硬件系统的需求。
图3-7为电源转换电路。
图3-7电源转换电路
3.7时钟电路的设计
时钟电路[13]如图3-7所示:
图3-7常见时钟设计的两种方法
①使用外部晶体振荡电路和内部振荡器。
晶体连接到单片机芯片的X1和
X2/CLKIN引脚之间,通过激活芯片内部振荡器来实现时钟发生。
一般石英晶体具有30?
左右的有效串阻和1mW的功耗,每个引脚应该连接一个20pF左右的负载电容来构成振荡电路。
3.8SRAM电路的设计
SRAM结构如图3-9所示
图3-9SRAM芯片结构
它有256K×16bit的存储空间,存取数据的时间最快只要10ns,即存取速
度可以达到100MB/s,完全可以满足我们存取图像数据的要求。
它有18位的地址线,16位的数据信号线;当芯片没有被选中时自动掉电以减少功耗;它采用CMOS结构,功耗低;3.3V电源供应;全静态操作,不需要时钟刷新;三态门输出等。
引脚CE和WE为低表示写设备。
如果BLE为低,I/O引脚(I/O0一I/O7)上的数据被写到地址引脚(A0-A17)指向的位置。
如果BHE为低,则I/O引脚(I/O0-I/O1)上的数据被写到地址引脚(A0-A17)指向的位置。
引脚CE和OE为低并且WE为高表示读设备。
如果BLE接低电平,地址引脚(A0_A17)指向的位置上的数据将出现在I/O引脚(I/O0-I/O7)上。
如果BHE接低电平,则地址引脚(A0-A17)指向的位置上的数据将出现I/O引脚(I/O8-I/O15)上。
如果设备取消选定(CE为高),或者输出被禁止(OE为高),或者BHE和BLE为高,或者正在进行写操作,则输入引脚(I/O0一I/O15)处于高阻状态,输出被禁止(OE为高)
第四章系统软件设计
4.1图像采集系统设计
在整个图像采集系统中,CY7C68013中固件主要完成三个方面的工作:
初始化USB芯片及通过I2C总线对OV7620的各项参数进行设置;作为USB接口控制芯片与主机通信并传输数据:
利用芯片上GPIF接口控制CY7C65013和OV7620间的数据传输。
该系统固件共包含6个程序文件:
wf.c,dscr.a51,usbov.c,gpif.c,Ezusb.lib
和usbjumptb.obj。
其中,wf.c是固件架构的代码,它是固件运行的主程序文件,通过调用初始设置函数TD_Init()、用户功能函数TD_Poll()、挂起函数TD_Suspend()和唤醒函数TD-Resume()来处理各种USB事件。
dscr.a51是设备描述符文件,定义了系统所使用的各种USB描述符。
usbov.c是用户功能代码,其中包含了各种功能函数的定义,这些功能函数是各程序之间的桥梁。
主要有三类:
工作分配器、标准设备请求处理函数和USB中断服务例程。
gpif.c是GPIF波形文件,包含两部分内容:
波形描述符定义和GP