欢迎来到天天文库
浏览记录
ID:10540976
大小:55.50 KB
页数:4页
时间:2018-07-07
《嵌入式系统数字图像采集接口电路设计 》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、嵌入式系统数字图像采集接口电路设计摘要:本文介绍了两种用于嵌入式系统的数字图像采集接口方法,I/O接口和内存直接写入。在对采集速度要求不高的应用中,I/O接口方法可以简化接口电路设计,减少系统资源。对于要求实时进行图像处理的系统,直接写入内存法可以在不需要处理器干预的情况下,直接将图像数据写入系统存储区内,实现高速图像采集。关键词:嵌入式系统,图像采集,电路设计Abstract:Inthispaper,agesensorsandaprocessorforembedsystems,I/OmodeandDMemoryOS两种器件,其中CMOS器件上世纪90年代产生,近年来得到
2、了迅速发展。传感器的输出有模拟和数字两种。由于CMOS器件功耗小、使用方便,具有直接数字图像输出功能,作者在设计时选用了CMOS数字输出图像传感器件。其他方式器件的接口设计与此类似,将在讨论中说明。本文内容做如下安排:第二部分简述图像信号的特点;第三、四部分分别介绍I/O和内存直接写入两种接口设计方法;最后部分是讨论。二、图像信号介绍图1给出了采样时钟(PCLK)和输出数据(D)之间的时序关系。在读取图像数据时用PCLK锁存输出数据。除采样时钟(PCLK)和数据输出(D)外,还有水平方向的行同步信号(HSYNC))和垂直方向的场同步信号(VSYNC)。对于隔行扫描器件,还
3、有帧同步信号(FRAME)。如图2,一帧包括两场。图2中窄的矩形条是同步脉冲,同步脉冲期间数据端口输出的数据无效。PLCK存在时,图像数据端口连续不断地输出数据。由于行之间以及场之间输出数据无效,在采集图像数据必须考虑同步信号,读取有效数据才能保证图像的完整性。三、I/O接口设计对于MCU、DSP处理器,I/O是最方便的访问方式之一。以I/O方式读取图像数据不仅可以简化电路设计,而且程序也很简单。但由于读取每一个像素都要检测状态,在处理器速度低的情况下,读取图像慢。在处理器速度快或图像采集速度要求不高的应用中,I/O接口方式是一个较好的选择。1、电路原理和结构在图像传感器
4、和处理器之间,利用两个锁存器分别锁存状态和图像数据,处理器通过两个I/O端口分别读取。图3中,在采样时钟的上升沿数据锁存器保存传感器输出的图像数据,当处理器通过I/O口读取图像时,数据锁存器输出数据。其它情况下,锁存器输出处于高阻状态。处理器通过状态锁存器读取同步信号和图像就绪(Ready)指示信号。在数据锁存器保存图像数据的同时,状态锁存器产生Ready信号(从‘0’到‘1’)。处理器读取图像数据时,Ready信号自动清除(从‘1’到‘0’)。处理器读取状态时锁存器驱动总线,其他情况下输出处于高阻状态。2、图像读取流程要保证图像的完整性就必须从一场图像的第一行开始读取,
5、对于隔行扫描输出的图像则必须从一帧的第一行开始读取。读取每行图像数据时,则从该行的第一个像素开始。因此,在读取图像数据前应先判断场和行的起始位置。图4是通过I/O接口方式读取图像数据的流程。读取每个像素数据前先查询数据状态,如果数据已准备好则读取数据。3、同步信号检测为了简化电路设计,用处理器直接读取同步信号,然后找出场和行的起始位置。从图2可以看出,处理器读取同步信号时,信号可能处在同步脉冲状态(‘1’)或正常状态(‘0‘)。对于那些同步信号反向的器件,则分别为‘0’和‘1’。如果信号处于同步脉冲状态,第一次检测到的正常状态就起始位置。如果信号处于正常状态,则首先检测到
6、脉冲状态,然后用同样的方法确定起始位置。通过上述方法可以检测出场的起始位置和行起始位置。4、用VHDL设计锁存器在应用中,以上两个锁存器的功能和其他逻辑集中在一起,用可编程逻辑器件实现。下面分别为它们的VHDL表示。设DO(0-7)是锁存器输出端,DI(0-7)是锁存器输入端,DM(0-7)是中间状态,Data_R是数据读信号(低电平时有效),则数据锁存器的VHDL描述为:Process(reset,PCLK)--锁存图像数据BeginIfreset='0'thenDM<="00000000";--清除数据ElseifPCLK'eventandPCLK='1'the
7、nDM<=DI;--锁存数据Endif;Endprocess;Process(DM,Data_R)--读取图像数据BeginIfData_R='0'thenDO<=DM;--输出图像数据ElseDO<="ZZZZZZZZ"--输出高阻Endif;Endprocess;进一步设数据有效状态为Dstatus,状态读写信号为Status_R(低点平时有效),则状态锁存器的VHDL描述为:Process(reset,PCLK,Data_R)--数据有效状态控制BeginIfreset='0'orData_R='0't
此文档下载收益归作者所有