您现在的位置: 范文先生网 >> 理工论文 >> 电子通信论文 >> 正文

一种数码相机成像和视频处理前端的设计

时间:2007-1-20栏目:电子通信论文

考虑到TMS320DSCX的CCD控制器只能接收12位宽的数据,在TVP5040端决定采用10位YUV 4:2:2的视频输出格式,则TMS320DSCX与TVP5040的硬件连接如图5所示。
一种数码相机成像和视频处理前端的设计
    由于TVP5040输出10位数据,所以本设计保留最高位,低两位接地或者悬空。TMS320DSC接收来自TVP5040的VD、HD以及场信号并与其保持同步。图像数据输入TMS320DSC系列DSP时,在输入点时钟的上升沿和下降沿被锁存,可通过寄存器DET设置。CCD控制器可以将数据直接存入SDRAM,也可以通过预览引擎(preview engine)Burst压缩单元将数据压缩后存入SDRAM。

TVP5040输出的写信号(WEN)用于从CCD接口直接将数据写入SDRAM,可通过EWEN位进行设置。当WEN信号为高读写位(RDWE),即位是“1”时,图像数据就载入SDRAM。

需要注意的是,TVP5040必须外接14.31818MHz的晶振才能保持正常的工作频率。

4.2 软件实现

首先需要初始化TVP5040,将微代码通过TVP5040的I2C主机端口下载到微处理器中。

Void TVP5040INIT(void)

{

resetTVP(); //首先将TVP5040复位

DELAYTIME; //延时,下载代码需要时序稳定

MicrocodeDown(); //下载微代码

RestartMicroprocessor();//下载完后,需要重新启动5040的微处理器

TimerWait(5); //微处理器重新启动需要等待5ms

PatchTVPRegister(); //内部寄存器处于默认状态,需要重新设置

}

然后需要设置CCD控制器以获取一帧图像数据并送入SDRAM。

Void main()

{

TVP5040INIT();//初始化TVP5040

SdramInit(); //初始化SDRAM

CCDCInit();//初始化CCD控制器

CCDCSetLinePerFrame();//设置每帧图像的行数

CCDCSetRawDataMode();//设置内部生成时序信号的宽度、极性、位置和方向

CCDCGetFrame();//获取一帧图像数据送入SDRAM

}
一种数码相机成像和视频处理前端的设计
    然后,就可以对SDRAM中的图像数据进行处理了,比如进行图像的压缩或增强处理等,这些超出了本文的讨论范围,就不多述了。

5 结论

上述系统在数码相机设计方案中取得了非常好的效果。实践证明,这种高性能、可编程的、基于DSP的解决方案,使得产品的开发和应用变得更加容易,为产品更快的进入市场奠定了基础。


上一页  [1] [2] [3] [4] 下一页

下页更精彩:1 2 3 4 下一页