您的位置 首页 FPGA

根据OV9620 COMS数字图像传感器芯片和USB接口完成数字摄像头规划

基于OV9620 COMS数字图像传感器芯片和USB接口实现数字摄像头设计-目前,能够传输高品质视频信号的两种总线接口(USB和IEEE 1394接口)都支持即插即用,且具有易扩展、使用方便等特点。但是IEEE 1394接口的价格相对较高,因此,当前采用更多的是USB接口。

1、概述

现在,能够传输高品质视频信号的两种总线接口(USB和IEEE 1394接口)都支撑即插即用,且具有易扩展、运用方便等特色。可是IEEE 1394接口的价格相对较高,因而,当时选用更多的是USB接口。

USB的数据传输有4种形式:块传输(Bulk Transfers)、中止传输(Interrupt Transfers)、同步传输(Isochronous Transfers)、操控传输(Control Transfers)。当需求快速传输大批量的精确数据时,一般选用块传输形式;而当传输实时性较强的数据时,则应选用中止传输形式。现在的USB2.0规范在原有的低速形式(low speed) 1.5Mb/s、全速形式(full speed) 12Mb/s的基础上又支撑高达480Mb/s的高速形式(high speed),从而使USB总线真实成为能满意高速运用场合的规范衔接总线。在USB2.0中,每毫秒可发送8~10微帧,这比USB1.1的传输速率有了极大的进步,一起对缓存的要求也大大降低了。USB2.0向下彻底兼容,协议规则,在全速形式和低速形式下,主机操控器和hub之间也能够进行高速传输,可是hub和外设之间依然坚持原有传输形式,这样能够使设备在同享带宽时抵触最小。

2、硬件电路

本体系选用OmniVision Technologies Inc.公司的OV9620作为视频信号的收集芯片,用EZ-USB FX2作为USB操控芯片并为OV9620供给作业时钟,E2PROM运用24LC65,经过I2C总线衔接一切芯片。硬件衔接框图见图1所示。

根据OV9620 COMS数字图画传感器芯片和USB接口完结数字摄像头规划

2.1 OV9620的首要特性

OV9620是美国OmniVision公司为数字照相机和摄像机产品开发的高性能130万像素五颜六色CMOS数字图画传感器芯片。与传统的CCD传感器比较,CMOS最显着的优势是集成度高、功耗小、出产成本低,简单与其他芯片整合。该款芯片的图画总区域为6.825.39mm2,成像区域为6.665.32mm2,十分有利于产品的小型化。

该芯片支撑SXGA(12801024分辨率)和VGA(640480分辨率)两种形式和SCCB(Serial Camera Control Bus)接口,运用24MHz晶振,内置10位A/D转换器,能供给10位数字视频信号。别的该芯片还可输出像素时钟以及行、场同步信号,并能够直接与专用集成电路体系衔接,其后端体系能够经过SCCB接口来操控。可运用USB2.0操控器,在P4 1.5G以上体系中供给15fps的SXGA或30fps的VGA动态印象。该芯片选用Bayer滤光阵列把输入光信号分解成RGB三原色,像素阵列有13121036=1359232个,成像像素有12801024=1310720个。不成像像素可作为光学黑体像素用作黑值校准以补偿由光线引起的温度改变和暴光改变。

芯片中运用的SCCB接口是OmniVision公司拟定的一种用于操控图画传感器的三线接连总线(SCS、SIO1、SIO0),其间SCS用于完结片选(低电平有用),当芯片被选中后,SIO1、SIO0在功能及运用上和I2C总线兼容。

别的,OV9620还供给了一个操控信号输入端(PWDN),可用于完结掉电形式的开关。在本规划中,因为OV9620与其他芯片一起作业,因而,没有选用片选而是由PWDN 来完结操控。

2.2 EZ-USB FX2的首要特色

EZ-USB FX2(即CY7C68013)是Cypress公司为高速传输外设规划的USB2.0操控芯片。该芯片内含1个增强型8051处理器、1个串行接口引擎(SIE)、1个USB收发器、8.5kB片上RAM、4kB FIFO存储器以及1个通用可编程接口(GPIF)。

