基于FPGA和STM32的數(shù)據(jù)采集系統(tǒng)設(shè)計_第1頁
基于FPGA和STM32的數(shù)據(jù)采集系統(tǒng)設(shè)計_第2頁
基于FPGA和STM32的數(shù)據(jù)采集系統(tǒng)設(shè)計_第3頁
基于FPGA和STM32的數(shù)據(jù)采集系統(tǒng)設(shè)計_第4頁
基于FPGA和STM32的數(shù)據(jù)采集系統(tǒng)設(shè)計_第5頁
已閱讀5頁,還剩37頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、本科畢業(yè)設(shè)計 第 42 頁 共 42 頁1 緒論1.1虛擬儀器的背景現(xiàn)在客戶對于測試的需求越來越大。隨著創(chuàng)新的步伐越來越快,希望更多具有競爭力的新產(chǎn)品更快投入市場的壓力也越來越大。消費者的期望在不斷地增高。以電子市場為例,消費者要求不同的功能可以更低的成本在一個更小的空間得到集成。近年來經(jīng)濟的低迷并沒有阻止革新的需要,但是卻要求使用更少資源。滿足這些需要是商業(yè)成功的一個因素能夠快速、一貫并且最可靠地滿足這些需要的公司一定能在競爭中占有決定性的優(yōu)勢。所有這些條件都驅(qū)使著對新的驗證、檢驗和生產(chǎn)測試技術(shù)的高要求。一個能與創(chuàng)新保持同步的測試平臺不是可有可無的,而是必需的。這個平臺必須包含具有足夠適應(yīng)能

2、力的快速測試開發(fā)工具以在整個產(chǎn)品開發(fā)流程中使用。產(chǎn)品快速上市和高效生產(chǎn)產(chǎn)品的需要要求有高吞吐量的測試技術(shù)。為了測試消費者所要求的復雜多功能產(chǎn)品需要精確的同步測量能力,而且隨著公司不斷地創(chuàng)新以提供有競爭力的產(chǎn)品,測試系統(tǒng)必須能夠進行快速調(diào)整以滿足新的測試需求。虛擬儀器是應(yīng)對這些挑戰(zhàn)的一種革新性的解決方案。它將快速軟件開發(fā)和模塊化、靈活的硬件結(jié)合在一起從而創(chuàng)建用戶定義的測試系統(tǒng)。模擬式儀器是指針式的,它基于電磁原理進行測量;數(shù)字式儀器則適應(yīng)了快速響應(yīng)和高精度的要求,將對模擬信號的測量轉(zhuǎn)化成為對數(shù)字信號的測量來顯示測量結(jié)果;智能化儀器儀表則運用了微處理器芯片,通過將程序固化在ROM中以及將測量結(jié)果儲

3、存在RAM中自動完成各種測量功能。它的功能模塊全部都是以硬件(或固化的軟件)的形式存在,相對虛擬儀器而言,無論是開發(fā)還是應(yīng)用,都缺乏靈活性。第四代虛擬示波器,它是現(xiàn)代計算機技術(shù)、通信技術(shù)和測量技術(shù)相結(jié)合的產(chǎn)物,是傳統(tǒng)儀器觀念的一次巨大變革。虛擬示波器的出現(xiàn)改變了原有的示波器的整體設(shè)計思路,用軟代替了硬件。將傳統(tǒng)儀器由硬件實現(xiàn)的數(shù)據(jù)分析與顯示功能能,改由功能強大的微型計算機來完成信號的處理和波形的顯示,利用軟件技術(shù)在屏幕上設(shè)計出方便、逼真的儀器面板,進行各種信號的處理、加工和分析,用各種不同方式(如數(shù)據(jù)、圖形、圖表等)表示測量結(jié)果,完成各種規(guī)模的測量任務(wù)。并具有存儲、再現(xiàn)、分析、處理波形等特點,

4、而且體積小,耗電少的功能。1.2 虛擬儀器的發(fā)展現(xiàn)狀虛擬儀器技術(shù)目前在國外發(fā)展很快,以美國國家儀器公司(NI公司)為代表的一批廠商已經(jīng)在市場上推出了基于虛擬儀器技術(shù)而設(shè)計的商品化儀器產(chǎn)品。在美國虛擬儀器系統(tǒng)及其圖形編程語言,已作為各大學理工科學生的一門必修課程。美國的斯福坦大學的機械工程系要求三、四年級的學生在實驗時應(yīng)用虛擬儀器進行數(shù)據(jù)采集和實驗控制。當今虛擬儀器的系統(tǒng)開發(fā)采用的總線包括傳統(tǒng)的RS232串行總線、GPIB通用接口總線、VXI總線,以及已經(jīng)被PC機廣泛采用的USB串行總線和IEEE1394總線(即Fire wire,也叫做火線)。世界各國的公司,特別是美國NI公司,為使虛擬儀器能

5、夠適應(yīng)上述各種總線的配置,開發(fā)了大量的軟件以及適應(yīng)要求的硬件(插件),可以靈活的組建不同復雜程度的虛擬儀器自動檢測系統(tǒng)。傳統(tǒng)儀器有復雜的工藝問題和知識產(chǎn)權(quán)問題,發(fā)達國家的傳統(tǒng)儀器市場已具有相當規(guī)模。而虛擬儀器是一個全新的領(lǐng)域,大力發(fā)展虛擬儀器技術(shù)可以略過傳統(tǒng)儀器的發(fā)展階段,迅速進入虛擬儀器發(fā)展階段,與國外大公司處于同一起跑線,形成跨越式發(fā)展。目前,虛擬儀器技術(shù)在中國越來越受到人們重視,研究高潮方興未艾,應(yīng)用范圍越來越廣,虛擬儀器技術(shù)必然會有突飛猛進的發(fā)展。1.3 選題目的和意義1.3.1 選題目的(1)培養(yǎng)畢業(yè)生綜合運用所學專業(yè)知識解決實際問題的能力;(2)使畢業(yè)生初步掌握開展科學研究的工作步

6、驟和基本方法;(3)培養(yǎng)畢業(yè)生正確表達技術(shù)路線和研究成果的能力(寫作和口頭表達);(4)初步培養(yǎng)畢業(yè)生探索科學技術(shù)前沿問題的興趣;(5)掌握虛擬示波器開發(fā)過程1.3.2 選題意義傳統(tǒng)示波器是由儀器廠家設(shè)定并定義好功能的一個封閉結(jié)構(gòu),它有特定的輸入輸出和儀器操作面板,具有波形顯示、參數(shù)測量等功能。當要實現(xiàn)更多的測量功能時,就要配置更多的儀器,這給用戶的使用帶來很多的不便,并且傳統(tǒng)示波器的測量精度比較低,無法滿足高精度的測量要求,而且傳統(tǒng)的示波器缺乏相應(yīng)的計算機接口,配合數(shù)據(jù)采集及數(shù)據(jù)處理比較困難。此外傳統(tǒng)示波器比較龐大,制造成本比較高,這就增加了測量系統(tǒng)的開發(fā)成本。虛擬示波器的出現(xiàn)改變了原有的示

