1 功能描述 1.1 性能特点 PB-0300系列CMOS型有源像素数字图像传感器,内置模数转换8、位并行数据输出、64个内部寄存器,采用I2C总线控制,可编程控制;可以在彩色和黑白两种模式下工作。当外接24MHz时钟晶振时,可以获得30帧/s的图像输出。在上电期间,自动调入缺省参数设置,包括自动曝光功能,所以可以不编程情况下使用传感器。主要性能指标如表1。 表1 主要性能指标
| 阵列格局 |
640×487(311 680像素) VGA参考:640×480(307 200像素) |
| 像素大小和类型 | 有源光电二极管,空间分辨力:7.9μm×7.9μm |
| 帧速率/(帧/s) | 0~39 |
| 最大数据传输速度/(MB/s) | 24(在24MHz时钟下) |
| 功率/mW | 300(最大数据速度下) |
| 数字信噪比(1lux条件下) | 大于20dB(10:1)(对绿色像素,30Hz的以照明度) |
| 数字敏感度 |
红色:950bit/lux-second,绿色:650bit/lux-second, 蓝色:750bit/lux-second,(增益为10,ADC参考为+5.0V) |
| 工作电压/V | +5.0 |
| 工作电流/mA0 | 60 |
| 工作温度/℃ | -5~70 |
| 输出 | 8位彩色(单色)数字输出 |
| 快门 | 电子旋转抓拍 |
| 可编程控制项 | 窗口尺寸和位置、信号增益、曝光参数、自动曝光参数、ADC参考、帧速率、DAC偏置 |
| 引脚名称 | 工作方式 | 功 能 描 述 |
| LINE_VALID | 输出 | 行有效信号--图像数据在数据输出总线上时有效 |
| FRAME_VALID | 输出 | 帧有效信号 |
| SDATA | 输入/输出 | I2C数据通道 |
| SCLK | 输入 | I2C时钟 |
| PIX_CLOCK | 输出 | 像素时钟,下降沿有效 |
| CLOCK_OUT | 输出 | 主时钟输出 |
| CLOCK_IN | 输入 | 时钟输入,标称主时钟为24MHz |
| DOUT0~7 | 输出 | 8位并行数据输出 |
| SADDR | 输入 | 器件连线地址脚,SADDR=5V:写地址=BA,读地址=BB;SADDR=0V:写地址=92,读地址=93 |
| VREF1 | 输出 | ADC参考偏置 |
| STANDBY | 输入 | 关闭模拟偏置电路和内部时钟(省电) |
| RESET_BAR | 输入 | 复位键,低电平有效 |
*增益设置寄存器(R43,R44,R45,R46,R53)
设置输出像素的各种颜色的增益值。像素信号在模数转换前经过增益放大电路,分别对各种颜色进行处理,R43、R46分别对应蓝色和红色,R44、R45都对应绿色,R53是全局设置。一般的照明情况下(100~1000lx),增益值为1~8,编程的值是多少,对应的增益值就是多少。从R53可以读出自动曝光模式下的增益值。
*模数转换参考(ADC)控制寄存器(R25)
通过改变模数转换参考值,改变图像的数字输出,从而调节图像亮度。当图像亮度大时,增加ADC值,得到的图像将变暗;当图像较暗时,减小ADC值,得到的图像将变亮。在非自动曝光模式下,R25控制ADC的最大参考值(最小参考值为0),其典型值在24~38之间。在自动曝光模式下,ADC参考值不能改变。
*信号漂移值设置寄存器(R32)
设置信号漂移值,调节图像的亮度,可以设置正负两种值。当图像太暗时,给R32加一个正值,像素信号变大,使得图像变亮;当图像太亮时,给R32加一个负值,使图像变暗。
4 PB-0300与单片机的接口
当PB-0300复位至默认状态下时,能够自动工作,此时采用自动曝光功能,输出的图像为640×480像素,输出速率为30帧/s。也可以通过修改寄存器的值来改变传感器的工作方式和提高图像的输出质量。在MCS-51系列单片上,可以使用虚拟I2C总线软件包VIIC模拟I2C总线,对PB-0300的寄存器进行读写。接口电路如图3所示。
PB-0300采用16位寄存器,需要写入2个字节,写满之后寄存器地址自动增加。所以对连接寄存器进行写操作时,只需写入第一个寄存器的地址;进行读操作时,先对控制寄存器空写一次,以明确操作对象,然后进行读数。子程序WRITE是将默认状态下R5的值(510)修改为340(0214H),使图像输出为VGA(640×480),输出速率为25帧/s。子程序READ是以读R9、R10为例的典型程序。子程序清单如下:
VSDA EQU P1.7
VSCL EQU P1.6
SLA EQU 50H
NUMBYT EQU 51H
MTD EQU 30H
MRD EQU 40H
WRITE:MOV 30H,#05H ;寄存器R5地址
MOV 31H,#02H ;寄存器值(0214H)
MOV 32H,#14H
MOV SLA,#0BAH ;寻址并为写操作
MOV NUMBYT,#03H ;写入字节数
LCALL WRNBYT
RET
READ:MOV 30H,#09H ;寄存器的R9地址
MOV NUMBYT,#01H ;写入字节数
MOV SLA,#0BAH ;寻址并为写操作
LCALL WRNBYT
MOV SLA,#0BBH ;寻址并为读操作
MOV NUMBYT,#04H;读出字节数
LCALL RDNBYT
RET
可以利用USB接口直接读出PB-0300芯片的数据。在LINE-VALID和FRAME-VALID信号均为高电平时,按照像素时钟PIXCLK的输出读数。由于USB接口速度快,能够将PB-0300的数据实时地传送到计算机内。
PB-0300具有体积小、功耗低、接口简单的特点,而且编程操作灵活,可以不用编程在默认方式下工作,也可以通过编程来改变输出图像的质量、大小和速度等,特别适合于现场应用中。PB-0300系列目前流行使用的是PB-0330。