微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 硬件工程师文库 > FIFO芯片和单片机实现的图像采集系统

FIFO芯片和单片机实现的图像采集系统

时间:04-10 来源:本站整理 点击:

  在单片机应用系统中,由于图像采集速度、程序存储器和数据存储器的寻址空间的限制,要完整存储30 fps、640×480像素大小的一幅图像是相当困难的。本文运用较高性能的16位飞思卡尔单片机在超高频的情况下直接采集图像,也只能采集到每行320个像素,丢失图像,无法获得一幅完整的图像。本文通过在图像采集过程中增加FIFO芯片AL422B较好地解决了这一问题,相对于采用昂贵的DSP而言,降低了图像采集系统的成本。

  1 单目点光源测距原理

  野外作业时,需要在运动中知道前方标杆和观察点之间的距离。本文将标杆制成等间距红外点光源标杆,满足了基于单帧静态图像的小孔成像原理测距模型要求,减少了图像处理量,提高了测量的实时性、全天候性。H为各点光源标杆的实际距离;n为点光源个数,它可以通过图像处理获得;f为摄像头焦距;标尺实际像素物理距离h由摄像头标定取得。远距离测距原理示意图如图1所示,整条点光源标杆都在摄像头视野范围内。近距离测距原理示意图如图2所示,点光源标杆只有部分在摄像头范围内。通过图1,可求出前方标杆与观察点的距离D.摄像机的成像几何关系也可用小孔成像原理来近似表示:

  

  

  

  2 图像采集系统硬件设计

  根据单目视觉测距的要求,需要通过一黑白摄像头实时采集前车的点光源标杆,通过标尺上点光源所在的像素距离推算出前车距离。为了能完整地读取图像,本文增加了FIFO芯片,图像采集原理示意图如图3所示。由单片机监测摄像头的行/场信号,控制FIFO读取相应的图像;读完所有行后,关闭FIFO读取图像功能,开始由单片机从FIFO中读取图像数据,并进行相应的图像处理,根据图像处理的复杂程度,决定图像处理和图像采集的时间比。由于FIFO是先入先出,其读取数据时单片机只需通过中断使能行/场信号,绝大部分时间单片机可以用来进行图像处理。本文采取的是采集一帧图像后,单片机利用两帧图像的空闲时间和下一帧FIFO采集时间,共约3帧时间进行图像处理和控制,其结果是图像由原来的30 fps,变成10fps.尽管帧率慢了,但经过分析得知,在100 km/h情况下,滞后距离2.8 m,可以满足要求。

  

  2.1 飞思卡尔16位单片机MC9S12DG128

  本文采用飞思卡尔1 6位单片机MC9S12DG128作为主控芯片,该芯片是Freescale公司推出的S12系列微控制器中的一款增强型、汽车级的16位微控制器,片内总线时钟频率最高可达25 MHz,集成了8 KB的RAM、128KB的Flash、2 KB的EEPROM,集成度高,资源也相当丰富。

  2.2 摄像头芯片OV7670

  OV7670是OmniVision公司推出的Camerachiptm图像传感器,体积小,工作电压低。VGA图像最高达到30fps.其主要特性为:

  ◆感光阵列(共有656×488个像素,在YUV的模式中有效像素为640×480个);

  ◆高灵敏度适合低照度应用,对红外光线敏感;

  ◆标准的SCCB接口,兼容I2C总线接口;

  ◆RawRGB、RGB(GRB4:2:2,RGB565/555/444)、YUV(4:2:2)和YCbCr(4:2:2)输出格式;

  ◆支持VGA、CIF和从CIF到40×30的各种尺寸。

   2.3 FIFO芯片AL422B

  AL422B是AverLogic公司推出的一个存储容量为393 216字节×8位的FIFO存储芯片。其所有的寻址、刷新等操作都由集成在芯片内部的控制系统完成,AL422B内部功能结构框图如图4所示。

  

  AL422B主要特点是:

  ◆AL422B的存储体为3 Mb(393 21 6字节×8位);

  ◆可以存储VGA、CCIR、NTSC、PAL和HDTV等制式一帧图形的信息;

  ◆独立的读写操作,可以接受不同的I/O速率;

  ◆高速异步串行存取;

  ◆读写周期为20 ns;

  ◆存取时间为15 ns;

  ◆内部DRAM自刷新。

  3 图像采集系统程序设计

  3.1 系统实现

  要想在单片机应用系统中实现数字图像的静态存储,必须解决存储速度和存储容量两大问题。对于速度问题,需要对OV7670的数据输出时序进行分析,使其满足要求。VGA时序图如图5所示。其中PCLK为像素时钟,频率与主频一致,即27 MHz,上升沿时数据输出有效;VSYNC为场信号;

  HREF为水平参考信号,当像素在窗口有效时为高电平,否则为低电平;HSYNC为行信号;D[7:0]为8位数据输出。

  

AL422B写操作时序图如图6所示,WCK为AL422B的写入时钟,周期最大为1000 ns,最小为20 ns(对应主频50 MHz);其上升沿时数据写入,随着该时钟输入其内部,写指针自动增加。可见,AL422B的速度满足设计要求。具体操作时,由单片机的I/O口控制AL422B的写使能/WE,使其为低电平,使能写功能,数据端DI7~0在WCK上升沿时将数据写入。写完一副图像后,由单片机的

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top