7、波器的整體設(shè)計思路,用軟件代替了硬件。將傳統(tǒng)儀器由硬件實現(xiàn)的數(shù)據(jù)分析與顯示功能能,改由功能強大的微型計算機來完成信號的處理和波形的顯示,利用軟件技術(shù)在屏幕上設(shè)計出方便、逼真的儀器面板,進行各種信號的處理、加工和分析,用各種不同方式(如數(shù)據(jù)、圖形、圖表等)表示測量結(jié)果,完成各種規(guī)模的測量任務(wù)。并具有存儲、再現(xiàn)、分析、處理波形等特點,而且體積小,耗電少的功能。虛擬示波器攜帶方便,應(yīng)用靈活,可以根據(jù)自己的應(yīng)用重新更新儀器的功能。利用虛擬示波器所做的任何測量,都是歸結(jié)為對電壓的測量。虛擬示波器可以測量各種波形的電壓幅度,既可以測量直流電壓和正弦電壓,又可以測量脈沖或非正弦電壓的幅度。更有用的是它可以測

8、量一個脈沖電壓波形各部分的電壓幅值,如上沖量或頂部下降量等。這是其他任何電壓測量儀器都不能比擬的。虛擬示波器可以測量信號的頻率。通過采集的信號進行存儲后,利用處理器對數(shù)據(jù)提取并處理,計算出信號的頻率以及周期等。1.4 論述內(nèi)容設(shè)計一種基于FPGA和STM32的虛擬數(shù)據(jù)采集系統(tǒng),實現(xiàn)現(xiàn)場數(shù)據(jù)的采集、傳輸和存儲。數(shù)據(jù)采集和處理過程主要由三部分構(gòu)成:(1)由前級放大電路進行信號的調(diào)理,對數(shù)據(jù)衰減或放大來滿足AD轉(zhuǎn)換的要求;(2) AD轉(zhuǎn)換部分由80MHz的AD轉(zhuǎn)換芯片進行模擬到數(shù)字信號的轉(zhuǎn)換;(3)控制和數(shù)據(jù)處理部分采用兩種方案: 由FPGA控制,采用Verilog HDL語言設(shè)計FIFO緩沖數(shù)據(jù)區(qū)

9、和FIFO、AD轉(zhuǎn)換的時鐘分頻電路,通過USB芯片CH372將采集數(shù)據(jù)傳輸給上位機進行進一步處理,另外還有前級放大倍數(shù)的控制和AC/DC選擇也可以由FPGA控制,F(xiàn)PGA接受上位機傳來的指令分析判斷后輸出相應(yīng)的放大倍數(shù)控制電平和AC/DC選擇電平; 在STM32中實現(xiàn)數(shù)據(jù)處理、傳輸以及放大倍數(shù)和AC/DC的選擇,并在PC機中開發(fā)上層數(shù)據(jù)管理軟件,實現(xiàn)數(shù)據(jù)的顯示、存儲并能給單片機和FPGA發(fā)送指令。電路設(shè)計方法簡單、可靠性高,能滿足實際應(yīng)用的要求。2 系統(tǒng)方案設(shè)計2.1 虛擬示波器設(shè)計要求(1)分析虛擬示波器的國內(nèi)外發(fā)展概況與發(fā)展趨勢,并對現(xiàn)有的幾種虛擬示波器的優(yōu)缺點進行分析,確定本課題所研究系

10、統(tǒng)的技術(shù)類型,為課題的進一步研究工作奠定基礎(chǔ);(2)分析當前流行虛擬示波器方案優(yōu)缺點的基礎(chǔ)上,確定系統(tǒng)的總體設(shè)計方案,掌握虛擬示波器的原理;(3)在系統(tǒng)總體設(shè)計方案的基礎(chǔ)上,通過調(diào)研,了解目前市場上各種芯片的性能,根據(jù)實際市場供需狀況綜合考慮性能、價格等因素,選擇滿足實際系統(tǒng)需要的各種芯片,進行系統(tǒng)硬件部分的具體設(shè)計,主要包括電源模塊、前級處理模塊以及主控模塊的電路原理圖設(shè)計;(4)設(shè)計虛擬示波器單片機和FPGA的軟件。在系統(tǒng)硬件平臺的基礎(chǔ)上,進行系統(tǒng)軟件部分的設(shè)計,應(yīng)用KEIL開發(fā)工具進行單片機STM32的程序設(shè)計及優(yōu)化,應(yīng)用quartus 開發(fā)工具進行FPGA模塊的程序設(shè)計;(5)系統(tǒng)測試

11、與分析,對系統(tǒng)測試;2.2 實驗原理及設(shè)計基本思路2.2.1 工作原理虛擬示波器的出現(xiàn)改變了原有的示波器的整體設(shè)計思路,用軟代替了硬件。將傳統(tǒng)儀器由硬件實現(xiàn)的數(shù)據(jù)分析與顯示功能能,改由功能強大的微型計算機來完成信號的處理和波形的顯示,利用軟件技術(shù)在屏幕上設(shè)計出方便、逼真的儀器面板,進行各種信號的處理、加工和分析,用各種不同方式(如數(shù)據(jù)、圖形、圖表等)表示測量結(jié)果。一個典型的虛擬示波器原理框圖如圖2.1所示,它的工作過程一般分為存儲和顯示兩個階段,在存儲工作階段,模擬輸入信號先經(jīng)過適當?shù)姆糯蠡蛩p,然后經(jīng)過取樣和量化兩個過程的數(shù)字化處理,將模擬信號轉(zhuǎn)化成數(shù)字化信號,最后,數(shù)字化信號在邏輯控制電路

12、的控制下一次寫入到FIFO中,F(xiàn)IFO緩存器是用FPGA芯片采用硬件編程語言編寫異步FIFO緩存器,工作頻率比專用FIFO芯片高許多,并且性能穩(wěn)定。FIFO采用8Bit數(shù)據(jù)寬度。對于高頻信號和脈沖信號應(yīng)用FIFO存儲工作模式,低頻信號用實時工作模式。虛擬示波器對模擬量進行實時取樣。實時取樣是對一個周期內(nèi)的信號的不同點取樣,它與取樣示波器的跨周期取樣是不同的。N個取樣點得到的數(shù)字量分別存儲于地址號為OOH.0NH的N個FIFO存儲單元中,這樣,采樣點所存儲的地址信息即表示了采樣點的時間信息。在顯示時依序取出采樣離散化數(shù)據(jù),再通過數(shù)據(jù)處理,送上位機進行波形顯示。將數(shù)字存儲技術(shù)和微處理器用于取樣示波

