你的位置:首頁(yè) > 測試測量 > 正文

基于嵌入式系統 USB接口的虛擬示波器的開(kāi)發(fā)與實(shí)現

發(fā)布時(shí)間:2016-03-10 責任編輯:wenwei

【導讀】針對傳統示波器不便攜帶,傳統虛擬儀器不具有即插即用、熱插拔等功能的情況,提出了基于嵌入式系統USB接口的虛擬示波器的設計方案和具體實(shí)現方法。以單片機和USB芯片為核心構建虛擬示波器系統體系,應用嵌入式技術(shù)把示波器的硬件集成在嵌入式電路板上,將A/D轉換、D/A轉換,以及數字濾波和邏輯控制處理等外置于上位PC機,通過(guò)控制傳輸和數據報告完成數據通信和監控顯示的功能。實(shí)驗表明,設計的虛擬儀器具有智能化和良好的系統擴展性,是未來(lái)虛擬儀器發(fā)展的方向。
 
虛擬示波器是將計算機強大的計算處理能力和一般硬件儀器的信號采集和控制能力結合在一起,從而實(shí)現一般示波器所不能實(shí)現的功能和友好的界面,彌補了傳統示波器功能單一、體積龐大、攜帶不便、價(jià)格昂貴的不足。隨著(zhù)計算機技術(shù)的發(fā)展 ,對虛擬儀器的智能化和小型化的要求越來(lái)越高。嵌入式系統的發(fā)展使得基于嵌入式微處理器和實(shí)時(shí)操作系統的嵌入式虛擬儀器能夠滿(mǎn)足惡劣工作環(huán)境下的便攜虛擬儀器的需要。同時(shí),基于USB總線(xiàn)的儀器設備克服了現有PC總線(xiàn)虛擬儀器的不足,可滿(mǎn)足自動(dòng)化工業(yè)測量的要求,特別適合現場(chǎng)信號的測試。
 
常用的虛擬儀器多采用PCI或ISA插槽,然而采集卡的數量一般有限,因此在搭建系統的時(shí)候,只能指定特定的計算機或嵌入專(zhuān)門(mén)的采集卡,但有些設備根本就不支持PCI或ISA總線(xiàn),這種內置形式很容易受到PC機箱內高頻干擾的影響,降低系統的采樣精度和穩定性。如果能夠將整個(gè)系統做成外置式,不僅能夠提高系統的采樣精度和穩定性,還能增強系統的靈活性,同時(shí)還有利于系統的維護。
 
USB接口是實(shí)現虛擬儀器的一種更方便、更有效、更靈活的總線(xiàn)通訊式。USB總線(xiàn)是新一代總線(xiàn)技術(shù),使PC機配置新的硬件設備不用在打開(kāi)機蓋,且支持熱插拔技術(shù),給使用者以極大的方便。USB總線(xiàn)具有傳輸速率高、支持異步和等時(shí)傳輸特點(diǎn),并且可同時(shí)掛接127個(gè)獨立的USB設備,適合于外登式中高速、高精度采樣系統。USB技術(shù)是非贏(yíng)利性的規范,已得到了廣泛工業(yè)支持。
 
1 系統整體設計
 
嵌入式處理器是由C8051F020單片機和USB總線(xiàn)芯片CH375組成。C8051F020單片機作為系統的CPU擔任著(zhù)邏輯控制、數據采集和存儲管理的工作,接收測試分析對象上傳的數據源信號,通過(guò)信號調理模塊和模數轉換模塊等控制功能實(shí)時(shí)采集數據,由USB總線(xiàn)芯片CH375作為與上位機通信的接口將數據傳送給上位機監控模塊。系統結構如圖1所示。
 
基于嵌入式系統 USB接口的虛擬示波器的開(kāi)發(fā)與實(shí)現
 
C8051F系列單片機是完全集成混合信號的系統級芯片,具有與8051兼容的控制器內核,并與MCS-51指令集兼容;片內還集成了數據采集和控制系統中常用的模擬部件和其他數字外設及功能部件。C8051F單片機采用流水線(xiàn)結構,機器周期由標準的12個(gè)系統時(shí)鐘降為1個(gè)系統時(shí)鐘,處理能力大大提高,峰值性能可 達25M IPS.C8051F單片機是能真正獨立工作的片上系統(SoC)。每個(gè)MCU都能有效地管理模擬外設和數字外設,可以關(guān)閉單個(gè)或全部外設節省功耗。Flash存儲器還具有片上重新編程能力,可用于非易失性數據存儲。片內JTAG調試支持觀(guān)察、修改儲存器和寄存器,支持斷點(diǎn)、單步、運行、停機命令。調試時(shí)所有的模擬和數字外設都能全功能運行。
 
