微型虛擬任意信號(hào)發(fā)生器的設(shè)計(jì)與實(shí)現(xiàn)課件_第1頁(yè)
微型虛擬任意信號(hào)發(fā)生器的設(shè)計(jì)與實(shí)現(xiàn)課件_第2頁(yè)
微型虛擬任意信號(hào)發(fā)生器的設(shè)計(jì)與實(shí)現(xiàn)課件_第3頁(yè)
微型虛擬任意信號(hào)發(fā)生器的設(shè)計(jì)與實(shí)現(xiàn)課件_第4頁(yè)
微型虛擬任意信號(hào)發(fā)生器的設(shè)計(jì)與實(shí)現(xiàn)課件_第5頁(yè)
已閱讀5頁(yè),還剩51頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

微型虛擬任意信號(hào)發(fā)生器的設(shè)計(jì)與實(shí)現(xiàn)內(nèi)容提綱研究意義及現(xiàn)狀系統(tǒng)設(shè)計(jì)方案硬件系統(tǒng)設(shè)計(jì)軟件系統(tǒng)設(shè)計(jì)任意信號(hào)發(fā)生器測(cè)試效果一、研究意義及現(xiàn)狀傳統(tǒng)信號(hào)發(fā)生器

正弦波信號(hào)源函數(shù)發(fā)生器脈沖發(fā)生器掃描發(fā)生器針對(duì)特定應(yīng)用產(chǎn)生波形種類有限波形不可編程儀器發(fā)展歷史GPIB分立儀器虛擬儀器美國(guó)NI公司虛擬測(cè)試系統(tǒng)軟硬件產(chǎn)品目標(biāo)——吉林大學(xué)虛擬實(shí)驗(yàn)室LabViewCCURLCSCOPEWEBDAQAWG設(shè)計(jì)思想U(xiǎn)SB電纜VC軟件LabVIEW或LabScenePC或筆記本產(chǎn)生波形硬件系統(tǒng)設(shè)計(jì)框圖DDS波形產(chǎn)生模塊CPLD邏輯控制模塊USB接口通信模塊任意波形產(chǎn)生模塊微控制器89S52放大濾波模塊三、硬件系統(tǒng)開發(fā)DDS波形產(chǎn)生模塊設(shè)計(jì)任意波形產(chǎn)生模塊設(shè)計(jì)USB通信接口設(shè)計(jì)3.1.1直接頻率合成(DDS)原理直接頻率合成技術(shù)(DDS)參考頻率源D/A轉(zhuǎn)換器正弦波形存儲(chǔ)器低通濾波器頻率累加器根據(jù)奈奎斯特采樣定律將一個(gè)正弦信號(hào)取樣、量化、編碼,形成一個(gè)正弦函數(shù)表存于EPROM中,通過改變相位累加器的頻率控制字來(lái)改變相位增量,并將變化的相位/幅值量化的數(shù)字信號(hào)通過D/A轉(zhuǎn)換器及低通濾波器即可得到合成的模擬信號(hào)。

信號(hào)輸出頻率控制字3.1.2DDS波形成產(chǎn)方案選擇方案一:根據(jù)DDS原理,用EEPROM存儲(chǔ)器、高精度D/A再配以CPLD的控制時(shí)序?qū)崿F(xiàn);

缺點(diǎn):成本高、調(diào)試難度大、開發(fā)周期長(zhǎng)方案二:根據(jù)系統(tǒng)需要,選擇合適的DDS芯片,配以簡(jiǎn)單的外圍電路實(shí)現(xiàn);可大大縮短開發(fā)周期3.1.3DDS波形產(chǎn)生電路AD公司提供的DDS芯片,內(nèi)部包括32位相位累加器、正弦查詢表、高性能DAC、高速比較器和濾波器,能實(shí)現(xiàn)全數(shù)字編程控制的頻率合成器和時(shí)鐘發(fā)生器,其最高時(shí)鐘源可達(dá)125M;32bits頻率控制字,5bit相位調(diào)制,簡(jiǎn)化的控制接口,并行或串行輸入形式。3.2任意波形產(chǎn)生模塊設(shè)計(jì)任意波形產(chǎn)生原理任意波形產(chǎn)生電路設(shè)計(jì) D/A轉(zhuǎn)換控制電路 D/A基準(zhǔn)電壓產(chǎn)生模塊 波形數(shù)據(jù)存取電路 CPLD控制電路 波形處理模塊