13、器,可以構(gòu)成存儲取樣示波器。示波器的采樣頻率和滿足AD轉(zhuǎn)換要求的模擬信號的調(diào)理由上位機軟件發(fā)出指令來控制。探頭前級放大和衰減AD轉(zhuǎn)換FPGA、STM32數(shù)據(jù)處理及控制數(shù)據(jù)緩存PC機處理及顯示圖 2.1 設(shè)計總框圖2.2.2 設(shè)計基本思路采集的模擬信號從BNC接口的探頭進入,再通過模擬開關(guān)進行AC/DC和阻容衰減倍數(shù)的選擇,選擇合適的縮放比后進入跟隨放大器使前后級阻抗匹配,以至于模擬信號能無大量丟失的傳輸?shù)较乱患墘嚎剡\算放大器,進一步對模擬信號縮放調(diào)理,其輸出信號再加上電平調(diào)節(jié)電路送來的直流分量使完全的適合AD轉(zhuǎn)化電壓要求。這部分的設(shè)計很重要,它制約著示波器的最大工作帶寬,通過廣泛的挑選芯片、精

14、心的設(shè)計和實驗使示波器的帶寬達到15MHz左右。進入AD轉(zhuǎn)換器輸出數(shù)字信號,選擇8Bit數(shù)據(jù)精度,80MHz轉(zhuǎn)換速率的高速AD轉(zhuǎn)換器得到較高的測量頻率。因為采用高達80MHz轉(zhuǎn)換速率的AD轉(zhuǎn)換器,然而單片機的處理速度遠遠不如AD轉(zhuǎn)換的速度,所以對AD頻率進行控制的同時還需要緩存器對采集的數(shù)據(jù)暫時緩存配合單片機進行數(shù)據(jù)處理。由于專用分頻集成芯片和FIFO緩存搭建出來的電路頻率不夠高,抗干擾能力低,可靠性和靈活性差再加上成本的考慮,電路的性能和最高頻率不能達到需求,因此采用FPGA對時鐘進行分頻控制AD轉(zhuǎn)換的頻率和FIFO緩存的頻率,且FIFO是通過硬件編程語言在FPGA內(nèi)部燒寫的邏輯緩存器。硬件

15、描述語言編寫的代碼燒寫到FPGA芯片內(nèi)形成實實在在的邏輯電路,不僅頻率高而且抗干擾能力很強。STM32單片機進行數(shù)據(jù)處理,軟件觸發(fā)和放大倍數(shù)以及AC/DC選擇將處理好的數(shù)據(jù)傳輸給上位機顯示出波形。STM32單片機和FPGA的控制指令由上位機軟件通過操控得到,控制數(shù)據(jù)采集。2.3 單片機的選型論文的虛擬示波器由于使用FPGA設(shè)計的大容量FIFO并且FPGA的工作頻率可以做的很高,因此對單片機的性能要求不高,所需的IO端口數(shù)量也不多,一般的普通單片機就能完成所需的工作。示波器通過哪種接口向上位機傳輸數(shù)據(jù)最方便是個值得考慮的問題。由于現(xiàn)在絕大部分上位機都帶有USB接口,USB接口的發(fā)展已經(jīng)很成熟,傳

16、輸速率較高,抗干擾能力強等優(yōu)點,我選擇一款帶有USB接口的單片機,即STM32單片機,具有性能高、成本低、功耗低等優(yōu)點。STM32系列基于專為要求高性能、低成本、低功耗的嵌入式應(yīng)用專門設(shè)計的ARM Cortex.M3內(nèi)核。Cortex.M3是一個32位的核,在傳統(tǒng)的單片機領(lǐng)域中,有一些不同于通用32位CPU應(yīng)用的要求。譚軍舉例說,在工控領(lǐng)域,用戶要求具有更快的中斷速度,Cortex.M3采用了Tail.Chaining中斷技術(shù),完全基于硬件進行中斷處理,最多可減少12個時鐘周期數(shù),在實際應(yīng)用中可減少70%中斷。單片機的另外一個特點是調(diào)試工具非常便宜,不象ARM的仿真器動輒幾千上萬。針

17、對這個特點,Cortex.M3采用了新型的單線調(diào)試(Single Wire)技術(shù),專門拿出一個引腳來做調(diào)試,從而節(jié)約了大筆的調(diào)試工具費用。同時,Cortex.M3中還集成了大部分存儲器控制器,這樣工程師可以直接在MCU外連接Flash,降低了設(shè)計難度和應(yīng)用障礙。按性能分成兩個不同的系列:STM32F103“增強型”系列和STM32F101“基本型”系列。增強型系列時鐘頻率達到72MHz,是同類產(chǎn)品中性能最高的產(chǎn)品;基本型時鐘頻率為36MHz,以16位產(chǎn)品的價格得到比16位產(chǎn)品大幅提升的性能,是16位產(chǎn)品用戶的最佳選擇。兩個系列都內(nèi)置32K到128K的閃存,不同的是SRAM的最大容量和外設(shè)接口的

18、組合。時鐘頻率72MHz時,從閃存執(zhí)行代碼,STM32功耗36mA,是32位市場上功耗最低的產(chǎn)品,相當于0.5mA/MHz。此單片機有一個USB 2.0全速接口。考慮到所需IO端口的數(shù)量不多,外設(shè)功能也較少的因素,我選用了一款引腳數(shù)量較少,外設(shè)資源足夠用的STM32F103C8T6單片機。STM32F103C8T6是中等容量的STM32產(chǎn)品,它基于ARM的Cortex.M3內(nèi)核,具有64K片上閃存以及一系列豐富的外設(shè)接口。支持任意用于調(diào)試ARM芯片的調(diào)試器,例如Segger的JLink,Keil(ARM)的ULink等。如圖 2.2所示。 圖2.2 STM32F103C8T6最小系統(tǒng)板2.4

19、FPGA的選型FPGA(FieldProgrammable Gate Array),即現(xiàn)場可編程門陣列,它是在PAL、GAL、CPLD等可編程器件的基礎(chǔ)上進一步發(fā)展的產(chǎn)物。它是作為專用集成電路(ASIC)領(lǐng)域中的一種半定制電路而出現(xiàn)的,既解決了定制電路的不足,又克服了原有可編程器件門電路數(shù)有限的缺點。以硬件描述語言(Verilog或VHDL)所完成的電路設(shè)計,可以經(jīng)過簡單的綜合與布局,快速的燒錄至 FPGA 上進行測試,是現(xiàn)代 IC設(shè)計驗證的技術(shù)主流。這些可編輯元件可以被用來實現(xiàn)一些基本的邏輯門電路(比如AND、OR、XOR、NOT)或者更復雜一些的組合功能比如解碼器或數(shù)學方程式。在大多數(shù)的F

