基于FPGA和EPP的圖像傳感器高速數(shù)據(jù)采集系統(tǒng)
發(fā)布時間:2008/5/27 0:00:00 訪問次數(shù):755
    
    
    來源:電子設計應用 作者:郝迎吉 劉青 涂凌志 徐尚龍
    
    引言
    
    usb、串口、并口是pc機和外設進行通訊的常用接口,但對于數(shù)據(jù)量大的圖像來說,若利用串行rs-232協(xié)議進行數(shù)據(jù)采集,速度不能達到圖像數(shù)據(jù)采集所需的要求;而用usb進行數(shù)據(jù)采集,雖能滿足所需速度,但要求外設必須支持usb協(xié)議,而usb協(xié)議與常用工程軟件的接口還不普及,給使用帶來困難。有些用戶為了利用標準并行口(spp)進行數(shù)據(jù)采集,但spp協(xié)議的150kb/s傳輸率對于圖像數(shù)據(jù)采集,同樣顯得太低。因此,為了采集數(shù)據(jù)量大的圖像數(shù)據(jù),本文采用了具有較高傳輸速率的增強型并行口協(xié)議(epp)和fpga,實現(xiàn)對ov7620cmos圖像傳感器進行高速數(shù)據(jù)采集,它最高速率可以達到2mb/s。
    
    硬件電路方案
    
    圖1為基于fpga和epp技術對ov7620cmos圖像傳感器的高速數(shù)據(jù)采集系統(tǒng)原理框圖,它主要由三部分組成:ov7620的參數(shù)配置電路、圖像采樣電路以及pc讀取數(shù)據(jù)電路。
    
    ov7620的參數(shù)配置電路
    
    系統(tǒng)在上電后需要對cmos采像芯片進行初始化,以確定采集圖像的開窗位置、窗口大小和彩色或黑白工作模式等。這些參數(shù)的配置是通過ov7620芯片上提供的sccb接口進行的。
    
    sccb接口是采用一種簡單、雙向二線制的同步串行總線i2c總線,接口引線有scl和sda。由于89c2051沒有標準的i2c總線接口,可以用軟件程序來模擬i2c總線,ov7620開窗位置和開窗大小、黑白和彩色模式以及掃描方式均可通過相應寄存器來設置。這些寄存器都是可讀/寫的,具體操作方法如下:可以采用頁寫的方式,即在寫寄存器過程中要先發(fā)送寫允許指令ox42,然后發(fā)送寫數(shù)據(jù)的目的寄存器地址,接著為要寫的數(shù)據(jù)。寫完一個寄存器后,cmos會自動把寄存器地址加一,程序可繼續(xù)向下寫,而不需要再次輸入地址。讀寄存器是同樣過程,只不過指令改為ox43。
    
    i2c總線功能的實現(xiàn)完全是依靠scl、sda線上電平的狀態(tài)以及兩者之間的相互配合實現(xiàn)的。i2c總線規(guī)約中規(guī)定的條件如下:
    
    啟動時序:scl為高電平時, sda出現(xiàn)一個下降沿;
    傳輸時序:在啟動條件滿足后,sda為穩(wěn)定數(shù)據(jù)狀態(tài), scl產生一個正脈沖,將傳送一位數(shù)據(jù);
    應答時序: 在從機接收到一個完整的數(shù)據(jù)字節(jié)時,在主機釋放sda的情況下,主機給scl輸出一個正的時鐘脈沖,從機將sda拉低,以表應答;
    停止條件:當scl為高電平時,sda出現(xiàn)一個上升沿,該條件可以解決多機競爭的問題,即在兩個器件對話時,第三者插入會終止前者的數(shù)據(jù)通信,其主要特點在于各器件每一位都在判斷總線的狀態(tài)。
    
    i2c總線的啟動和停止條件如圖2所示。
    
    圖像采樣電路
    
    在隧道的平行度、無損檢測、垂直度測量儀中常選用的圖像分辨率為320×320,用黑白模式就能基本滿足圖像識別對圖像特征點的要求。 因此本系統(tǒng)采樣的參數(shù)是在圖像分辨率取為320×320、黑白模式、zv圖像格式中進行的。
    
    cmos圖像芯片zv端口格式的輸出波形如圖3所示。圖中vsync是垂直場同步信號,其下降沿表示一幀圖像的開始(cmos是按列采集圖像的),href是水平場同步信號,其上升沿表示一列圖像數(shù)據(jù)的開始。pclk是輸出數(shù)據(jù)同步信號,y是圖像灰度信息。下面介紹fpga如何對圖像傳感器的數(shù)據(jù)采樣。
    
    為了進行速度匹配,fpga和pc之間有兩根握手信號: ready和ack。它們來協(xié)調fpga對同一個數(shù)據(jù)存儲芯片的讀寫過程。ready是fpga通知pc圖像數(shù)據(jù)已經讀完信號;ack是pc通知fpga數(shù)據(jù)已讀完信號,兩者都是低電平有效。
    
    在數(shù)據(jù)采樣期間,將ready拉高,表示正在采集,這時fpga根據(jù)ov7620的vsync、href、pclk產生圖像mem_wr(寫信號)和address(地址),讀取ov7620的數(shù)據(jù)到高速緩存,到下一個vsync信號時,表示一幀數(shù)據(jù)已經采完,接著向pc機發(fā)送申請ready信號,表示圖像采集完成,如果pc不
    
    
    來源:電子設計應用 作者:郝迎吉 劉青 涂凌志 徐尚龍
    
    引言
    
    usb、串口、并口是pc機和外設進行通訊的常用接口,但對于數(shù)據(jù)量大的圖像來說,若利用串行rs-232協(xié)議進行數(shù)據(jù)采集,速度不能達到圖像數(shù)據(jù)采集所需的要求;而用usb進行數(shù)據(jù)采集,雖能滿足所需速度,但要求外設必須支持usb協(xié)議,而usb協(xié)議與常用工程軟件的接口還不普及,給使用帶來困難。有些用戶為了利用標準并行口(spp)進行數(shù)據(jù)采集,但spp協(xié)議的150kb/s傳輸率對于圖像數(shù)據(jù)采集,同樣顯得太低。因此,為了采集數(shù)據(jù)量大的圖像數(shù)據(jù),本文采用了具有較高傳輸速率的增強型并行口協(xié)議(epp)和fpga,實現(xiàn)對ov7620cmos圖像傳感器進行高速數(shù)據(jù)采集,它最高速率可以達到2mb/s。
    
    硬件電路方案
    
    圖1為基于fpga和epp技術對ov7620cmos圖像傳感器的高速數(shù)據(jù)采集系統(tǒng)原理框圖,它主要由三部分組成:ov7620的參數(shù)配置電路、圖像采樣電路以及pc讀取數(shù)據(jù)電路。
    
    ov7620的參數(shù)配置電路
    
    系統(tǒng)在上電后需要對cmos采像芯片進行初始化,以確定采集圖像的開窗位置、窗口大小和彩色或黑白工作模式等。這些參數(shù)的配置是通過ov7620芯片上提供的sccb接口進行的。
    
    sccb接口是采用一種簡單、雙向二線制的同步串行總線i2c總線,接口引線有scl和sda。由于89c2051沒有標準的i2c總線接口,可以用軟件程序來模擬i2c總線,ov7620開窗位置和開窗大小、黑白和彩色模式以及掃描方式均可通過相應寄存器來設置。這些寄存器都是可讀/寫的,具體操作方法如下:可以采用頁寫的方式,即在寫寄存器過程中要先發(fā)送寫允許指令ox42,然后發(fā)送寫數(shù)據(jù)的目的寄存器地址,接著為要寫的數(shù)據(jù)。寫完一個寄存器后,cmos會自動把寄存器地址加一,程序可繼續(xù)向下寫,而不需要再次輸入地址。讀寄存器是同樣過程,只不過指令改為ox43。
    
    i2c總線功能的實現(xiàn)完全是依靠scl、sda線上電平的狀態(tài)以及兩者之間的相互配合實現(xiàn)的。i2c總線規(guī)約中規(guī)定的條件如下:
    
    啟動時序:scl為高電平時, sda出現(xiàn)一個下降沿;
    傳輸時序:在啟動條件滿足后,sda為穩(wěn)定數(shù)據(jù)狀態(tài), scl產生一個正脈沖,將傳送一位數(shù)據(jù);
    應答時序: 在從機接收到一個完整的數(shù)據(jù)字節(jié)時,在主機釋放sda的情況下,主機給scl輸出一個正的時鐘脈沖,從機將sda拉低,以表應答;
    停止條件:當scl為高電平時,sda出現(xiàn)一個上升沿,該條件可以解決多機競爭的問題,即在兩個器件對話時,第三者插入會終止前者的數(shù)據(jù)通信,其主要特點在于各器件每一位都在判斷總線的狀態(tài)。
    
    i2c總線的啟動和停止條件如圖2所示。
    
    圖像采樣電路
    
    在隧道的平行度、無損檢測、垂直度測量儀中常選用的圖像分辨率為320×320,用黑白模式就能基本滿足圖像識別對圖像特征點的要求。 因此本系統(tǒng)采樣的參數(shù)是在圖像分辨率取為320×320、黑白模式、zv圖像格式中進行的。
    
    cmos圖像芯片zv端口格式的輸出波形如圖3所示。圖中vsync是垂直場同步信號,其下降沿表示一幀圖像的開始(cmos是按列采集圖像的),href是水平場同步信號,其上升沿表示一列圖像數(shù)據(jù)的開始。pclk是輸出數(shù)據(jù)同步信號,y是圖像灰度信息。下面介紹fpga如何對圖像傳感器的數(shù)據(jù)采樣。
    
    為了進行速度匹配,fpga和pc之間有兩根握手信號: ready和ack。它們來協(xié)調fpga對同一個數(shù)據(jù)存儲芯片的讀寫過程。ready是fpga通知pc圖像數(shù)據(jù)已經讀完信號;ack是pc通知fpga數(shù)據(jù)已讀完信號,兩者都是低電平有效。
    
    在數(shù)據(jù)采樣期間,將ready拉高,表示正在采集,這時fpga根據(jù)ov7620的vsync、href、pclk產生圖像mem_wr(寫信號)和address(地址),讀取ov7620的數(shù)據(jù)到高速緩存,到下一個vsync信號時,表示一幀數(shù)據(jù)已經采完,接著向pc機發(fā)送申請ready信號,表示圖像采集完成,如果pc不
熱門點擊
- OrCAD/PSpice9直流掃描分析的應用
- OrCAD/PSpice9直流掃描分析的應用
- protel99se和DXP的使用感想
- CCS噪聲模型:用于串擾噪聲分析的高精確度建
- Xtreme PCB軟件允許多位工程師同時布
- ORCAD/PSPICE
- 硬件描述語言HDL的現(xiàn)狀與發(fā)展
- ALLEGRO布線缺點之我見
- PCB LAYOUT技術大全---初學者必看
- 利用Liberty CCS建模技術實現(xiàn)更高精
推薦技術資料
- 泰克新發(fā)布的DSA830
- 泰克新發(fā)布的DSA8300在一臺儀器中同時實現(xiàn)時域和頻域分析,DS... [詳細]