基于I2C总线的CMOS图像传感器接口电路设计
1引言
数码相机等图像消费类电子产品产业正在飞速发展,这使得图像传感器和数码相机专用集成芯片的研制获得巨大的市场支持。目前广泛使用的数码相机图像传感器主要是以下两种:CCD和CMOS。CCD图像传感器具有技术成熟、图像噪声小等优点,但由于制作工艺复杂,与标准工艺不兼容,且需要高电压供电,芯片功耗大,目前仅在高级型数码相机市场上占有一席之地。而CMOS图像传感器采用了CMOS工艺,可以将图像采集单元和信号处理单元集成到同一块芯片上,因而具有集成度高、功耗低、价格便宜的优点,具有很好的发展前景。随着噪声消除技术的改进,目前CMOS图像传感器正由中、低档数码相机向高级型数码相机发展。
现在的CMOS图像传感器芯片大都把I2C总线的一个子集作为控制接口(如Motorola公司的MCM20027,Omnivision公司的OV9620等),因而用户可以很方便地对芯片进行编程操作。与其他串行总线相比,I2C总线以两根连线实现了全双工同步数据传送,可以极方便地构成多机系统,并进行扩展,适用于消费电子、通信电子、工业电子等领域的低速器件。I2C总线由双向数据线SDA和时钟线SCL组成川,用户使用集电极开路门以“线与”方式进行总线连接。图1为I2C总线的通信协议示意图,包括开始信号、结束信号、应答信号和数据有效等状态。当SCL持续为高电平时,SDA由‘1跳变到‘0,表示开始信号;当SCL持续为高电平时,SDA由‘0跳变到‘l,表示结束信号:在数据传输过程中,SDA在时钟高电平时有效,低电平时更换数据。开始和结束信号均由主I2C产生,通过SDA传输的数据以字节(8—bit为单位,高位在前,低位在后,在每个字节后面由接收端发送一个低电平的应答信号。
本文设计了一种基于I2C控制总线的CMOS图像传感器接口电路,能够有效控制CMOS图像传感器的指令,产生数码相机专用集成电路其他模块的同步时序,在MCU的控制下完成取景和拍照操作,并支持多种规格的CMOS图像传感器和液晶显示器。
2顶层设计
根据所设计的数码相机专用集成电路芯片的系统要求[2],CMOS图像传感器接口用来控制最高达400万像素多种规格的CMOS图像传感器,并且在MCU的控制下,能控制传感器芯片的自动/手动曝光和自动/手动白平衡及其他芯片支持的功能。该接口电路能够在取景和拍照两种模式下工作,在取景模式下,实现可编程的降采样处理,能够输出以4的倍数为基准的任意分辨率的图像,并接受多种规格的液晶显示器,取景速度达到30帧/s。
根据上述功能要求将CMOS图像传感器接口划分为三个模块:主I2C总线接口模块、寄存器文件接口和可编程降采样模块,其总体框图和输入输出端口线如图2所示。端口线主要有:①和MCU接口的连接,包括MCU_AB(地址总线),MCU_DB(数据总线),MCU_nWR(写使能),MCU_nRD(读位能),MCU—nCS(MCU操作选中信号)和MCUnINT(中断信号)②和CMOS图像传感器的连接,包括来自CMOS图像传感器的帧同步(VCLK)、行同步(HCLK)、像素同步(PCLK)、数据ADC(10位CMOS输出的数值),以及I2C总线的SDA,SCL,SCCB_E等:③和数码相机专用集成电路芯片的其他子模块相连,如VSYNC(帧同步)、HSYNC(行同步)、PSYNC(像素同步)、ADCOUT(输出图像数据)。
3模块设计
3.1寄存器文件模块
寄存器文件模块包括一个中断状态机和MCU接口。中断状态机用以控制主I2C总线模块,降采样处理模块和MCU接口的协调工作,它主要包括5个状态:
INT_DECIDE,INT_I2C_READ,INT
_MCU_READ,INT_I2C_WRITE和INT_CLEAR。状态机缺省状态为INT_DECIDE判决状态,表示状态机处于等待状态:
INT_I2C_READ表示I2C,总线正在从CMOS传感器读数据:
INT_12C_WRITE表示I2C总线正在从CMOS传感器写数据:
INT_MCU_READ表示MCU正从I2C上读数据:INT_CLEAR表示清中断。
MCU接口通过给内部寄存器读写参数,使CMOS图像传感器接口电路能够实现取景、拍照和软复位的功能:并通过I2C总线给CMOS传感器的内部参数寄存器读写参数,实现对CMOS传感器进行各种参数设置,以充分发挥CMOS传感器的性能。其中内部寄存器包括控制寄存器和降采样寄存器,降采样寄存器主要给降采样处理模块提供可编程所需要的参数。控制寄存器为低4位有效,第0位为软复位位,当系统复位或系统设置该位为l时,整个接口置于复位状态;当系统设置该位为0时,则取消复位状态变为工作状态。第1和第2位一起用来控制拍照和取景操作,当两位均为1时表示拍照状态:当第1位为1,第2位为0时表示取景状态;第3位用来表示中断位。
3.2主I2C总线接口
集成智能传感器的发展呈现出四大热点
电子自动化产业的迅速发展与进步促使传感器
- 一种基于DSP的张力、深度、速度测量系统(04-15)
- I2C总线及EEPROM的Linux驱动程序的设计(01-05)
- 基于C语言的I2C总线软件模块设计(01-09)
- 基于MSP430单片机的智能IC卡水表控制器(07-08)
- 实战经验吐血推荐:怎样在Linux环境下轻松实现基于I2C总线的EEPROM驱动程序(07-25)
- 基于FPGA的嵌入式图像采集系统设计(06-05)