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