新闻中心

EEPW首页>测试测量>设计应用> 基于USB的高清彩色CCD图像采集系统

基于USB的高清彩色CCD图像采集系统

作者: 时间:2012-06-06 来源:网络 收藏

1.3 高速2.0接口设计
图3为高清的核心传输链路,2.0高速接口。因为要求将数据高速而准确地传入PC端,故本系统采用Sla ve FIFO模式,图像不经FX2LP的CPU处理,直接通过从属端点FIFO将数据高速传入PC端。

本文引用地址://m.amcfsurvey.com/article/193781.htm

c.jpg


图3中,IFCLK为Slave FIFO的接口时钟。Slave FIFO接口时钟信号既可由内部提供,也可由外部提供。如果FX2LP设置为使用外部时钟源,则IFCLK引脚可被用来提供5~48 MHz之间的任何频率的时钟信号。当IFCLK被设置为输入时,最小频率为5 MHz。FIFOADR[1:0]引脚用来选择EP2、EP4、EP6和EP8中的一个FIFO与数据总线FD连接。FULL和EMPTY引脚分别是FIFO的满状态和空状态标志,通过配置CY7C68013A内部的相关寄存器可使得当FIFO满状态或者空状态的时候向外部控制器发送相应的标志。SLWR引脚是写FIFO控制信号,当SLWR被激活时,数据总线FD上的数据在每个时钟信号IFCLK上升沿到来时被写入FIFO。
INT1和PAUSE信号是为了协调高清图像数据正常发送而引入的额外信号。系统中图像传感器输出的模拟信号经AD9824采样后输出14 bit数字信号,但数据中不包含图像帧头信息。为使主机应用程序能够准确和完整地分离出图像数据,本系统设计方法是在EZ-FX2LP的INT1中断服务程序中为每一帧图像加入特定的帧头。在EZ-USB在往FIFO里面写入帧头的过程中,不允许CPLD继续让AD向FIFO传送数据,从而引入了PAUSE信号通知CPLD暂停传送数据的操作。
本系统采用的模拟转换器AD9824是一款14bits的高效信号处理器,而FD[15:0]是16位的数据总线,在设计过程中,我们将高位数据线接地,低14位数据线接AD9824数据并行输出数据。

2 系统软件实现
2.1 AD相关双采样
相关双采样(CDS)通过对每一个像素点输出信号采样两次来消除低频噪声的影响,它是根据CCD输出信号和噪声信号的特点而设计。图4为相关双采样时序图,图中详细的指出了相关采样的时序要求。CCD每个像元的输出周期都以复位脉冲信号开始T1,先清除前一个像素的电荷,以等待下一像素电荷的到来。此时的输出信号被嵌入复位电平,并产生复位噪声;在图中T2期间,由于复位MOSFET漏电流的影响,复位电平有微小下降,这种现象称为复位失调电压。此时的输出信号为复位电平与复位噪声、复位失调电压的叠加;在T3期间,CCD电荷进行水平转移,此时混入移位时钟干扰;T4期间的输出为复位噪声、复位失调电压和有用光敏输出信号的叠加。所以相关双采样的原理就是在T2和T4时刻对同一像素点的输出信号进行采样,然后将两次采样值相减就基本消除了复位噪声的干扰,得到信号电平的实际有效幅值。本系统选用的模数转换器AD9824内部具有相关双采样电路,系统实现过程中就是EPM3128产生如图4所示的SHP、SHP、DATACLK采样信号,即可完成相关双采样逻辑,很大程度降低了图像数据中包含的噪声信号。

d.jpg


2.2 USB固件程序设计
在USB接口设计中,USB固件编程是整个设计任务的核心。USB固件程序用于完成USB设备的识别、重列举、设备请求、USB协议处理、外部硬件的功能、负责与USB主机之间的数据通信等。固件的设计就是使在USB总线上的传输能获得最大的有效的数据传输速度。
设备上电之后,就会按照如下的步骤执行固件:
1)初始化架构全局变量;
2)调用TD_Init()初始化FX2LP芯片,调用用户自定义的初始化函数,返回后USB设置为未配置状态,并打开中断;
3)在紧接着的1秒内,重新枚举USB设备,直到收到SETUP封包;
4)检查设备请求,有请求则执行相应的功能,有的需要跳转到相应函数;
5)检查总线挂起事件,没有挂起事件则执行9);
6)调用TD_Suspend(),返回失败代码则执行9);
7)挂起处理器;
8)检查重新开始事件,事件发生则调用TD_Resume(),否则执行7);
9)调用TD_Poll,函数返回到4)并执行。



评论


相关推荐

技术专区

关闭