C8051F最突出的改進(jìn)是引入了數字交叉開(kāi)關(guān)。這是一個(gè)大的數字開(kāi)關(guān)網(wǎng)絡(luò ),允許將內部數字系統資源分配給端口I/O 引腳。這種結構可支持所有的功能組合,可通過(guò)設置交叉開(kāi)關(guān)控制寄存器,將片內的計數器 /定時(shí)器、串行總線(xiàn)、硬件中斷、ADC轉換啟動(dòng)輸入及微控制器內部的其他數字信號配置在端口I/O引腳,這就允許用戶(hù)根據自己的特定應用選擇通用端口I/O和所需數字資源的組合。
 
USB模塊CH375是一個(gè)USB總線(xiàn)的通用設備接口芯片,無(wú)需編寫(xiě)驅動(dòng)程序,內置有USB通訊中的底層協(xié)議,完全滿(mǎn)足USB1.1標準。該模塊具有8位數據總線(xiàn)(D0~D7)、地址輸入(A0)、讀(RDJHJ)、寫(xiě)(WRJHJ)、片選控制線(xiàn)(CSJHJ),以及中斷輸出(INTJHJ)等功能,可以方便地掛接到單片機的數據總線(xiàn)上。當A0為低電平時(shí)選擇數據端口,單片機通過(guò)8位并口對CH375進(jìn)行讀寫(xiě)數據;當AO為高電平時(shí)選擇命令端口,可以向其寫(xiě)入命令。
 
在本地端,單片機對CH375的操作是采用命令加數據的I/O 操作方式,任何操作都是先發(fā)命令給CH375,然后執行數據輸入輸出。CH375接收到上位機發(fā)送的數據或者發(fā)送完給上位機的數據后,以中斷方式通知單片機。各通道的USB模塊CH375在計算機應用層與其本地端單片機之間提供了端對端的連接,統一采用數據加應答方式進(jìn)行通信,所有的通信都由計算機應用層發(fā)起,然后以接收到單片機的應答結束。
 
2 嵌入式軟件設計
 
嵌入式軟件設計采用模塊化的程序設計思想,主要由4個(gè)部分組成,即A/D轉換子程序、數據采集及存儲子程序、USB通信子程序,以及D/A轉換子程序,并由嵌入式處理器進(jìn)行統一調配。這里主要介紹數據采集和USB通信子程序。
 
該虛擬示波器中使用了2種傳輸方式:控制傳輸和數據報告??刂苽鬏斢脕?lái)實(shí)現位于計算機上的USB總線(xiàn)驅動(dòng)程序及編寫(xiě)的功能驅動(dòng)程序對設備的各種控制操作,根據計算機端軟件設定的增益、時(shí)基、觸發(fā)等參數控制數據采集模塊,需要計算機向單片機發(fā)送少量的控制信息。
 
數據報告用來(lái)完成將采集數據從設備傳送到計算機的功能,這屬于大批量數據的傳輸。如圖2所示,當USB控制器從USB總線(xiàn)檢測到計算機啟動(dòng)的某一傳輸請求時(shí),USB控制器通過(guò)中斷方式將此請求通知單片機。單片機通過(guò)訪(fǎng)問(wèn)USB控制器的狀態(tài)寄存器和數據寄存器獲得與此次傳輸有關(guān)的各種參數,并根據具體傳輸參數,對USB控制器的控制寄存器和數據寄存器進(jìn)行相應的操作。如果是上傳(上傳緩沖區的數據被計算機成功讀取),則釋放當前USB緩沖區,然后退出中斷程序;如果是下傳(下傳緩沖區成功接收到計算機發(fā)送的數據 ),則從數據下傳緩沖區讀取數據塊。在分析接收到的數據塊時(shí),如果是數據請求的上傳命令,則準備應答數據(采集數據 );單片機將采集數據寫(xiě)入數據上傳緩沖區中,然后退出中斷程序,完成計算機的傳輸請求。該通訊方式具有數據自動(dòng)同步、程序設計簡(jiǎn)單、交互性和可控性較好等優(yōu)點(diǎn)。
 
