基于機(jī)器視覺的嵌入式高速圖像通信系統(tǒng)設(shè)計(jì)
3.2 CPLD控制程序設(shè)計(jì)
CPLD的作用是產(chǎn)生 CCD、A/D及 DSP視頻端口的同步驅(qū)動(dòng)脈沖。每次采樣時(shí), CPLD將從 SAA7111A接收到一幀圖像數(shù)據(jù)保存到 SRAM中,此時(shí) DSP等待;采樣結(jié)束后, DSP與 CPLD進(jìn)行總線切換,分別連接到與上次不同的 SRAM上,DSP開始讀取數(shù)據(jù),CPLD開始采集數(shù)據(jù)。每當(dāng) DSP和 CPLD 都完成各自的任務(wù)時(shí),就進(jìn)行總線切換 ,交換連接的 SRAM。此過程中由 CPLD控制程序的流程如圖 2所示。本文引用地址:http://www.ex-cimer.com/article/152321.htm
3.3 USB的固件程序及驅(qū)動(dòng)程序
固件程序在該系統(tǒng)中其主要功能是實(shí)現(xiàn) USB芯片的初始化和配置;控制 USB芯片接收并處理 USB驅(qū)動(dòng)程序請求;控制芯片接收控制程序的控制指令。固件程序首先初始化所有的內(nèi)部狀態(tài)變量,調(diào)用用戶初始化函數(shù) TD-Init(),初始化 USB總線設(shè)備接口為非配置狀態(tài),并打開中斷。當(dāng)完成上面的任務(wù)后,固件程序就開始重新枚舉設(shè)備直到在端點(diǎn)收到 SETUP包為止。一旦 CY7C68013收到 SETUP包,固件程序就開始進(jìn)行任務(wù)分配。固件程序流程圖如圖 3所示。
3.4 主機(jī)應(yīng)用應(yīng)用程序
在 PC機(jī)端,用 Visual C++ 6.0編寫客戶應(yīng)用程序,應(yīng)用程序通過 USB接收原始的奇數(shù)場和偶數(shù)場圖像數(shù)據(jù),待接收完奇數(shù)場和偶數(shù)場圖像數(shù)據(jù)后,應(yīng)用程序把它們組成完整的一幀圖像,并且把該幀圖像數(shù)據(jù)存儲(chǔ)到硬盤上,然后把這幀圖像轉(zhuǎn)化成 BMP格式的圖像存儲(chǔ)在硬盤上,同時(shí)以 BMP的形式顯示圖像。
4 結(jié)論
從總體來看,該系統(tǒng)以嵌入式設(shè)備為核心平臺(tái),在此平臺(tái)上完成了機(jī)器視覺、圖像實(shí)時(shí)采集、數(shù)據(jù)傳輸 3個(gè)子系統(tǒng)的無縫連接集成開發(fā)。使得本系統(tǒng)只需較少的成本,擁有監(jiān)測終端,就能完成主動(dòng)智能監(jiān)測、用戶遠(yuǎn)程現(xiàn)場監(jiān)控等功能。此外,本系統(tǒng)可針對不同需求,在添加各類相應(yīng)的傳感器后,將可運(yùn)用到包括消防、車輛防盜以及工業(yè)控制等很多實(shí)用領(lǐng)域。
本文作者創(chuàng)新點(diǎn) :介紹了 DSP與 CPLD協(xié)同控制的高速圖像通信系統(tǒng)的設(shè)計(jì),采用高速 USB2.0作為圖像傳輸?shù)慕涌?,完成?a class="contentlabel" href="http://www.ex-cimer.com/news/listbylabel/label/機(jī)器">機(jī)器視覺、圖像實(shí)時(shí)采集、數(shù)據(jù)傳輸 3個(gè)子系統(tǒng)的無縫連接集成開發(fā)。
評論