20、PGA里面,這些可編輯的元件里也包含記憶元件例如觸發(fā)器(Flipflop)或者其他更加完整的記憶塊??紤]到AD轉(zhuǎn)換器需要的最高頻率和FIFO容量的大小,我選用了ALTERA公司的性能不算高、價格合適的一款FPGA芯片,即Cyclone系列中的EP1C3144C8N。EP1C3144C8N內(nèi)核電壓1.5,IO電壓3.3 ,最高頻率402MHz, TQFP144封裝可編程陣列場。Cyclone系列FPGA芯片0.13層銅SRAM全過程,以及密度高達20060邏輯單元(字)并且高達 288Bit的RAM以及時鐘功能(像鎖相環(huán)鎖相環(huán))和專用雙數(shù)據(jù)率(DDR)DDR SDRAM接口和內(nèi)存(內(nèi)存要求快速循

21、環(huán)FCRAM),旋風設(shè)備是成本有效的解決方案的應(yīng)用程序數(shù)據(jù)的路徑旋風設(shè)備支持不同的I / O標準,包括LVDS數(shù)據(jù)速率640每秒(Mbps), 66和33MHz,32位和64 .外圍組件互連(PCI),外圍接口與支持ASSP和ASIC器件Altera公司的低成本也提供新配置設(shè)備配置串行到Cyclone芯片。如圖2.3所示。圖2.3 ALTERA公司的EP1C3T144C8N芯片2.5 信號采集處理部分的方案確定AD轉(zhuǎn)換部分需要8位的最高達到80MHz的轉(zhuǎn)換速率。AD轉(zhuǎn)換芯片輸出的數(shù)字信號高電平不能高于+3.6V,且輸出的低電平和高電平符合FPGA和單片機的正常工作標準。選用AD公司ADS831

22、型A/D轉(zhuǎn)換器,它是一款單通道、3.3V供電、80Mbit/s采樣頻率的模數(shù)轉(zhuǎn)換器芯片。此款AD轉(zhuǎn)換器的數(shù)字信號輸出電平有5V和3V兩種選擇,滿足設(shè)計的要求。對于阻抗變換,選擇ADI公司的高性能FET輸入單電壓反饋的雙路放大器AD8066芯片,構(gòu)成跟隨器來實現(xiàn)阻抗變換。AD8066具有5 V至24 V的寬電源電壓范圍,可采用單電源供電,帶寬為145 MHz,適合各種應(yīng)用。此外,這些放大器還具有軌到軌輸出,使其功能更加多樣化。成本很低,并且這些器件能提供出色的整體性能。此放大器的差分增益和相位誤差分別為0.02%和0.02°,0.1 dB平坦度為7 MHz。此外,此器件具有180 V/

23、s高壓擺率、出色的失真性能、極高的共模抑制(100 dB)和低輸入失調(diào)電壓。進一步信號調(diào)理部分選擇了ADI公司的AD603芯片。AD603是一款低噪聲、電壓控制型放大器,主要用于射頻(RF)和中頻(IF)自動增益控制(AGC)系統(tǒng)。它提供精確的引腳可選增益,90 MHz帶寬時增益范圍為.11 dB至+31 dB,9 MHz帶寬時增益范圍為+9 dB至+51 dB。用一個外部電阻便可獲得任何中間增益范圍。折合到輸入的噪聲譜密度僅為1.3 nV/Hz,采用推薦的±5 V電源時功耗為125mW。因此,非常適合本系統(tǒng)的設(shè)計指標并且容易控制放大倍數(shù)。 2.6 輸出顯示部分運用上位機進行波形顯示

24、。由于完成一個功能類似的大型應(yīng)用軟件,熟練的LabVIEW程序員所需的開發(fā)時間,大概只是熟練的C程序員所需時間的1/5左右。所以,如果項目開發(fā)時間緊張,應(yīng)該優(yōu)先考慮使用LabVIEW,以縮短開發(fā)時間。經(jīng)過搜集各類上位機軟件的資料并考慮到時間的限制,最終選擇了LabVIEW(Laboratory Virtual Instrument Engineering Workbench)。LabVIEW(Laboratory Virtual instrument Engineering Workbench)是一種圖形化的編程語言的開發(fā)環(huán)境,它廣泛地被工業(yè)界、學術(shù)界和研究實驗室所接受,視為一個標準的數(shù)據(jù)采集

25、和儀器控制軟件。LabVIEW 集成了與滿足 GPIB、VXI、RS.232和 RS.485 協(xié)議的硬件及數(shù)據(jù)采集卡通訊的全部功能。它還內(nèi)置了便于應(yīng)用TCP/IP、ActiveX等軟件標準的庫函數(shù)。這是一個功能強大且靈活的軟件。利用它可以方便地建立自己的虛擬儀器,其圖形化的界面使得編程及使用過程都生動有趣。LabVIEW1 提供很多外觀與傳統(tǒng)儀器(如示波器、萬用表)類似的控件,可用來方便地創(chuàng)建用戶界面。用戶界面在 LabVIEW 中被稱為前面板。使用圖標和連線,可以通過編程對前面板上的對象進行控制。這就是圖形化源代碼,又稱G代碼。LabVIEW 的圖形化源代碼在某種程度上類似于流程圖,因此又被

26、稱作程序框圖代碼。2.7 系統(tǒng)電源本課題的電源需要提供四種電壓:+5V,.5V,+3.3V,+1.5V,還需要較大的功率輸出。+5V和.5V電源為運算放大器和模擬開關(guān)提供電壓和電流,電流要求大概300mA左右。+3.3V電源為FPGA和單片機供電,所需電流大概300mA左右。+1.5V電源為FPGA提供電壓和所需電流。因此,經(jīng)過查詢資料,最終選擇了AMS1117系列的穩(wěn)壓芯片和小功率極性反轉(zhuǎn)電源轉(zhuǎn)換器ICL7660。AMS1117系列穩(wěn)壓器有多種固定電壓版,設(shè)計用于提供1A輸出電流且工作壓差可低至1V。在最大輸出電流時,AMS1117器件的壓差保證最大不超過1.3V,并隨負載電流的減小而逐漸降

27、低。1.5V, 1.8V, 2.5V, 2.85V, 3.3V 和5.0V 輸出電流1A 工作壓差低至1V 線荷載調(diào)節(jié):0.2% Max。負載調(diào)節(jié):0.4% Max。可選SOT.223,TO.252和SO.8封裝。它的初始誤差 (%) ±1.5 壓差 (V) 1.3。 ICL7660的靜態(tài)電流典型值為170A,輸入電壓范圍為1.5.10V,(Intersil公司ICL7660A輸入電壓范圍為1.5.12)工作頻率為10 kHz只需外接10 kHz的小體積電容,只需外接10F的小體積電容效率高達98合輸出功率可達700mW(以DIP封裝為例),符合輸出100mA的要

