基于USB的高清彩色CCD圖像采集系統(tǒng)
固件框架流程如圖5所示。本文引用地址:http://2s4d.com/article/193781.htm
由于AD9824傳送過來的每一幀圖像都是連續(xù)的,也就是不包含幀頭信息。本系統(tǒng)采取的做法是在一幀數(shù)據到來的時候,CPLD控制器會給CY7C68013A一個中斷信號。中斷服務程序所要做的工作就是清空FIFO里面的數(shù)據,并往FIFO里面寫入512個字節(jié)的幀頭(0xFF)數(shù)據。這樣做的目的是保證上位機能夠正確的識別每一幀數(shù)據。中斷服務程序流程圖如圖6所示。
2.3 上位機程序設計
本系統(tǒng)的上層應用程序使用VC++6.0軟件進行編程,采用多線程、雙緩沖區(qū)等技術實現(xiàn)動態(tài)圖像的實時顯示。
在圖像采集系統(tǒng)中,主要有3個功能模塊:圖像數(shù)據采集模塊、圖像數(shù)據處理模塊、圖像顯示模塊。如果采用單線程方法,則工作過程為:先進行數(shù)據采集,采集完成后對數(shù)據進行處理,最后將處理后的數(shù)據進行顯示。由于這3個功能模塊不能同時進行,會造成了CPU的利用率低,限制傳輸幀速率的提高,導致系統(tǒng)的整體效率大大降低。
為了提高運行效率,本應用程序設計時采用多線程并行處理的方法,將數(shù)據采集、數(shù)據處理與圖像顯示分別放在3個線程里進行。從圖7中可以很明顯看出單線程與多線程的區(qū)別。
評論