FX2选用量子FIFO处理构架,其USB接口和运用环境能够直接同享FIFO,而微操控器则可不参加数据传输但答应以FIFO或RAM办法拜访这些同享FIFO,这样,就较好地处理了USB高速形式的带宽问题。

FX2有一个I2C兼容端口,当FX2作为主操控器,SCL时钟频率为100/400kbps时,该端口兼容I2C总线。一般情况下,该端口由两个内部操控器驱动:一个在程序加载时主动读取VID/PID/DID和装备信息;另一个是芯片中的8051,一旦开端运转,8051运用芯片中的I2CTL和I2DAT寄存器操控挂接在I2C总线上的外围设备。具体来说,体系上电时,FX2会经过内部逻辑监测I2C端口,假如发现有地址为0xC0 或许是0xC2的E2PROM,便在E2PROM内部存储空间0xC0运用VID/PID/DID值或许把E2PROM的内容加载到内部RAM中。

2.3 电路原理及规划

规划中可运用I2C总线完结USB操控器与图画传感器的衔接,并选用E2PROM(24LC65)作为代码存储器,然后经过FX2的C2办法加载固件程序。体系上电复位后,处于主形式的USB操控器将经过PA1输出发动信号,并经反向后传到图画传感器的PWDN,以使处于从形式的图象传感器开端作业。PCLK供给像素时钟,HREF供给水平同步信号,VSYNC供给笔直同步信号。这两个同步信号与图画数据的时序联系如图2所示。

VSYNC会在一帧图画传输到操控器后触发INT0中止。因为数据量太大,本规划没有在INT0中止服务子程序中进行悉数的数据处理,而是设置了一个标志位,并经过标志位的状况来在主程序中进行处理,这样就防止因为数据处理时刻太长而使操控器无法呼应其它中止。

USB操控器的FIFO处于从形式。操控器的端点设置为EP2―512 四重缓存;EP6-512四重缓存,块传输形式。这样的设置能够满意体系要求。

3、接口程序规划

EZ-USB FX2供给了丰厚的中止资源,除内置8051中止资源外,FX2还为INT2和INT4供给了一个中止向量表,表中有27个 INT2(USB)中止向量和14个INT4中止向量。因而,在规划中,大部分作业都可经过中止服务子程序来完结。图3、图4分别是主程序流程和I2C INT中止服务子程序的流程图。

同EZ-USB系列的其它操控器相同,Cypress公司也为FX2供给了比较齐备的开发套件CY3681。这个套件包括带128脚CY7C68013的硬件开发板和相应的操控面板以及GPIF代码主动生成软件。因而能够十分方便地完结固件的开发。

USB设备驱动程序的规划是根据WDM(驱动程序模型)并选用分层模型来进行。运用程序经过调用Windows API函数来进行的对WIN32子体系进行WIN32调用,并经过I/O管理器发生IRP(I/O恳求包),然后传递给USB驱动程序,接着再由驱动程序履行相应的操作,并将成果返还给I/O管理器。用DriverEntry可设置整个体系的回调例程,当增加一个新设备和IRP需求发送到驱动程序时,经过内核可调用这些例程。下面是DriverEntry例程的扼要内容:

DriverObject->DriverExtension->AddDevice=VcameraAddDevice;

DriverObject->DriverUnload=VcameraUnload;

DriverObject->MajorFunction[IRP_MJ_CREATE]= VcameraCreat;

DriverObject->MajorFunction[IRP_MJ_CLOSE]= VcameraClose?

DriverObject->MajorFunction[IRP_MJ_READ]=VcameraRead?

DriverObject->MajorFunction[IRP_MJ_WRITE]=VcameraWrite?

……

实际上,USB客户驱动程序中包括很多的例程,也对Windows DDK东西下开发USB客户驱动程序的办法和进程作了具体的介绍。

4、小结

现在,现已开宣布样品,并且在一些运用程序上进行过测验,获得了很好的作用,其分辨率高达12801024。

责任编辑:gt

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/fangan/fpga/86300.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部