28、求。選用封裝類型 SOT.223的AMS1117.5.0,AMS1117.3.3,AMS1117.1.5。由于ICL7660的最大輸出電流100mA,設(shè)計要求最大電流在300mA左右,因此,選用三片ICL7660并聯(lián)提供.5V電壓。 電源部分電路如圖2.4。圖2.4 電源電路圖3 方案設(shè)計的具體實現(xiàn)根據(jù)為滿足工程測量中使用便攜并且成本低廉的要求,設(shè)計出一款高性能、高采樣速率、帶寬很寬的單通道虛擬示波器。硬件方面做了兩種方案完成此設(shè)計:一種是STM32用作控制器、數(shù)據(jù)及命令收發(fā)器,F(xiàn)PGA只負責時鐘分頻和數(shù)據(jù)緩存;另一種是FPGA既作控制器,也負責時鐘的分頻和數(shù)據(jù)的緩存,同時與USB芯片CH37

29、2實現(xiàn)數(shù)據(jù)及命令的收發(fā)。3.1 數(shù)據(jù)采集與信號處理電路本部分的電路設(shè)計如圖3.1所示。 圖3.1 數(shù)據(jù)采集與信號處理電路 3.1.1 衰減電路、AC/DC選擇及阻抗匹配電路本系統(tǒng)的測量電壓的范圍可達到±95V,采用示波器探頭和電路板上分壓的方法將輸入信號先進行2:1或19:1衰減,衰減電路要求輸入阻抗高,同時在示波器的整個通頻帶內(nèi)衰減的分壓比均勻不變。要達到這個要求,僅簡單的電阻分壓是達不到目的的。因為在下一級輸入及引線都存在分布電容,這個分布電容的存在對于被測信號的高頻分量有嚴重的衰減,會造成信號的高頻分量的失真,因此,必須使用阻容補償分壓電路,然后再通過后續(xù)電路處理以滿足A/D轉(zhuǎn)

30、換器的輸入電壓范圍要求。阻容分壓電路:Cw1、Cw2為補償電容,對于衰減倍數(shù)K為2:1時,調(diào)節(jié)Cw1、Cw2,當滿足R18Cw1=(Cw2/C64)(R25+R21),此時滿足: K = = 。衰減倍數(shù)(Am)的計算:當K選擇為2:1時,有K = ;當K選擇為19:1時,有K = 。AC/DC電路通過電阻和電容串聯(lián)組成AC通路。AC/DC選擇和衰減倍數(shù)的選擇用模擬開關(guān)CD4053實現(xiàn)。CD4053/CC4053是三2通道數(shù)字控制模擬開關(guān),有三個獨立的數(shù)字控制輸入端A、B、C和INH輸入,具有低導通阻抗和低的截止漏電流。幅值為4.520V的數(shù)字信號可控制峰.峰值至20V的數(shù)字信號。例如若VDD+

31、5,VSS0,VEE.13.5V,則05V的數(shù)字信號可控制.13.54.5V的模擬信號。這些開關(guān)電路在整個VDD.VSS和VDDVEE電源范圍內(nèi)具有極低的靜態(tài)功耗,與控制信號的邏輯狀態(tài)無關(guān)。通道選擇輸入端決定了哪個通道被連接。當INH輸入端“1”時,所有通道截止??刂戚斎霝楦唠娖綍r,“0”通道被選,反之,“1”通道被選。電源電壓為5V芯片且溫度為25.85時的最大模擬信號輸入到輸出的延時時間是15ns左右,通道選擇到模擬輸出信號的最大延時時間是93ns左右。此部分的電路如圖3.2所示。圖3.2 衰減電路、AC/DC選擇及阻抗匹配電路被測信號通過通用探頭和分壓器得到的輸出信號,由于輸出阻抗較高,

32、需要經(jīng)過阻抗變換成為低的輸出阻抗,以保持信號的完整性。同時,對于一個系統(tǒng)來講,過載是不可避免的,在過載情況下,如果沒有保護,器件很容易損壞。因此,系統(tǒng)中設(shè)計了由二極管和電阻構(gòu)成的過載保護電路,將輸入信號限制在±4.8V的范圍之間。輸入保護及阻抗變換電路如圖3.3所示。 圖3.3 輸入保護及阻抗變換電路3.1.2 增益調(diào)節(jié)電路經(jīng)過阻抗變換的信號,還要通過增益調(diào)節(jié),增益調(diào)節(jié)芯片選用的是一款電壓控制放大倍數(shù)的高性能AD603芯片。增益調(diào)節(jié)電路包括放大電路、直流分量調(diào)節(jié)電路和直流分量控制增益倍數(shù)的電路。在能使輸入到A/D轉(zhuǎn)換器的電壓滿足A/D的輸入電壓要求,采用模擬開關(guān)和寬帶精密放大器配合,

33、由模擬開關(guān)選通不同的接入電阻值,從而實現(xiàn)不同的放大倍數(shù),達到程控放大的目的。增益調(diào)節(jié)電路如圖3.4所示。圖3.4 增益調(diào)節(jié)電路增益調(diào)節(jié)AD603電路的分析:2腳為差分電壓參考固定端,即輸入電壓為固定值U2,U2 = * Vcc 。1腳為控制放大倍數(shù)電壓端,即1腳的輸入電壓是可變電壓U1,由PWM輸出電壓控制。增益放大倍數(shù)由U3 = U1.U2 決定。設(shè)計AD603的增益,當7腳VOUT和5腳FDBK兩管腳的連接不同時,其放大器的增益范圍也不一樣??稍O(shè)置位三種形式。 模式一:將7腳VOUT與5腳FDBK短路,即為寬頻帶模式(90MHz寬頻帶),AD603的增益設(shè)置為.11.07dB+3

34、1.07dB. 模式二:7腳VOUT與5腳FDBK之間外接一個電阻REXT,F(xiàn)DBK與COMN端之間接一個5.6uF的電容頻率補償。根據(jù)放大器的增益關(guān)系式,選取合適的REXT,可獲得所需要的模式一與模式三之間的增益值。當REXT=2.15千歐時,增益范圍為.1+41dB。 模式三:7腳VOUT與5腳FDBK之間開路,F(xiàn)DBK對COMN連接一個18uF的電容用于擴展頻率響應(yīng),該模式為高增益模式,其增益范圍為+8.92+51.07dB,帶寬為9MHz. 在以上三種模式中,增益G(dB)與控制電壓U3的關(guān)系。當U3在.500mV+500mV范圍內(nèi)以40dB/V(既25m

35、V/dB)進行線性增益控制,增益G(dB)與控制電壓U3之間的關(guān)系為:GdB=40*U3+Goi(i=1,2,3),其中VG=VGPOS.VGNEG(單位為伏特),Goi分別為三種不同模式的增益常量:GO1=10dB,GO2=1030dB(由REXT決定,當REXT=2.15千歐時,GO2=20dB),GO3=30dB。 當U3<.500mV或U3>+500mV時,增益(dB)與控制電壓VG之間不滿足線性關(guān)系,當U3=.526mV時,Gmin(dB)=U3.42.14;U3=+526mV時,Gmax(dB)=GF。根據(jù)設(shè)計要求,論文采用的是模式一,即寬頻帶模式,增益設(shè)置為

