當前位置:首頁 > 嵌入式 > 嵌入式教程
[導讀]CCD信號采集系統(tǒng)的USB接口設(shè)計

CCD(ChargeCoupledDevices)電荷耦合器件是20世紀70年代初發(fā)展起來的新型半導體集成光電器件。由于CCD器件具有諸多優(yōu)點:靈敏度高、光譜響應(yīng)寬、動態(tài)范圍大、空間自掃描等,使得近30年來,CCD器件及其應(yīng)用技術(shù)的研究取得了驚人的進展,特別是在圖像傳感和非接觸測量領(lǐng)域的發(fā)展更為迅速。目前,CCD應(yīng)用技術(shù)已成為集光學、電子學、精密機械及微計算機為一體的綜合性技術(shù),在現(xiàn)代光子學、光電檢測技術(shù)和現(xiàn)代測量技術(shù)中成果累累。隨著CCD技術(shù)的迅猛發(fā)展,針對CCD信號的采集及采集之后的信號如何與計算機進行信息通信就成為CCD應(yīng)用的一個重要問題,而能夠針對CCD每一個象素進行高速采集并實時的傳輸給計算機處理,將會大大的提高采集到的CCD信號的精度并解決實時處理的問題,這在CCD信號采集和處理領(lǐng)域都將有非常廣闊的前景。

    通用串行總線USB(UniversalSerialBus)是1995年由康柏、微軟、IBM,DEC等公司為解決傳統(tǒng)總線不足而推廣的一種新型的通信標準。USB總線接口具有較高的數(shù)據(jù)傳輸率、使用靈活、易擴展等優(yōu)點,非常適合CCD的數(shù)據(jù)采集。他有低速、全速和高速三種工作方式,即USBl.1版本中.的低速模式和全速模式,低速模式的傳輸速率為1.5Mb/s,支持一些不需要很大數(shù)據(jù)吞吐量和很高實時性的設(shè)備,如鼠標、鍵盤等;全速模式的傳輸速率可以達到12Mb/s。,可以外接速率更高的外設(shè),適合用于線陣CCD的數(shù)據(jù)采集。在USB 2.0版本中,增加了一種高速模式,其數(shù)據(jù)傳輸率最高可以達到480Mb/s,完全可以滿足高速CCD數(shù)據(jù)采集系統(tǒng)的需要。

2 接口硬件組成

    本系統(tǒng)選用高速的AD(模數(shù))轉(zhuǎn)換器,用于采集CCD信號,配以先進先出(FIFO)存儲器作為數(shù)據(jù)高速緩沖器,用于存儲AD轉(zhuǎn)換后的數(shù)據(jù),并采用具有微控制器的USB接口芯片,從而通過USB接口將采集到的數(shù)據(jù)輸入計算機。系統(tǒng)原理框圖如圖1所示。
 

    其中使用CPLD技術(shù)完成本采集系統(tǒng)的控制模塊。CPLD(可編程邏輯器件)技術(shù)已經(jīng)成為當今設(shè)計數(shù)字電路最為流行的方式,他可以將數(shù)字電路集成到一塊芯片上,大大減小了電路板的體積和可靠性,而且他的可編程性使得設(shè)計好的電路在升級和修改上變得非常簡單和方便。

    USB控制芯片選用Cypress公司EZ-USB系列的AN2131QC,片內(nèi)嵌有一個增強型的8051微控制器,并使用片內(nèi)RAM作程序和數(shù)據(jù)存儲器,使得芯片具有軟特性,允許客戶隨時不斷地設(shè)置和升級。內(nèi)部框圖如圖2所示。

    EZ-USBAN2131QC符合USB規(guī)范1.1版本,有4種傳輸方式:控制傳輸、中斷傳輸、批量傳輸和同步傳輸。其中同步傳輸又有2種方式,即普通讀寫方式和快速讀寫方式。在本系統(tǒng)中采用的是快速讀寫方式,使得芯片可以在0.5 ms內(nèi)讀寫1 kB的數(shù)據(jù)。

3 軟件設(shè)計

    軟件主要分為3部分:USB芯片的固件程序、USB設(shè)備驅(qū)動程序以及主機的用戶應(yīng)用程序。固件響應(yīng)各種來自系統(tǒng)的USB標準請求,完成各種數(shù)據(jù)的交換工作和事件處理。USB-驅(qū)動程序為USB采集系統(tǒng)提供了應(yīng)用軟件與USB設(shè)備的接口,他的開發(fā)使USB廣泛應(yīng)用于數(shù)據(jù)采集系統(tǒng)成為可能。而應(yīng)用軟件則實現(xiàn)用戶與采集系統(tǒng)的交互,完成數(shù)據(jù)采集命令,進行實時顯示。

