crazybird

【原创】MT9P001内部PLL的启动

1
阅读(3753)

MT9P001是镁光公司生产的一款CMOS摄像头。它具有500万像素,可以通过IIC接口对摄像头的寄存器进行配置,从而实现增益、曝光时间、帧率和分辨率可调。今天要介绍的是如何启动MT9P001内部的PLL,从而实现渴望的像素时钟频率。通过查阅数据手册,内部PLL的启动由摄像头中的三个寄存器(8’h108’h118’h12)决定,如1~3所示。其中寄存器8’h10是用于启动和使用内部PLL的,而寄存器8’h118’h12是用于设置PLL倍频和分频系数的。


PLL_Control.png

图1  PLL Control

PLL_Config1.png

图2  PLL Config1

PLL_Config2.png

图3  PLL Config2


经过阅读手册,可以总结出启动内部PLL的步骤:

(1)启动内部PLL,即令寄存器8’h10的第0位为1R10[0] = 1);

(2)设置倍频系数m(R11[15:8])、分频系数n(R11[5:0])和分频系数p1(R12[4:0]),而像素时钟频率Fpclk由下面公式计算:

Fpclk = (Fextclk*m)/[(n+1)*(p1+1)]

其中,m的有效范围为16~255Fextclk为外部时钟频率(6MHz~27MHz),此外参数的配置还需满足以下条件:

2MHz < Fextclk/(n+1) < 13.5MHz

180MHz < (Fextclk*m)/(n+1) < 360MHz

(3)使用内部PLL,即令寄存器8’h10的第1位为1(R10[1]=1)。


现在根据上面步骤举个简单的例子,例如外部输入时钟为24MHz,输出像素时钟为80,则m可设为40、n设为2、p1设为3,寄存器配置步骤如下所示:

{8'h10,16'h0051}
{8'h11,16'h2802}
{8'h12,16'h0003}
{8'h10,16'h0053}