36、.11.07dB+31.07dB。增益與控制電壓U3的關(guān)系為GdB=40*U3+10。3.1.3 阻抗匹配、直流調(diào)節(jié)及增益調(diào)節(jié)控制電路增益倍數(shù)調(diào)節(jié)和直流分量輸出都是采用PWM控制方法。PWM信號由控制器輸出,再經(jīng)過低通濾波器輸入到運算放大器LM6172組成的阻抗匹配電路,輸出到增益調(diào)節(jié)控制端和直流分量控制端。增益倍數(shù)調(diào)節(jié)電路如圖3.5所示。 圖3.5 增益倍數(shù)控制電路直流分量電路選用LM6172運算放大器組成跟隨電路,控制電路輸出PWM控制信號,輸入到LM6172的跟隨輸入端,其輸入端由低通濾波電路組成,最終輸出符合要求的直流電平。由設(shè)計圖加上運算放大器的“虛短、虛斷”的特性,輸入信號Vi加入

37、直流分量Ui再經(jīng)過AD8066跟隨輸出Vo,它們之間的關(guān)系為:Vo = 。根據(jù)關(guān)系式可看出輸入信號被縮減到倍。直流分量調(diào)節(jié)電路如圖3.6所示。圖3.6直流分量調(diào)節(jié)電路3.1.4 A/D轉(zhuǎn)換電路AD831模數(shù)轉(zhuǎn)換器采用內(nèi)部參考電壓工作方式,輸出數(shù)字電壓高電平3V,模擬供電電壓+5V,并采用了模擬地和數(shù)字地隔離的措施,增強系統(tǒng)的工作穩(wěn)定性。如圖3.7所示。圖3.7 AD轉(zhuǎn)換電路3.2 STM32部分的主控電路3.2.1 STM32的USART接口通用同步異步收發(fā)器(USART)提供了一種靈活的方法與使用工業(yè)標準NRZ異步串行數(shù)據(jù)格式的外部設(shè)備之間進行全雙工數(shù)據(jù)交換。USART利用分數(shù)波特率發(fā)生器提

38、供寬范圍的波特率選擇。 它支持同步單向通信和半雙工單線通信,也支持LIN(局部互連網(wǎng)),智能卡協(xié)議和IrDA(紅外數(shù)據(jù)組織)SIR ENDEC規(guī)范,以及調(diào)制解調(diào)器(CTS/RTS)操作。它還允許多處理器通信。 使用多緩沖器配置的DMA方式,可以實現(xiàn)高速數(shù)據(jù)通信。論文應(yīng)用USART接口的半雙工單線通信方式實現(xiàn)數(shù)據(jù)和命令的收發(fā)。 3.2.2 STM32的USB接口USB模塊為PC主機和微控制器所實現(xiàn)的功能之間提供了符合USB規(guī)范的通信連接。PC主機和微控制器之間的數(shù)據(jù)傳輸是通過共享一專用的數(shù)據(jù)緩沖區(qū)來完成的,該數(shù)據(jù)緩沖區(qū)能被USB外設(shè)直接訪問。此外,STM32可以通過USB電源加上AMS1117.

39、3.3的穩(wěn)壓芯片獲得+3.3V的供電電壓。USB可提供最大電流500mA的+5V電壓電源,能滿足STM32的工作需求。如圖3.8所示。圖3.8 USB接口電路3.2.3 STM32的主控應(yīng)用電路STM32單片機選用8MHz的外部無源晶振,通過內(nèi)部的PLL電路可倍頻到72MHz的工作頻率。它的BOOT0和BOOT1引腳控制啟動模式,可以通過BOOT1:0引腳選擇三種不同啟動模式。如圖表1所示。論文的硬件電路設(shè)計BOOT1引腳接地,即BOOT1恒為0,BOOT0引腳有0和1兩種選擇。在使用ISP方式下載程序時將BOOT0腳接高電平,即BOOT0腳為0,再按下復位鍵,即可完成程序的下載。在完成程序下

40、載后BOOT0腳可以作為普通I/O端口使用。STM32的主控應(yīng)用電路如圖3.9所示。STM32主要負責讀FIFO緩存中的數(shù)據(jù),然后傳輸給上位機,同時接受上位機傳來的命令,分析命令做出相應(yīng)的控制。控制部分主要有:對PWM1、PWM2的輸出占空比控制來調(diào)節(jié)直流分量大小和增益大?。粚IFO緩存和AD轉(zhuǎn)換器的頻率控制,通過STM32發(fā)出改變頻率脈沖給FPGA的頻率控制接口來改變它們的時鐘頻率。例如當STM32接受到改變PWM1或PWM2占空比大小命令式時,STM32調(diào)節(jié)PWM值一次,反復調(diào)節(jié)找到合適的值(PWM設(shè)置了2個數(shù)組,分別設(shè)置了6個不同的值);當FPGA接受到改變頻率脈沖式,控制器改變一次F

41、IFO和AD的頻率,如此循環(huán)改變選擇合適的頻率值(有8種不同的頻率選擇值,3位的頻率選擇寄存器不斷加1變化來選擇合適的值)。表1 啟動模式啟動模式選擇引腳啟動模式說明BOOT1 BOOT0 X 0主閃存存儲器 主閃存存儲器被選為啟動區(qū)域 01系統(tǒng)存儲器 系統(tǒng)存儲器被選為啟動區(qū)域 11內(nèi)置SRAM 內(nèi)置SRAM被選為啟動區(qū)域 圖3.9 STM32主控電路圖3.3 FPGA部分的主控電路3.3.1 FPGA的硬件電路設(shè)計FPGA的電路設(shè)計采用兩種程序下載方式:JTAG和AS兩種方式。JTAG下載方式是將編譯后生成的sof文件通過JTAG口直接下載到FPGA內(nèi),一般是臨時調(diào)試用的,掉電后下載數(shù)據(jù)將丟

42、失;AS下載一般是將編譯后生成的pof文件下載到prom(flash)里,掉電數(shù)據(jù)不會丟失,重新上電prom會自動加載程序到FPGA。AS下載方式選用的prom為EPCS1N型號,是1Mbit的flash存儲設(shè)備,+3.3V供電電壓的8腳貼片封裝的存儲器,常用于Stratix® II FPGAs和Cyclone series FPGAs的AS配置方案。FPGA芯片選擇的是EP1C3T144C8N,其內(nèi)部資源足夠本次設(shè)計的使用。FPGA內(nèi)部資源介紹在第二章2.4節(jié)。FPGA的硬件電路設(shè)計如圖3.10所示。圖3.10 FPGA硬件電路設(shè)計3.3.2 FPGA的內(nèi)部邏輯電路FPG