3.1 固件程序代碼

    由USB芯片集成的加強型8051單片機來處理,當EZ-USB設(shè)備連接到USB口時,主機進行總線枚舉,根據(jù)設(shè)備ID先使用系統(tǒng)程序?qū)⒐碳螺d到芯片內(nèi)部,然后進行重枚舉,固件作為用戶的功能設(shè)備開始執(zhí)行。

    Cypress公司提供固件程序框架,來完成控制傳輸和大部分的數(shù)據(jù)傳輸工作。本采集系統(tǒng)的固件程序就是基于此固件框架開發(fā)的,使用KeilC進行編譯。程序流程圖如圖3所示。
 

    圖3中:TD_Init()為初始化全局變量;TD_Poll()為用戶功能;TD_Suspend()為響應(yīng)掛起事件;TD_Resume()為響應(yīng)外部喚醒事件。

    EZ-USB使用8051的INT2來響應(yīng)21種USB中斷,自動矢量(Autovector)機制幫助使8051內(nèi)核進入相應(yīng)的ISR(Interrupt Service Routine中斷服務(wù)例程)。在初始化函數(shù)中加入使能EZ-USB的SOF(幀起始)中斷語句,可以開始同步傳輸。每1 ms開始發(fā)生SOF中斷,標志幀的開始。在SOFISR中從外部FIFO讀取一個包長度的字節(jié)數(shù)據(jù)到端點緩沖區(qū)中。

3.2 驅(qū)動程序設(shè)計

    USB客戶驅(qū)動程序是支持即插即用功能的標準WDM(Windows Driver Model)驅(qū)動程序,這是分層的驅(qū)動程序模型,即設(shè)備驅(qū)動被分成了若干層,典型地分成:高層驅(qū)動程序、中間層驅(qū)動程序、底層驅(qū)動程序。每層驅(qū)動再把I/O請求劃分成更簡單的請求,以傳給更下層的驅(qū)動執(zhí)行。最底層的驅(qū)動程序在收到I/O請求后,通過硬件抽象層,與硬件發(fā)生作用,從而完成I/O請求工作。在這樣的架構(gòu)下,上面的驅(qū)動層就不需要對每個操作系統(tǒng)都要開發(fā)一遍了。USB客戶驅(qū)動程序接收I/O管理器發(fā)來的IRP(I/ORequestPacket),構(gòu)造URB(USBRequest Block)傳遞給主控制驅(qū)動程序接口USBDI。在USBDI的基礎(chǔ)上進行編程將大大簡化,用戶不用關(guān)心IRP的類型,而只需要在相應(yīng)的分發(fā)例程中通過構(gòu)造URB(USBRequestBlock)并將其通過USBDI發(fā)送下去就可以實現(xiàn)對USB設(shè)備的控制了。

    開發(fā)USB設(shè)備驅(qū)動程序的工具目前廣泛應(yīng)用的主要有2類:[!--empirenews.page--]

(1)Windows DDK(Device Driver Kits),DDK基于匯編語言的編程方式和內(nèi)核模式的調(diào)用,對沒有深厚的操作系統(tǒng)原理和編程水平的人員來說,任務(wù)相當艱巨。

(2)NuMega公司的Driverstudio工具開發(fā)包,其中的DriverWorks實際上實現(xiàn)了對DDK類的封裝,可以提供給用戶驅(qū)動程序的開發(fā)框架,只需用戶在相應(yīng)的代碼段中加入自己系統(tǒng)的控制代碼即可,不必了解內(nèi)核機制,大大加速了USB外設(shè)的開發(fā)速度。本系統(tǒng)就是使用DriverWorks來開發(fā)USB設(shè)備驅(qū)動程序的。生成的應(yīng)用接口函數(shù)在VC"中調(diào)用,大大降低了主機軟件的難度。

3.3 用戶應(yīng)用程序設(shè)計

    應(yīng)用程序?qū)崿F(xiàn)的功能有:啟動/關(guān)閉USB設(shè)備,設(shè)置USB數(shù)據(jù)傳輸管道/端口,采集數(shù)據(jù),顯示數(shù)據(jù)等。這里,采用VisualC++6.0作為程序的開發(fā)環(huán)境,并且充分運用了多線程的編程思想。從而實現(xiàn)同時進行數(shù)據(jù)采集與實時顯示。

    為了實現(xiàn)與驅(qū)動程序的通信,應(yīng)用程序首先創(chuàng)建一個事件和一個線程,再將事件句柄傳遞給WDM,用這一線程來等待WDM發(fā)送的事件消息,接收到事件消息后,就讀取驅(qū)動程序的數(shù)據(jù),顯示數(shù)據(jù)。

    在Windows中,Win32應(yīng)用程序調(diào)用的APl函數(shù)有5個;CreateFile(),ReadFile(),WriteFi|e(),DeviceloControl()和CloseHandle()。
應(yīng)用程序為打開一個WDM設(shè)備驅(qū)動程序,使用CreateFile()函數(shù)。他的第一個參數(shù)是一個符號鏈接名。如果用DriverWorks創(chuàng)建一個WDM驅(qū)動程序,通常會用類KUnitizedName生成一個設(shè)備符號鏈接名。這名字的后面有一個數(shù)字,一般是一個o。例如,若符號鏈接名為"USBDevice",則傳遞給CreateFile()的是"\\\\.\\USBDevice0"。

    一旦應(yīng)用程序獲得設(shè)備的有效句柄,他就能夠調(diào)用Win32函數(shù),這將產(chǎn)生對應(yīng)于此設(shè)備對象的相應(yīng)IRP,發(fā)送給驅(qū)動程序,完成相應(yīng)功能。這種關(guān)系如表1所示。
 

4 結(jié) 語

    本采集系統(tǒng)利用USB技術(shù)實現(xiàn)與計算機通信,有眾多的優(yōu)點:
①安裝方便,支持即插即用。
②供電方便,可直接由主機通過USB接口提供5V的電壓。
⑧性價比高,遠優(yōu)于并行口和串行口的CCD圖像采集系統(tǒng)。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風險,如企業(yè)系統(tǒng)復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