3.2.1任意波形產(chǎn)生原理利用計(jì)算機(jī)產(chǎn)生所需信號(hào)的波形數(shù)據(jù),存入波形數(shù)據(jù)存儲(chǔ)器,在CPLD的控制下同時(shí)選通存儲(chǔ)器和D/A轉(zhuǎn)換器,在兩者之間建立直接的數(shù)據(jù)通道,使存儲(chǔ)器相應(yīng)單元中的波形數(shù)據(jù)傳送給D/A轉(zhuǎn)換器產(chǎn)生具有一定幅度、頻率、相位的模擬波形。波形頻率由CPLD的時(shí)鐘信號(hào)決定。CPLD的時(shí)鐘信號(hào)由AD9850提供。3.2.2任意波形產(chǎn)生電路設(shè)計(jì)D/A轉(zhuǎn)換器的選擇 D/A轉(zhuǎn)換器是整個(gè)系統(tǒng)的核心器件,波形信號(hào)的質(zhì)量取決于其分辨率和數(shù)據(jù)輸出速率。其制約關(guān)系為: 1.D/A的分辨率越高,則高次諧波的分量越小; 2.一周期的數(shù)據(jù)點(diǎn)數(shù)越多,模擬信號(hào)越平滑; 3.一周期數(shù)據(jù)點(diǎn)數(shù)多,則信號(hào)所能達(dá)到的最高頻率則降低; 4.D/A的輸出速率越高,波形平滑度越好,一般情況下并行D/A的輸出速率高,但是占用的I/O也多;綜合上述因素,本設(shè)計(jì)采用了MAXIM公司的MAX5541,它是16位D/A,電壓輸出,10MHz三線式串行總線接口,1us的信號(hào)建立時(shí)間。3.2.2任意波形產(chǎn)生電路設(shè)計(jì)D/A轉(zhuǎn)換控制電路 由CPLD控制完成,包括:16位并行數(shù)據(jù)16位串行數(shù)據(jù)3線接口時(shí)序16位串行數(shù)據(jù)16位并行數(shù)據(jù)8位并行數(shù)據(jù)D/A轉(zhuǎn)換控制電路的具體實(shí)現(xiàn)1.采用狀態(tài)機(jī)機(jī)制(定義狀態(tài)ss:start,send16,over)2.定義16進(jìn)制計(jì)數(shù)器counter163.counter16.clock=clk;ss.clk=clk;CPLD仿真——并串轉(zhuǎn)換及3線接口時(shí)序產(chǎn)生3.2.2任意波形產(chǎn)生電路設(shè)計(jì)D/A基準(zhǔn)電壓產(chǎn)生模塊 選擇美國(guó)國(guó)家半導(dǎo)體公司的LM4040-2.5作為MAX5541工作時(shí)的基準(zhǔn)點(diǎn)壓(5V);它采用小封裝TO-92,不需外接電容,電路連接簡(jiǎn)單;3.2.2任意波形產(chǎn)生電路設(shè)計(jì)CPLD控制電路

選擇ALTERA公司的EPM7128。采用MAXPLUS-2的圖形語(yǔ)言和AHDL語(yǔ)言相結(jié)合的方式對(duì)其編程實(shí)現(xiàn)控制邏輯。

CPLDAD9850控制模塊波形數(shù)據(jù)存取模塊DA轉(zhuǎn)換控制模塊譯碼模塊其他模塊3.2.2任意波形產(chǎn)生電路設(shè)計(jì)CPLD關(guān)鍵電路仿真時(shí)序Clk:DDS提供的時(shí)基信號(hào);frame_start為轉(zhuǎn)換控制門信號(hào);da_ram_nrd:SRAM讀信號(hào)有效;m_addr_frame:地址發(fā)生器讀數(shù)據(jù)階段的時(shí)鐘信號(hào);Start:預(yù)備態(tài)r0h、r0l:從SRAM讀出數(shù)據(jù)wait_da:進(jìn)行D/A轉(zhuǎn)換3.2.3波形處理模塊模擬開關(guān)運(yùn)放運(yùn)放ARB波形DDS波形信號(hào)輸出考慮到任意波形發(fā)生器產(chǎn)生信號(hào)的可變性,本模塊沒有設(shè)計(jì)濾波電路;3.3.1USB接口介紹USB是英文UniversalSerialBus的縮寫,中文含意是:通用串行總線。特點(diǎn):即插即用低功耗總線供電多種速度模式多種設(shè)備類價(jià)格低廉3.3.2USB硬件開發(fā)USB接口控制電路設(shè)計(jì)

