摄像头视频采集系统的设计与实现

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

摄像头视频采集系统的设计与实现徐宏亮2012.07.27系统采用AD9883a芯片将摄像头视频信号数字化;然后利用FPGA芯片进行信号处理,增加行列场有效信号;最后,采用ADV7123芯片将数字信号转为模拟信号,在本地的显示器输出。1.系统总体设计图1所示为视频采集系统框图。FPGA芯片ADV7123本地显示器(VGA信号)视频信号RGB(YUV)模拟信号Hsync,VsyncR[7:0]G[7:0]B[7:0]RGB模拟信号Hsync,VsyncPCLKPCLKR[7:0]G[7:0]B[7:0]IICHsync,Vsync,Href串口AD9883a图1VGA视频采集系统框图1)VGA输入模块。将RGB模拟信号或YUV信号及行同步信号(Hsync)、场同步信号(Vsync)输入给A/D转换模块。2)A/D转换模块。首先根据行、场同步信号确定采样的行频和场频,接着由行频和内部寄存器确定像素同步时钟,然后通过配置AD9883芯片内部的锁相环(PLL)产生同步时钟。该模块可将输入的VGA模拟信号转换为8bit×3路的数字视频信号,并通过一系列寄存器调整图像的采样效果。3)FPGA转换控制模块。一方面FPGA通过I2C总线向AD9883a的寄存器写入控制信息;另一方面根据输入的行场同步信号生成行场有效信号。内部还有colorbar,YUV2RGB,串口三个模块。4)D/A输出显示模块。该模块采用ADV7123芯片将8bit×3路RGB数字信号还原为模拟信号,并结合行、场同步信号构成VGA信号,供本地计算机显示输出。2.A/D转换模块本系统的A/D转换器采用AD9883a,该芯片专门用于采集模拟R,G,B信号,将其数字化显示或作为中间转换器件使用。该芯片具有采样精度为8bit×3路通道,最高采样率为140MSPS/s,300MB的模拟带宽,支持最高分辨率为SXGA(1280x1024),刷新率为75Hz的视频信号。基于AD9883a的电路可为高清电视提供良好的接口,或作为高性能视频设备的前端扫描转换器,它的内部结构如图3所示,主要包括A/D转换电路、时钟产生电路、同步信号产生电路、I2C总线接口四个部分。箝位箝位箝位A/D转换A/D转换A/D转换同步处理及时钟产生电源管理及串行寄存器参考RinGinBinR[7:0]G[7:0]B[7:0]REFYPASSA0SDASCLDATACKUSOUTSOGOUTVSOUTHSYNCCOASTCLAMPFILT图2AD9883的内部结构图AD9883a内部的寄存器通过I2C总线完全可编程,芯片按照寄存器设定的模式进行工作。如AD9883支持多种VGA格式,但不能自动检测实现自适应,需要通过I2C接口进行寄存器配置,指定芯片采集的视频格式。AD9883内部共25个寄存器,其中00H和14H为只读寄存器,15~18H为测试用寄存器,01H~13H为功能寄存器。本系统采用的摄像头是索尼的H700,摄入视频格式是1080i/50。根据视频格式,FPGA芯片对主要功能寄存器的配置如表1所示,具体见程序:功能寄存器配置值锁相环分频控制01HA4H02HF0H时钟产生器控制03H90H04H80H箝位控制05H50H增益和偏置控制08HC0H09H80H0aH80H0bH7EH0cH7EH0dH7EH3.FPGA设计FPGA以AD9883输出的像素时钟PCLK作为全局同步时钟,频率为74.25Mhz。3.1IIC总线master的设计I2C,即Inter-IntegratedCircuit,是一个双线双向串行总线,提供了一种设备之间的数据交换的简单而有效的方法。这种总线最适合多设备之间需要临时的短距离通信的场合。IIC是一种多向控制总线,也就是说多个芯片可以连接到同一总线结构下,同时每个芯片都可以作为实施数据传输的控制源。I2C总线上数据的传输速率有三种模式:标准模式:100kbit/s快速模式:400kbit/s高速模式:3.4Mbit/s本系统用的是标准模式。3.1.1iic总线协议通常标准的iic通信包括4部分:1)开始信号2)Slave地址3)数据传输4)结束信号SA7A6A5A4A3A2A1RWACKD7D6D5D4D3D2D1D0NACKPSCLSDA123456789MSBLSB123456789MSBLSB3.1.2IIC模块的结构IIC模块由控制单元和数据通道单元两部分组成。控制单元的状态机根据外部控制信号和数据通道的状态信号产生控制信号,组织、协调和同步数据通道单元的的操作。数据通道单元的i2cmasterbyte模块根据控制信号产生所需的SCL、SDA信号。结构框图如下:有限状态机控制单元rstn,start时钟i2c_master_byte数据通道控制信号状态信号rstn,startSCLSDA图3iic模块结构图控制单元使用一段式状态机进行定义,如图4所示。有限状态机的几个状态定义如下:`defineST_IDLE7'b000_0000;//起始状态`defineST_ADDR_W7'b000_0001;//slave地址(用于写操作)`defineST_BSADDR7'b000_0010;//基地址`defineST_WRITE7'b000_0100;//写数据到寄存器`defineST_ADDR_R7'b000_1000;//slave地址(用于读操作)`defineST_READ7'b001_0000;//从寄存器读数据`defineST_READ17'b010_0000;//读取最后一位数据`defineST_STOP7'b100_0000;//结束信号IIC模块在start信号有效后,开始向AD9883a写数据,从01H写到15H;之后进入读取模式,读取01H到15H的寄存器数据,以检查数据是否写入和AD9883a目前状态。图4IIC通信状态机i2cmasterbyte模块通过把一byte数据操作分解为8个bit操作,通过把对应命令送到Bitcommandcontroller实现。具体流程如下:IdlestateRead/WriteBitset?StartBitset?StartsignalstateStartgenerate?ReadBitset?ReadstateACKstateACKbitReadWrittenWritestateByteRead?ByteWritten?YesNoYesYesYesYesYesNoYesNoNoNoNo3.2行场有效信号hvref根据输入视频格式,产生行场有效信号。当视频输入信号时1080i时,参数配置如下:parameterROW_NUM1920//行有效数parameterCOL_NUM540//列有效数parameterhre_st159//行有效起始计数parametervre_st16//列有效起始计数parameterhtotal2640//总行数parametervtotal562//总列数3.3其他模块1.colorbar模块可以生成代替ad9883a输入的彩条信号,用于测试;2.YUV2RGB模块,当AD9883a输入为YUV信号时,可以转化为RGB信号;3.Uartctrl模块,用于将读取的AD9883a寄存器信号传输到pc机,方便调试。4.D/A输出显示设计本设计采用ADV7123作为视频转换芯片,将数字视频信号转换为VGA模拟信号,供本地计算机显示输出。ADV7123具有三路高速、10位输入的视频DA转换器,具有330Mhz的最大采样速度,与多种高精度的显示系统兼容,可充分满足本系统的转换需求。ADV7123芯片产生三路模拟输出后,结合FPGA传来的行、场同步信号完成视频的显示。5.小结通过对摄像头视频采集系统的设计,加深了对iic总线的了解,认识到了dft对设计程序调试和板级测试时解决遇到问题的重要性。另外,通过这次设计,也加强了自己的编程能力和调试经验。【参考文献】[1]AnalogDevices.AD9883A/AD9883ADatasheet[EB/OL].2007.

1 / 6
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功