基于FPGA和USB 2.0的數(shù)字圖像采集系統(tǒng)設(shè)計(jì)
5 上位機(jī)讀取數(shù)據(jù)
應(yīng)用程序是系統(tǒng)與用戶的接口,它通過(guò)通用驅(qū)動(dòng)程序完成對(duì)外設(shè)的控制和通信。本應(yīng)用中使用VC++6.0進(jìn)行開發(fā)。EZ-USB Fx2LP開發(fā)套件提供了主機(jī)端驅(qū)動(dòng)程序(cyusb.sys),當(dāng)中提供了快捷方便的設(shè)備接口類,基于這些類,可以使用戶快速的完成系統(tǒng)相應(yīng)部分的開發(fā)。程序中使用單線程異步數(shù)據(jù)的傳輸,每次的傳輸取一幀圖像,并顯示在對(duì)話框中。
程序的部分代碼如下,在該段代碼中,首先是調(diào)用WaitForXfer函數(shù)啟動(dòng)異步傳輸,如果數(shù)據(jù)傳輸成功,則返回相應(yīng)字節(jié)的數(shù)據(jù),調(diào)用自定義的顯示函數(shù)就可以將圖像顯示在對(duì)話框當(dāng)中,否則斷開線程,結(jié)束數(shù)據(jù)傳輸。以下為部分代碼:
6 系統(tǒng)測(cè)試結(jié)果
系統(tǒng)的硬件架構(gòu)為:FPGA開發(fā)板使用北京威視銳科技有限公司的紅色颶風(fēng)Ⅱ代RC2-1C6開發(fā)板,其板上搭載Altera公司的EPIC6Q240C8芯片,配有Cypress公司的USB 2.0芯片CY7C68013A、ISSI公司的IS61LV25616AL芯片,并提供了三組擴(kuò)展接口JE1,JE2,JE3供用戶使用,圖像傳感器芯片使用OmnniVision Corporation的OV7620芯片。整個(gè)系統(tǒng)的連接關(guān)系如圖6所示,C3188板所需要的5V與3.3V電源由板上擴(kuò)展接口JE1上的電源引腳提供,OV7620與FPGA開發(fā)板的數(shù)據(jù)通過(guò)JE3,JE2相連,傳感器使用的SCCB配置線SCL,SDA通過(guò)外接1kΩ的上拉電阻至3.3V。本文引用地址:http://m.butianyuan.cn/article/161153.htm
實(shí)驗(yàn)的部分圖像如圖7,圖8所示,其中圖7大小為320×240,圖8的大小為160×240。
7 結(jié)語(yǔ)
本文以FPGA為控制核心,介紹了CMOS圖像傳感器的數(shù)據(jù)采集與存儲(chǔ),并應(yīng)用USB 2.0芯片CY7C68013A進(jìn)行數(shù)據(jù)的傳輸。FPGA為控制核心主要完成了OV7620的初始化工作,數(shù)據(jù)采集與存儲(chǔ)以及CY7C68013A芯片的時(shí)序控制;USB 2.0芯片工作在SLAVE FIFO模式下,便于圖像數(shù)據(jù)的快速傳輸。充分利用了FPGA豐富的接口資源以及USB 2.0的高速傳輸特點(diǎn)。與文獻(xiàn)相比,具有更快的傳輸速度,便于實(shí)時(shí)的監(jiān)測(cè)。整個(gè)系統(tǒng)結(jié)構(gòu)簡(jiǎn)單,便于維護(hù)擴(kuò)展;而FPGA的加入可作為并行計(jì)算的平臺(tái),對(duì)于圖像數(shù)據(jù)的實(shí)時(shí)處理具有一定的優(yōu)勢(shì)。本系統(tǒng)可應(yīng)用于如工業(yè)檢測(cè)等需要高的圖像處理速度以及實(shí)時(shí)的監(jiān)測(cè)能力,而FPGA的應(yīng)用使得它可以作為小型嵌入式系統(tǒng),USB2.0接口的使用提高了系統(tǒng)有著較好的可移植性。
評(píng)論