帶微控制器的USB接口芯片

(EZ-USB)

方案選擇

不帶微控制器的USB接口芯片 (PDIUSBD12)

USB固件程序開發(fā)選用PDIUSBD12+MCU89S52

PDIUSBD12特點(diǎn)符合串行總線(USB)1.1版協(xié)議規(guī)范集成了SIE、FIFO存儲(chǔ)器、收發(fā)器與任何外部微控制器實(shí)現(xiàn)高速并行接口具有良好的EMI特性的總線供電能力在掛起時(shí)可控制LazyClock輸出可通過軟件控制與USB的連接符合ACPI、OnNOW和USB電源管理要求內(nèi)部上電復(fù)位和低壓復(fù)位電路雙電源操作主端點(diǎn)的雙緩沖配置增加了數(shù)據(jù)吞吐量并輕松實(shí)現(xiàn)實(shí)時(shí)數(shù)據(jù)傳輸U(kuò)SB設(shè)計(jì)硬件原理圖3.3.3USB固件程序開發(fā)固件框架采用模塊化結(jié)構(gòu),由KeilC開發(fā)主循環(huán):發(fā)送USB請(qǐng)求、處理USB總線事件和用戶功能處理等中斷服務(wù)程序協(xié)議請(qǐng)求處理底層命令接口硬件提取層主循環(huán)保持的讀指針

前臺(tái)主循環(huán)程序后臺(tái)中斷服務(wù)程序保持的寫指針循環(huán)數(shù)據(jù)區(qū)前后臺(tái)工作原理固件采用前后臺(tái)工作的編程思想,D12每發(fā)生一次中斷,后臺(tái)中斷服務(wù)程序改變相應(yīng)的事件標(biāo)志位,前臺(tái)主程序不斷檢測(cè)事件標(biāo)志位狀態(tài),完成相應(yīng)功能。開始初始化資源循環(huán)DDS模式Y(jié)NNNY主程序流程DDS波形產(chǎn)生ARB波形產(chǎn)生處理命令RAM寫數(shù)據(jù)ARB模式其他命令Y四、軟件系統(tǒng)設(shè)計(jì)PC驅(qū)動(dòng)程序開發(fā)USB應(yīng)用程序設(shè)計(jì)思想DLL動(dòng)態(tài)連接庫(kù)的開發(fā)LabVIEW設(shè)備節(jié)點(diǎn)的開發(fā)4.1PC驅(qū)動(dòng)程序開發(fā)驅(qū)動(dòng)程序工作在核心態(tài)下,介于應(yīng)用軟件和設(shè)備硬件之間驅(qū)動(dòng)程序作用驅(qū)動(dòng)程序

應(yīng)用軟件

WDMVXD驅(qū)動(dòng)程序模型VXDWDMNT

改進(jìn)