43、A的內(nèi)部邏輯電路有時鐘分頻電路,異步FIFO緩存模塊,串口發(fā)送和接收模塊,兩路PWM輸出模塊,異步FIFO控制模塊。50MHz的時鐘信號進入分頻電路模塊得到兩路分頻后的信號,一路給AD轉(zhuǎn)換器,另一路給內(nèi)部的異步FIFO模塊。分頻電路共提供FIFO寫時鐘8種頻率,有:50MHz,25MHz,12.5MHz,5MHz,6.25MHz,1.25MHz,500KHz,250KHz;由于ADS831的最低工作頻率在500KHz以上,所以分頻電路提供給AD轉(zhuǎn)換器的時鐘頻率為7種。UART模塊的發(fā)送負責將接收到的FIFO數(shù)據(jù)發(fā)送到上位機,接收模塊負責接受上位機的命令,此部分還包括對接收到的命令的分析,并做出

44、相應(yīng)的控制,主要有對PWM模塊輸出信號的控制和前級處理部分模擬開關(guān)的控制。異步FIFO模塊是調(diào)用Altera的官方固件庫得到,性能比自己編寫的要好很多。分頻邏輯電路由Quartus II軟件自帶的基本分頻器件單元74390組合得到不同需求的頻率。內(nèi)部邏輯頂層電路如圖3.11所示,分頻電路如圖3.12所示。圖3.11 FPGA內(nèi)部邏輯電路圖圖3.12 分頻電路3.3.3 FPGA與CH372的接口電路設(shè)計CH372 是一個USB 總線的通用設(shè)備接口芯片,是CH371的升級產(chǎn)品,是CH375芯片的功能簡化版。在本地端,CH372 具有8 位數(shù)據(jù)總線和讀、寫、片選控制線以及中斷輸出,可以方便地掛接到

45、單片機/DSP/MCU/MPU等控制器的系統(tǒng)總線上。CH372 芯片在本地端提供了通用的被動并行接口,包括:8 位雙向數(shù)據(jù)總線D7D0、讀選通輸入引腳RD#、寫選通輸入引腳WR#、片選輸入引腳CS#、中斷輸出引腳INT#以及地址輸入引腳A0。通過被動并行接口,CH372芯片可以很方便地掛接到各種8 位單片機、MCU的系統(tǒng)總線上,并且可以與多個外圍器件共存。論文應(yīng)用FPGA硬件語言描述的內(nèi)部邏輯控制電路來控制CH372的數(shù)據(jù)讀寫。它有兩種電源供電電壓:+5V和+3.3V。CH372 芯片支持5V 電源電壓或者3.3V電源電壓。當使用5V 工作電壓時,CH372芯片的VCC引腳輸入外部5V電源,并

46、且V3引腳應(yīng)該外接容量為1000pF到0.01uF左右的電源退耦電容。當使用3.3V工作電壓時,CH372芯片的V3引腳應(yīng)該與VCC引腳相連接,同時輸入外部的3.3V電源,并且與CH372芯片相連接的其它電路的工作電壓不能超過3.3V。CH372與FPGA芯片的電路設(shè)計如圖3.13所示。圖3.13 FPGA與SH372電路4 軟件控制部分論文設(shè)計了兩種方案完成此設(shè)計:一種是STM32用作控制器、數(shù)據(jù)及命令收發(fā)器,F(xiàn)PGA只負責時鐘分頻和數(shù)據(jù)緩存;另一種是FPGA既作控制器,也負責時鐘的分頻和數(shù)據(jù)的緩存,同時與USB芯片CH372實現(xiàn)數(shù)據(jù)及命令的收發(fā)。虛擬示波器與上位機數(shù)據(jù)通訊采用了兩種方式:一

47、是UART方式,串口方式數(shù)據(jù)最大傳輸速率為115200bsp,因此速率不高;二是USB方式,這種傳輸方式的最大傳輸速率可達到12Mbsp,遠高于串口。由于時間的限制再加上個人能力的限制,USB與上位機通訊方式只完成了虛擬示波器上的程序,USB通訊上位機的程序有待于繼續(xù)開發(fā)和學習,因此無法進行此種方式的波形實驗。另外,STM32的USB接口程序非常多,在這里就不列出了,詳細內(nèi)容請參見官方USB固件庫。4.1 主程序流程圖主程序流程圖部分主要包括示波器向上位機發(fā)送數(shù)據(jù)和上位機向示波器發(fā)送命令兩部分。流程圖分別如下圖4.1,圖4.2所示上位機發(fā)命令UART接收命令控制部分分析命令分頻控制直流分量增益

48、調(diào)節(jié)終止開始FIFO寫數(shù)據(jù),讀禁止FIFO寫滿否UART讀FIFO,F(xiàn)IFO寫禁止讀FIFO空是否是發(fā)送給上位機終止圖4.2 上位機向示波器發(fā)送命令圖4.1 示波器向上位機發(fā)送數(shù)據(jù)4.2 軟件程序部分4.2.1 FPGA硬件描述語言verilog HDL程序FPGA的總程序見附錄A。嚴格根據(jù)UART接口協(xié)議規(guī)定編寫verilog HDL程序,燒寫到FPGA芯片生成符合UART接口標準協(xié)議的邏輯電路,實現(xiàn)串口數(shù)據(jù)的接收和發(fā)送。由于發(fā)送程序和接收程序的方法類似,接收的難點在于對起始位的判斷,應(yīng)用8倍過采樣技術(shù)來解決這個問題,接收部分的還包括對接收到的命令進行分析判斷輸出相應(yīng)的控制信號。命令代碼是由

49、8位二進制數(shù)據(jù)表示,8h39代表直流分量控制的變化,收到一次這個命令直流分量增加一定的輸出值;8h38代表運放的增益控制,變化同上,增加到最大值3.3V后再收到命令就會從初始值開始增加;8h37和8h36分別控制前級處理的模擬開關(guān)的選擇開關(guān)A,例如當收到8h37時,A輸入邏輯0,選通X1通道,即選擇了一種衰減比;8h35和8h34控制模擬開關(guān)的選擇開關(guān)B,工作方式同A;命令這里只列出接收程序的難點,如下所示:/ Baud8Tick 為波特率的8倍 115200*8 = 921600wire Baud8Tick = Baud8GeneratorAccBaud8GeneratorAccWidth;

50、/ next_bit 為波特率 115200always (posedge clk or negedge rst) if(rst ) bit_spacing <= 0; else if (state=0) bit_spacing <= 0; else if(Baud8Tick) bit_spacing <= bit_spacing + 1;wire next_bit = (bit_spacing=7);4.2.2 FPGA內(nèi)部異步FIFO與UART之間協(xié)調(diào)通訊的控制程序UART的數(shù)據(jù)收發(fā)速率最大115200波特率,而異步FIFO的寫速率遠高于UART,因此,F(xiàn)IFO的讀數(shù)據(jù)有