基于嵌入式系統 USB接口的虛擬示波器的開(kāi)發(fā)與實(shí)現
 
3 上位機軟件設計
 
上位機軟件主要功能是模擬一個(gè)示波器的界面,實(shí)現數據的顯示及滿(mǎn)足不同需要的分析功能,同時(shí)完成對數據采集硬件的參數設定。在這個(gè)設計中已實(shí)現了基本的功能,如圖3所示,包括波形顯示、數據保存、量程的自動(dòng)轉換和數據的深度分析(波形測量和頻譜分析),甚至能結合嵌入式系統硬件實(shí)現波形發(fā)生器等功能。
 
基于嵌入式系統 USB接口的虛擬示波器的開(kāi)發(fā)與實(shí)現
 
上位PC機的人機界面是虛擬示波器與用戶(hù)的接口,直接關(guān)系到系統的可用性和方便性。人機界面程序主要是使用戶(hù)能夠方便地控制整個(gè)虛擬示波器的工作,并通過(guò)數據分析,使用戶(hù)能夠方便地選擇通道,采集頻率、增益等。上位機的人機界面采用VC++語(yǔ)言開(kāi)發(fā),在軟件中充分利用了類(lèi)功能,將USB設備的啟動(dòng)函數、停止函數、數據讀取函數等各個(gè)函數全部整合到動(dòng)態(tài)鏈接庫USB.DLL中。將CH375芯片的驅動(dòng)程序、動(dòng)態(tài)鏈接庫拷貝到上位機中,利用CH375動(dòng)態(tài)鏈接庫DLL提供的API函數(設備管理API、數據傳輸API、中斷查詢(xún)API和直接控制API)對其進(jìn)行操作,數據傳輸API是最重要最常用的一組函數,它提供了多種數據傳輸模式。
 
中斷查詢(xún)API一般用于USB設備使用到中斷傳輸的場(chǎng)合。直接控制API是用于CH375直接輸入輸出信號,由設置、輸入和輸出3部分組成。這樣不但使軟件程序結構清晰,方便閱讀,而且在需要時(shí)可以方便快捷地升級人機界面,無(wú)需大的改動(dòng)。使用動(dòng)態(tài)鏈接庫后,當其他應用軟件要使用該USB設備時(shí),也可方便聲明函數,從而有效地控制USB設備工作,因此,該USB設備可以方便地用于其他場(chǎng)合,實(shí)現其他的功能。軟件充分利用了計算機強大的處理能力,可在控制USB設備的同時(shí)對16個(gè)信號進(jìn)行采集和顯示,并可根據用戶(hù)的需要測出不同信號的頻率、幅值、有效值等參數。軟件波形觀(guān)測界面如圖4所示。
 
基于嵌入式系統 USB接口的虛擬示波器的開(kāi)發(fā)與實(shí)現
 
4 結束語(yǔ)
 
根據嵌入式系統USB接口的虛擬示波器的硬件和軟件設計方案,實(shí)現了該虛擬示波器數據傳輸、算法控制、顯示調試等基本功能。實(shí)踐表明,該系統性能良好,功能強大,體積小巧,使用簡(jiǎn)便,價(jià)格低廉,適合多種場(chǎng)合應用,能為使用者建立了一個(gè)良好的使用平臺。
 
 
 
推薦閱讀:

一個(gè)工程師與電子制作的故事:數字示波器DIY設計
化繁為簡(jiǎn),結合實(shí)際解析示波器的原理及基本組成
示波器的分類(lèi)簡(jiǎn)介都在這里,趕緊收藏吧!
基于單片機的通用示波器存儲功能擴展設計
這就是無(wú)人機的痛點(diǎn) 就算技術(shù)再好也很難普及



 
要采購示波器么,點(diǎn)這里了解一下價(jià)格!
特別推薦
技術(shù)文章更多>>
技術(shù)白皮書(shū)下載更多>>
熱門(mén)搜索
?

關(guān)閉

?

關(guān)閉

久久无码人妻精品一区二区三区_精品少妇人妻av无码中文字幕_98精品国产高清在线看入口_92精品国产自产在线观看481页