Win98WinNT98/NT/2000/XP支持PNP、電源管理、WMI1、即插即用查找設(shè)備INF安裝驅(qū)動(dòng)程序2、適合Win98Win2000/xp1、驅(qū)動(dòng)程序查找設(shè)備,安裝程序。2、適合于Win98/NT1、IRP結(jié)構(gòu)2、電源管理3、分層驅(qū)動(dòng)模型4、Windows管理診斷(WMI)WDM驅(qū)動(dòng)程序NT驅(qū)動(dòng)程序WDM驅(qū)動(dòng)模型特點(diǎn)UserApplicationsWin32APICallSystemServicesI/OManagerIRPDRIVERHardwareAbstractionLayer核心態(tài)分層用戶態(tài)WDM模型介紹驅(qū)動(dòng)程序開發(fā)工具介紹VisualC++DDKDRIVERSTUDIOWINDRIVER難!方法二方法一寄生USB設(shè)備驅(qū)動(dòng)程序四大例程事務(wù)即插即用例程,完成自動(dòng)識(shí)別USB設(shè)備,實(shí)現(xiàn)硬件資源分配和再分配,主要包括I/O端口、硬件中斷號(hào)等。電源管理例程,完成電源策略管理,決定什么時(shí)候應(yīng)該采用何種電源策略。設(shè)備控制例程,負(fù)責(zé)設(shè)備的控制,主要是指對(duì)設(shè)備的一些操作命令的發(fā)送或者一些標(biāo)志的讀取。用戶自己定義功能碼,上層應(yīng)用軟件功能碼必須和驅(qū)動(dòng)程序保持一致。數(shù)據(jù)讀寫例程,完成上層應(yīng)用軟件API函數(shù)所對(duì)應(yīng)的打開設(shè)備、關(guān)閉設(shè)備、讀設(shè)備和寫設(shè)備等例程函數(shù)。4.2USB應(yīng)用軟件設(shè)計(jì)思想采用Win32API函數(shù)和驅(qū)動(dòng)程序建立聯(lián)系。實(shí)現(xiàn)上層應(yīng)用軟件的相應(yīng)功能。常用訪問硬件的API函數(shù)有:CreatFile():打開驅(qū)動(dòng)程序,獲取設(shè)備句柄ReadFile():獲取數(shù)據(jù)WriteFile():向設(shè)備寫數(shù)據(jù)ControlIoDevice():實(shí)現(xiàn)與外圍設(shè)備之間的讀寫操作CloseFile():關(guān)閉設(shè)備應(yīng)用軟件開發(fā)工具選擇MFC+APIGraphicalProgrammingLabWindows/CVI發(fā)展方向虛擬儀器軟件平臺(tái)應(yīng)用軟件功能框圖模式選擇USB讀寫用戶界面波形選擇頻率設(shè)定波形選擇頻率設(shè)定讀取USB數(shù)據(jù)發(fā)送USB數(shù)據(jù)識(shí)別USB設(shè)備幅度設(shè)定模式選擇模式選擇點(diǎn)數(shù)設(shè)定波形顯示基于VC++6.0平臺(tái)開發(fā)VC開發(fā)環(huán)境使用相對(duì)復(fù)雜,需要花大量時(shí)間開發(fā)應(yīng)用程序界面,界面開發(fā)遠(yuǎn)不如Labview便捷、美觀,但是對(duì)于理解應(yīng)用程序工作機(jī)理大有好處。MFC類庫(kù)Win32API基于LabVIEW平臺(tái)開發(fā)應(yīng)用程序軟件NI軟硬件產(chǎn)品自定義設(shè)備LabVIEW不支持,用戶需要開發(fā)LabVIEW驅(qū)動(dòng)融入DLL調(diào)用訪問驅(qū)動(dòng)用戶態(tài)核心態(tài)LabviewCLF接口控件設(shè)備LABVIEW編程基于LabVIEW平臺(tái)的虛擬任意波形發(fā)生器4.3DLL動(dòng)態(tài)連接庫(kù)的開發(fā)開發(fā)動(dòng)態(tài)連接庫(kù)是開發(fā)基于VC或者基于LabVIEW應(yīng)用軟件的首要任務(wù)??梢圆捎肰C++6.0DLL動(dòng)態(tài)連接庫(kù)向?qū)ч_發(fā)。USBDLL動(dòng)態(tài)連接庫(kù)開發(fā)的USBDLL動(dòng)態(tài)連接庫(kù)包括三個(gè)文件:SignalUsb.DLLSignalUsb.LIB其主要函數(shù)有如下4個(gè):UINTModeSelect(BOOLmodeflag,floatf_freq,UINTf_number);用來(lái)選擇波形的模式UINTWaveGenerate(unsignedchar*pcIoBuffer,UINTf_number);用來(lái)向usb寫波形數(shù)據(jù),以產(chǎn)生波形;UINTFreqChang(floatfreq,UINTf_number);用來(lái)改變波形頻率UINTStopWave();用來(lái)停止波形

4.4LabVIEW節(jié)點(diǎn)開發(fā)通過動(dòng)態(tài)連接庫(kù)調(diào)用節(jié)點(diǎn)訪問設(shè)備的動(dòng)態(tài)連接庫(kù),實(shí)現(xiàn)設(shè)備的訪問。CLF節(jié)點(diǎn)的使用USB節(jié)點(diǎn)程序生成的USB節(jié)點(diǎn)五、示波器測(cè)試結(jié)果任意波形發(fā)生器板卡實(shí)物圖任意波形發(fā)生器實(shí)測(cè)指標(biāo)波形頻率: ARB模式:0.01Hz(DC)~160KHz(點(diǎn)數(shù)為8) DDS模式

溫馨提示

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

評(píng)論

0/150

提交評(píng)論