人物在ARM 9平台下操作CMOS图像传感器实现数据采集并识别其中的十种类型
人物设计了一种基于S3C2410的CMOS图像传感器数据采集系统,该系统成本更为低廉、结构更为简单、设计更为新颖。该系统选用了OmniVision公司的OV7141黑白CMOS数字图像传感器,这款芯片具有640×480=307 200像素,最高可以30帧/秒的速度输出数字图像数据,并且具有高灵敏度、宽动态范围、抗开花等特点。
OV7141的主要特性参数包括图像尺寸为3.6 mm×2.7 mm,像素尺寸为5.6μm×5.6μm,信噪比>46 dB,最小照度为3.0 V/(Lux·s),暗电流30 mV/s,动态范围62 dB,电源DC 3.3 V和DC 2.5V,以及功耗40 mW(工作),30 μA(休眠)。
为了降低整个系统的成本,S3C2410提供了丰富的内部设备,如分开的指令Cache和数据Cache内带MMU、LCD支持STNTFT功能,以及NAND Flash系统引导等。该处理器还提供了三通道UART四通道DMA直接存储器存取四通道PWM定时器I/O端口RTC8通道10位A/D转换器触摸屏接口IIC-BUS接口USB主机USB设备SD主卡和MMC卡接口两通道SPI以及内部PLL时钟倍频器。
在设计中,我们需要考虑CMOS图像传感器与S3C2410之间数据输出电路接口控制电路接口以及IIC总线接口。由于每一个成像单元被单独编址,可以将其与内存一样对待,因此只需连接到S3C2410上相应位置即可。但是,由于OV7141可能会产生冲突问题,我们需要使用一个三态功能总线驱动来解决这个问题。
通过分析CMOS图像传感器工作原理,我们知道它采用逐行扫描方式,每一行结束后都会发送行同步信号,并在每个有效窗口前发送水平参考信号。在输出每一帧同步信号后,将开始下一帧数据的传输。在实现图像传感器到DRAM的数据传输时,可以利用帧同步信号作为主的一个中断输入信号,以初始化DMA,然后利用水平同步信号HREF作为外部中断输入信号,以统计每行数据输出,用输出数据同步PCLK请求一次完整信息。
最后,在实现IIC总线通信协议时,可以通过SDA双向数据线和SCL时钟线进行连接。当SCL持续高电平时,SDA由“1”跳变到“0”,表示开始;当持续高电平时,由“0”跳变到“1”,表示结束;在读写操作过程中,在时间段内以字节(8 bit)为单位进行有效状态变化。