基于FPGA的视频采集与显示模块设计
本文给出的视频采集和显示模块在设计时,选取分辨率为768×494像素的NTSC制式, 并选用输出像素为640×480的CCD摄像头; FPGA选取Altera CyclONeⅡ系列Ep2c35F672c36 (内含35000个逻辑单元); 主动串行配置器件为Epcs16; 可配置VGA DAC ADV7123 ( 内含3 个10 位高速DAC)及VGA输出口, 同时支持NTSC和PAL制式的视频解码器ADV7181及RCA视频输入接口。
1 ADV7181的特性及其寄存器配置
ADV7181是一款集成的视频解码器, 可支持多种格式的模拟视频信号输入, 包括CVBS,S_VIDEO 和YPrPb 分量, 并可自动检测NTSC、PAL 和SECAM。ADV7181 可输出16 位或8 位与CCIR656标准兼容的YCrCb 4:2: 2视频数据, 包括VS、HS、Blank等重要信号。由于该器件功能强大, 因此, 要正确使用这款芯片, 就必须对其内部240个寄存器进行合理配置。本系统只需设计I2C_Controller模块和I2C_AV_config模块对其中的40个寄存器进行参数配置即可。
1.1 I2C_Controller模块设计
I2C_Controller使用33个I2C时钟周期来完成1次24位数据, 其中第1个时钟周期用于初始化控制器, 第2~3个周期用于启动传输, 第4~30个周期用于传输数据(其中包括24为数据和3个ACK),最后3 个周期用于停止传输。在程序当中,SD_counter用于对传输进行计数, 并控制数据的传输。
1.2 I2C_AV_config模块设计
该模块中的每个寄存器配置需要三步。一般用mSetup_ST表示当前进行到哪一步, mI2C_GO=1表示启动I2C传输, mI2C_END=1表示I2C传输结束, mI2C_ACK=0表示应答信号有效。图1所示是该寄存器的配置状态图。
图1 寄存器配置状态图
在图1中, 复位信号一旦有效, 即表明对寄存器的配置进入到第一步, 此时8位从设备地址、8位寄存器地址和8位数据进行连接, 以组成24位传输数据; 接着启动I2C 传输, 进入第二步( mSetup_ST =1) , 此后一旦检测到传输结束(mI2C_END=1), 便对应答信号mI2C_ACK进行判断, 如果应答有效, 则进入下一步mSetup_ST=2,否则返回到mSetup_ST=0, 重新传输数据。
2 图像采集和Video_to_VGA模块设计
由ADV7181输出的itu_r65*:2:2格式的视频数据流格式如图2所示。图中, EAV和SAV为两个基准信号, 要想获得有效视频数据, 就得首先检测到SAV。操作时, 首先要对FF0000进行检测, 然后再根据XY提取F、H来判断SAV基准信号。XY一般由8位数据组成, 图3所示是其位格式表示。
图2 itu_r65*:2:2格式视频数据流
图3 XY各位表示
2.1 ITU_R656_DECODER模块设计
图3中, XY的第七位为场信号, F为0表示第一场, F为1表示第二场; XY的第六位为场消隐信号, V为0表示数据是有效信号, V为1表示数据处于场消隐阶段; XY的第五位为有效数据开始结束信号, H为0表示有效视频数据开始信号,H为1表示有效视频数据结束; 而P0、P1、P2、P3为保护比特。操作时首先要检测FF 00 00, 然后提取F、V、H等信号, 最后再根据这些信号信息对视频数据进行相应的处理。图4所示是本图像采集系统的总体框图。
相关文章
- 2021-12-25基于模糊神经网络的移动机器人沿墙导航控制设计
- 2023-02-22三级建模微型机电系统多学科优化设计法
- 2024-01-25秒表检定测量不确定度的评定
- 2024-01-19电子束吸收剂量标准液体化学剂量测量系统的研究
- 2022-08-18现场总线技术解析与其发展趋势
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。