51、效端口由UART的準備發(fā)送數(shù)據(jù)使能端控制。當FIFO緩存中的數(shù)據(jù)寫滿時,F(xiàn)ULL端輸出高電平通知UART部分,同時UART內(nèi)部檢測是否處在發(fā)送準備狀態(tài),若是,則讀取FIFO中的數(shù)據(jù),這樣UART每發(fā)送一次數(shù)據(jù)時都要檢測準備狀態(tài),如此反復,直到FIFO讀空,此時FIFO的EMPERTY輸出高電平,控制單元關(guān)閉FIFO的讀使能端,結(jié)束UART讀取數(shù)據(jù),同時開始FIFO寫數(shù)據(jù)。Verilog HDL程序如下所示:module FIFOcontr ( FIFO_rd,FIFO_wd,FIFO_wdq,FIFO_redq,DATA_TR_EN);input FIFO_wd, /FIFO的讀空標志位 FI

52、FO_rd; /FIFO寫滿標志位output DATA_TR_EN,/FIFO數(shù)據(jù)傳輸準備端 FIFO_wdq,/寫FIFO時鐘使能端 FIFO_redq;/讀FIFO時鐘使能端wire DATA_TR_EN,FIFO_wdq,FIFO_wd,FIFO_rd;reg data_tx_en=0,FIFO_wdq_en=1,FIFO_red_en=0;always ( data_tx_en or FIFO_wdq_en) if (FIFO_rd) begin /FIFO寫滿時,寫FIFO被禁止,使能讀FIFO data_tx_en <= 1'b1; FIFO_wdq_en <

53、= 1'b0; FIFO_red_en <= 1'b1; endelse if(FIFO_wd) begin /FIFO讀空時,讀FIFO被禁止,使能寫FIFO data_tx_en <= 1'b0; FIFO_wdq_en <= 1'b1;FIFO_red_en <= 1'b0;endassign DATA_TR_EN = data_tx_en;assign FIFO_wdq = FIFO_wdq_en;assign FIFO_redq = FIFO_red_en;Endmodule4.2.3 上位機LABVIEW流程圖程序La

54、bview的串口驅(qū)動需要用到VISA驅(qū)動程序,是VXI plug&play聯(lián)盟制定的I/O接口軟件標準及其規(guī)范的總稱。VISA提供用于儀器編程的標準I/O函數(shù)庫,稱為VISA庫。VISA函數(shù)庫駐留在計算機系統(tǒng)內(nèi),是計算機與儀器的標準軟件通信接口,計算機通過它來控制儀器。它可以用于USB、RS232、RS485和GPIOB等多種總線的測試系統(tǒng)。論文的上位機程序串口與采集卡上的串口設(shè)置必須相同,應(yīng)該為9600波特率,8位數(shù)據(jù)位,無奇偶校驗,1位停止位,這樣才能正確收發(fā)數(shù)據(jù)。采用波形圖的方式顯示采集到的數(shù)據(jù)。流程圖如圖4.3所示。圖4.3 labview流程圖程序5 調(diào)試5.1 硬件調(diào)試收到

55、做好的PCB板子后,通過手工焊接了所有的元器件,然后仔細檢查了各個引腳是否連接正常,是否有挨著的引腳連焊的,是否有虛焊的等。經(jīng)過這些前期檢查,可以得出電路連接正常。電源部分的調(diào)試。電源是每個電路設(shè)計中重要的組成部分之一,它的性能好壞直接決定著最終電路工作的穩(wěn)定性,嚴重的使各部分不能正常工作。電源部分包括四種電壓:+5V,+3.3V,+1.5V,-5V。焊接好電源部分電路后,用萬用表測量各輸出電壓,各個電壓輸出正常。前級調(diào)理部分電路。前級調(diào)理電路是數(shù)據(jù)采集器不可缺少的部分,它主要負責輸入信號的電壓衰減和放大,最終使信號進入AD轉(zhuǎn)換器時能滿足AD轉(zhuǎn)換器的轉(zhuǎn)換范圍,并且它的帶寬決定數(shù)據(jù)采集卡的最大測

56、量帶寬。將前級處理部分的各個元器件焊接好,經(jīng)過檢查連接正常,然后給前級處理部分加上需求的電壓,輸入測試信號,用示波器觀察最終輸出信號符合論文要求。AD轉(zhuǎn)換部分。AD轉(zhuǎn)換部分的工作穩(wěn)定性也是很重要的參數(shù)之一,它的性能對最后的顯示部分有很大影響,決定著讀數(shù)的正確性。焊接好AD轉(zhuǎn)換部分的元器件后,輸入測試信號,前級放大調(diào)節(jié)到符合AD的轉(zhuǎn)換要求,將轉(zhuǎn)換后的數(shù)字信號輸出到一個正常的STM32的開發(fā)板上,再用串口發(fā)送至上位機串口調(diào)試軟件,檢查上位機接收到的數(shù)據(jù),經(jīng)過數(shù)據(jù)分析,得出數(shù)據(jù)轉(zhuǎn)換正常。FPGA緩存和控制部分。FPGA部分電路主要負責數(shù)據(jù)的緩存和控制,焊接好這部分的各個元器件后,經(jīng)過反復檢查各個引腳

57、,保證此部分的電路連接正常。找到一個調(diào)試好的小程序下載到FPGA,經(jīng)過分析,F(xiàn)PGA電路連接正常,芯片工作正常。論文的實物是應(yīng)用Altium Designer6.9制作的PCB版圖。通過這次做畢設(shè)實物的鍛煉,我對Altium Designer6.9的應(yīng)用更加熟練,但對此軟件的應(yīng)用還有許多陌生的地方,今后會加強畫圖方面的鍛煉。PCB版圖如圖5.1所示,總電路原理圖見附錄B。圖5.1 PCB版圖5.2 軟件調(diào)試先用JTAG下載方式的下載文件,將寫好的Verilog HDL代碼,通過編譯生成可下載調(diào)試的.sof文件。連接好下載器,給整個電路供電。將程序代碼下載到板子中,連接好串口調(diào)試器,使上位機能正常接受數(shù)據(jù)。輸入測試信號,分析上位機收到的數(shù)據(jù),再由上位機發(fā)出命令改變前級處理的衰減比,運放部分的增益,直流分量大小,再次分析收到的數(shù)據(jù),反復此過程,并優(yōu)化軟件部分,使控制部分的工作正常,能正確響應(yīng)上位機發(fā)出的命令。通過上面的調(diào)試過程軟件部分的工作正常,然后用AS下載方式,將編譯生成的.pof文件下載到板子上,每次上電就不用給板子反復加載程序。程序

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論