基于DSP的簡(jiǎn)易頻譜分析儀設(shè)計(jì)畢業(yè)設(shè)計(jì)_第1頁(yè)
基于DSP的簡(jiǎn)易頻譜分析儀設(shè)計(jì)畢業(yè)設(shè)計(jì)_第2頁(yè)
基于DSP的簡(jiǎn)易頻譜分析儀設(shè)計(jì)畢業(yè)設(shè)計(jì)_第3頁(yè)
基于DSP的簡(jiǎn)易頻譜分析儀設(shè)計(jì)畢業(yè)設(shè)計(jì)_第4頁(yè)
基于DSP的簡(jiǎn)易頻譜分析儀設(shè)計(jì)畢業(yè)設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩40頁(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)介

1、基于dsp的簡(jiǎn)易頻譜分析儀設(shè)計(jì)摘要我們對(duì)一個(gè)信號(hào)的認(rèn)識(shí)只在時(shí)間域是遠(yuǎn)遠(yuǎn)不夠的,所以還要在頻域去認(rèn)識(shí)和分析它。在電子測(cè)量中,測(cè)量網(wǎng)絡(luò)阻抗特性以及傳輸特性是經(jīng)常遇到的問(wèn)題問(wèn)題,其中,幅頻特性、增益和衰減特性、相頻特性等是屬于傳輸特性內(nèi)的。它很大程度方便了調(diào)整,校準(zhǔn)被測(cè)網(wǎng)絡(luò)及排除故障。本此設(shè)計(jì)制作了一個(gè)簡(jiǎn)易頻譜分析儀從而可以更直觀的看到信號(hào)的特性。為了實(shí)現(xiàn)這一目標(biāo),我們需要利用快速傅里葉變換(fft)來(lái)實(shí)現(xiàn)對(duì)信號(hào)的頻譜分析。由于dsp可以處理比較復(fù)雜的算法本次設(shè)計(jì)采用fft算法通過(guò)dsp分析顯示輸入波形的頻率值。關(guān)鍵詞:頻譜分析 dsp fft 顯示頻率 the simple spectrum an

2、alyzer design based on dspabstractwe cant know a signalonlyin the time domain.it is far fromenough, so wealso recognize andanalyze itin the frequency domain.in theelectronicmeasurement, impedanceand transmission characteristicsof the networkare often encountered in the measurement problems; transmis

3、sion characteristics include the gain characteristics, attenuation characteristics, amplitude-frequency characteristic and phase frequency characteristics. it provides a great convenience for the adjustment of the network under test, calibration and troubleshooting.we design a simple spectrum analyz

4、er to see the characteristics of the signal more intuitively. in order to achieve this goal, we need to use the fast fourier transform ,that is fft which make spectrum analysis of the signal. since the dsp can solve the more complex algorithms than others. hence, we designed a simple spectrum analyz

5、er using the fft algorithm by dsp to show the frequency of the input waveform.key words: spectrum analyzer ; dsp; fft ; frequency display目錄第1章 概 述 11.1 引 言1 1.2 定點(diǎn)dsp的數(shù)據(jù)格式21.3 tms320f2812 dsp介紹21.3.1 tms320f2812概述21.3.2 tms320f2812芯片結(jié)構(gòu)及性能描述3第2章 總體設(shè)計(jì)思路42.1 系統(tǒng)指標(biāo)42.2 系統(tǒng)方案42.2.1 信號(hào)發(fā)生器模塊52.2.2 dac轉(zhuǎn)換模塊52.

6、2.3 陷波網(wǎng)絡(luò)模塊62.2.4 信號(hào)調(diào)理模塊62.2.5 ad采集模塊62.2.6 fft計(jì)算處理模塊7第3章 具體設(shè)計(jì)73.1 工程建立73.2 正弦波發(fā)生模塊93.2.1 定時(shí)器模塊113.2.2 中斷模塊123.2.3 gpio模塊153.3 dac轉(zhuǎn)換模塊153.4 陷波網(wǎng)絡(luò)模塊163.5 信號(hào)調(diào)理電路模塊183.6 ad采集模塊193.6.1 事件管理器定時(shí)設(shè)置203.6.2 adc設(shè)置模塊223.7 fft模塊.27第4章 實(shí)驗(yàn)結(jié)果31第5章 總結(jié)與展望375.1 總 結(jié)375.2 展 望38參考文獻(xiàn)38致 謝39第1章 概 述1.1 引 言dsp的2種理解:廣義理解:digit

7、al signal processing數(shù)字信號(hào)處理狹義理解:digital signal processor數(shù)字信號(hào)處理器數(shù)字信號(hào)處理的概念是利用計(jì)算機(jī)或者專用的處理設(shè)備,對(duì)連續(xù)的數(shù)字信號(hào)進(jìn)行各種數(shù)學(xué)運(yùn)算,最終得到我們想要的分析結(jié)果。而快速傅立葉變換是其運(yùn)算基礎(chǔ)。如今是嶄新的數(shù)字化時(shí)代,dsp已然成為數(shù)字化的不可或缺的元素,廣泛的應(yīng)用于社會(huì)各領(lǐng)域。數(shù)字信號(hào)處理器(dsp芯片)應(yīng)運(yùn)而生,使數(shù)字信號(hào)處理理論與實(shí)際很好的連接,并促進(jìn)了深入發(fā)展數(shù)字信號(hào)處理技術(shù),拓寬應(yīng)用領(lǐng)域。數(shù)字信號(hào)處理以廣泛的學(xué)科作為理論基礎(chǔ),包含極廣泛的內(nèi)容。當(dāng)中包含,語(yǔ)音處理、通信等方方面面,涵蓋面很大。具體實(shí)現(xiàn)數(shù)字信號(hào)處理的

8、方法:(1) 在通用pc上利用軟件或在系統(tǒng)中加專用加速處理機(jī)來(lái)實(shí)現(xiàn)。來(lái)實(shí)現(xiàn)。(2) 用dsp實(shí)現(xiàn)。dsp的軟件和硬件各項(xiàng)資源對(duì)于數(shù)字信號(hào)處理非常適用,因此可用于各種復(fù)雜算法;(3)用cpld/fpga實(shí)現(xiàn)。1.2 定點(diǎn)dsp的數(shù)據(jù)格式在定點(diǎn)處理器(例如tms320f2812)之中,數(shù)據(jù)采用的是定點(diǎn)表示法,整數(shù)小數(shù)均可表示。在定點(diǎn)處理器中,決定數(shù)據(jù)精度和其動(dòng)態(tài)范圍的是格式和字長(zhǎng),當(dāng)然,它也是決定dsp處理器的成本、功耗以及編程難度的因素之一。定點(diǎn)dsp的兩種基本表示方法:整數(shù)表示和小數(shù)表示。整數(shù)表示方法應(yīng)用:非信號(hào)處理,例如地址計(jì)算、控制操作等小數(shù)表示方法應(yīng)用:數(shù)字和各種信號(hào)處理算法計(jì)算。定點(diǎn)數(shù)

9、常使用q表示法。處理小數(shù)時(shí)須由程序員確定小數(shù)點(diǎn)所處位置,稱為數(shù)的定標(biāo)。由于是人為決定,因此大小和精度可以表示多種范圍。例如:0 010 0000 0000 0000b=0.25,用q15表示 0 010 0000 0000 0000b=8192,用q0表示總結(jié)來(lái)說(shuō),q值越大,精度越高,但數(shù)值范圍越?。?q值越小,數(shù)值范圍越大,但精度就越低。1.3 tms320f2812 dsp介紹1.3.1 tms320f2812概述f28x系列是ti公司生產(chǎn)的32位定點(diǎn)數(shù)字信號(hào)處理器,其具有豐富的外設(shè)資源。相對(duì)于單片機(jī)來(lái)說(shuō),它能實(shí)現(xiàn)更為復(fù)雜的控制算法。適合于控制應(yīng)用,不同于其他芯片,該系列芯片含flash,

10、異步串口。同時(shí),它有數(shù)字信號(hào)處理能力和事件管理能力以及嵌入式控制能力,且由于可以用較低的成本實(shí)現(xiàn)開(kāi)發(fā)、控制最優(yōu)化,因此被廣泛使用。1.3.2 tms320f2812芯片結(jié)構(gòu)及性能描述1、最大可達(dá)150mhz的系統(tǒng)時(shí)鐘頻率;2、f2812具有8級(jí)流水操作,指令時(shí)間為6.67ns;3、f2812內(nèi)有4m的程序空間和4m的數(shù)據(jù)空間;4、片上外設(shè)資源多,包含串口外圍設(shè)備接口、事件管理器、16通道12位adc、控制器局域網(wǎng)絡(luò)can總線、串行通訊接口sca,scb、多通道緩沖串行接口以及jtag;第2章 總體設(shè)計(jì)思路2.1 系統(tǒng)指標(biāo)信號(hào)調(diào)理陷波網(wǎng)絡(luò)dacdsp2812本系統(tǒng)設(shè)計(jì)基本要求完成簡(jiǎn)易頻譜分析儀,

11、組成框圖如圖2.1電腦dsp2812 圖2.1 簡(jiǎn)易頻譜分析儀組成框圖1、 掃頻信號(hào)發(fā)生:采用dsp2812產(chǎn)生正弦波信號(hào),掃頻信號(hào)頻率范圍為100-10khz。2、陷波網(wǎng)絡(luò)設(shè)計(jì):陷波網(wǎng)絡(luò)中心頻率約為3khz。3、 fft設(shè)計(jì),顯示幅頻特性曲線。2.2 系統(tǒng)方案 本設(shè)計(jì)目標(biāo)為采用tms320f2812 dsp芯片設(shè)計(jì)簡(jiǎn)易頻譜分析儀。該分析儀由四部分模塊組成,分別為:信號(hào)發(fā)生器模塊、dac轉(zhuǎn)換模塊、陷波網(wǎng)絡(luò)模塊、信號(hào)調(diào)理模塊、ad采集模塊、fft計(jì)算處理模塊。2.2.1 信號(hào)發(fā)生器模塊信號(hào)發(fā)生模塊由dsp芯片來(lái)完成,產(chǎn)生100hz10khz的掃頻信號(hào)。dsp產(chǎn)生正弦波的方法有如下幾種:(1)利用

12、dsp內(nèi)置的pwm模塊產(chǎn)生spwm波形,之后連接低通濾波器發(fā)出正弦波;(2)利用泰勒級(jí)數(shù)展開(kāi)法經(jīng)過(guò)dsp計(jì)算得出正弦波;(3)利用查表法直接將正弦波形的表存入數(shù)組中;以上三種產(chǎn)生波形的方法都可以實(shí)現(xiàn)正弦波的發(fā)生,但是相比之下第一種較為復(fù)雜;第二種方法雖然占用存儲(chǔ)空間較少,但是運(yùn)算量比較大,占用cpu資源較多;查表法一種很直接的方法,它的原理是根據(jù)需要提前算好所有可能出現(xiàn)的正弦函數(shù)值,按照順序編制為數(shù)據(jù)表,當(dāng)用時(shí)只需要根據(jù)輸入查出對(duì)應(yīng)值。雖然查表法占用存儲(chǔ)空間較多,但是占用cpu資源少,而且根據(jù)正弦表的數(shù)組長(zhǎng)度和數(shù)據(jù)位數(shù)可以改變其分辨率及精確度。因此本次設(shè)計(jì)采用查表法產(chǎn)生正弦波,之后正弦波將以數(shù)

13、字量的形式發(fā)送至io口,通過(guò)數(shù)模轉(zhuǎn)換產(chǎn)生模擬量的正弦波。而正弦表可以通過(guò)例如正線波信號(hào)發(fā)生器來(lái)這類的軟件生成,本設(shè)計(jì)產(chǎn)生的是輸出點(diǎn)數(shù)為100點(diǎn),輸出精度為8位的正弦波。2.2.2 dac轉(zhuǎn)換模塊首先,先確定正弦波的分辨率、精度等各項(xiàng)參數(shù)以方便確定dac型號(hào)及設(shè)計(jì)電路。本次設(shè)計(jì)利用8位分辨率,一個(gè)周期內(nèi)取100點(diǎn)的正弦表實(shí)現(xiàn)正弦波發(fā)生。因?yàn)楸敬卧O(shè)計(jì)要求最高可采集到10khz的正弦波,因而有:100點(diǎn)*10khz=1mhz (2-1)(2-1)表明了對(duì)da的要求是它的采樣率必須達(dá)到1mhz以上才可以實(shí)現(xiàn)10khz的正弦波發(fā)生;因?yàn)槭?位分辨率且通過(guò)io口的8位來(lái)輸出,因而需要一個(gè)8位并口的da實(shí)現(xiàn)

14、??偨Y(jié)來(lái)說(shuō),就是選取da滿足以下兩個(gè)條件:1、8位并行輸入;2、采樣率在1mhz以上;經(jīng)過(guò)查閱各種資料后確定采用dac0832來(lái)完成將數(shù)字正弦波轉(zhuǎn)化為模擬正弦波的部分。2.2.3 陷波網(wǎng)絡(luò)模塊利用sallen_key電路結(jié)構(gòu)設(shè)計(jì)二階有源帶阻網(wǎng)絡(luò),簡(jiǎn)單而且比較容易實(shí)現(xiàn)。2.2.4 信號(hào)調(diào)理模塊利用分壓的辦法改變輸入信號(hào)的幅度,后接一個(gè)電壓跟隨器,目的是使其輸出信號(hào)電壓控制在03v以內(nèi),以避免直接輸入dsp中的ad輸入引腳而燒壞芯片,同時(shí)避免后邊的電路對(duì)信號(hào)產(chǎn)生影響。2.2.5 ad采集模塊ad采集模塊可有以下兩種設(shè)計(jì)方案:(1)利用外接的ad通過(guò)硬件連接的方式對(duì)模擬量的波形進(jìn)行轉(zhuǎn)化,將轉(zhuǎn)化后的數(shù)

15、字量通過(guò)io輸入dsp中。例如使用16位并行輸出ads8364連接f2812。(2)利用f2812包含的12位,16通道的adc通過(guò)軟件設(shè)置的方式將模擬量波形轉(zhuǎn)化為數(shù)字量。上述兩種方案中,由于第二種可直接通過(guò)軟件方式利用dsp包含的模數(shù)轉(zhuǎn)換模塊采集模擬量的波形而不用外接芯片節(jié)省成本并且充分利用了dsp的資源,因而在精度不要求很高的情況下更加適用,因而采用第二種方案。2.2.6 fft計(jì)算處理模塊因?yàn)閒2812芯片上專門有指令用于fft操作,使得在f2812芯片上實(shí)現(xiàn)fft算法速度更快且更為方便用戶使用,所以直接采用即可。第3章 具體設(shè)計(jì)3.1 工程建立本設(shè)計(jì)的集成開(kāi)發(fā)環(huán)境為ccs3.1,ccs

16、提供了配置、建立、調(diào)試、跟蹤和分析程序的工具,便于編制和測(cè)試實(shí)時(shí)、嵌入式信號(hào)處理程序,可提高開(kāi)發(fā)進(jìn)程速度,提高工作效率。支持如下所示的開(kāi)發(fā)周期的所有階段。 圖3.1 ccs的開(kāi)發(fā)周期各階段開(kāi)發(fā)工具包括:c編譯器、匯編器、連接器等。庫(kù)文件(.lib),頭文件(.h),源文件(.c)和cmd文件(.cmd)組成一個(gè)完整的工程,缺一不可。1、頭文件:用于其他文件的引用、程序中的函數(shù)、參數(shù)、變量和一些宏單元的定義,和庫(kù)函數(shù)配合使用。所以在使用庫(kù)時(shí)須用相應(yīng)頭文件說(shuō)明。文件格式為“.h”,編譯過(guò)程中自動(dòng)添加進(jìn)入工程,無(wú)需手動(dòng)添加。一般情況下頭文件不需修改便可直接使用。2、庫(kù)文件:c語(yǔ)言系統(tǒng)庫(kù)rts2xx.

17、lib。系統(tǒng)庫(kù)包含了編譯器的所有功能:初始化c語(yǔ)言環(huán)境,標(biāo)準(zhǔn)c的函數(shù)庫(kù),設(shè)置堆棧等,還可以添加其他的庫(kù)文件。將函數(shù)封裝,編譯供自己或其他用戶調(diào)用。其優(yōu)點(diǎn)是庫(kù)文件編譯后看不到源代碼,保密性好;同時(shí)便于維護(hù)。文件格式為“.lib”。3、源文件:有且須有一個(gè)含main()函數(shù)的c語(yǔ)言源程序文件。main()函數(shù)在系統(tǒng)庫(kù)初始化后掌握控制權(quán)。文件格式為“.c”。一個(gè)工程必不可少的幾個(gè)源文件有: (1)dsp28_globalvariabledefs.c:定義全局變量,例如寄存器,中斷向量表等內(nèi)容。 (2)主函數(shù) (3)dsp28_piectrl.c:pie初始化函數(shù)(與中斷相關(guān))。 (4)dsp28_p

18、ievect.c:pie中斷向量表定義及其初始化。 (5)dsp28_sysctrl.c:系統(tǒng)初始化,以保證f2812正常工作。4、cmd文件:dsp系統(tǒng)中有大量的各種存儲(chǔ)器,cmd文件所描述的是開(kāi)發(fā)工程師對(duì)物理存儲(chǔ)器的管理、分配及使用情況。cmd文件的作用是定位dsp代碼。由于dsp的編譯器的編譯結(jié)果是未定位的,dsp無(wú)法定位執(zhí)行代碼,同時(shí)用戶設(shè)計(jì)的dsp系統(tǒng)的配置也不盡相同,因此要自己定義代碼的安裝位置。cmd文件就是在編譯源程序、生成機(jī)器代碼的過(guò)程中發(fā)揮作用。cmd文件包含:(1) 存儲(chǔ)器的資源清單(2) 存儲(chǔ)器的資源分配3.2 正弦波發(fā)生模塊 想要實(shí)現(xiàn)發(fā)出掃頻正弦波,必須要有三個(gè)步驟:

19、(1) 通用定時(shí)器定時(shí);(2) 定時(shí)時(shí)間到后進(jìn)入中斷程序,輸出數(shù)字正弦波;(3) 輸出正弦波通過(guò)通用io口輸出給后續(xù)電路; 其軟件流程圖如下:開(kāi)始n初始化定時(shí)中斷?y進(jìn)入中斷處理函數(shù)n當(dāng)前頻率點(diǎn)送出?yn改變頻率n一次掃頻結(jié)束?ynn禁止中斷,輸出送至io口結(jié)束 圖3.2 掃頻信號(hào)發(fā)生流程圖3.2.1 定時(shí)器模塊f2812共有3個(gè)32位的cpu定時(shí)器, cpu定時(shí)器timer1和timer2用于實(shí)時(shí)操作系統(tǒng)(如dspbios),timer0可以被用戶所用。cpu定時(shí)器結(jié)構(gòu)較簡(jiǎn)單,工作模式較單一,同時(shí)一旦啟動(dòng)就會(huì)循環(huán)往復(fù)工作,因此使用非常方便,所以很適合為用戶程序提供一個(gè)基準(zhǔn)時(shí)鐘實(shí)現(xiàn)軟件各模塊的

20、同步。 圖3.3 cpu定時(shí)器內(nèi)部結(jié)構(gòu)從上圖可以看出,cpu定時(shí)器可以分為16位的分頻器及32位的計(jì)數(shù)器。可將計(jì)數(shù)周期先存到prdh:prd(周期寄存器)中,當(dāng)計(jì)數(shù)器啟動(dòng)時(shí),prdh:prd的值載入timh:tim(計(jì)數(shù)器)中進(jìn)行減計(jì)數(shù),當(dāng)值減為0時(shí),發(fā)出中斷請(qǐng)求信號(hào),同時(shí)計(jì)數(shù)值重新裝載到周期寄存器中。定時(shí)器初始化主要程序如下:void initcputimers(void)cputimer0regs.prd.all =150; /初始化定時(shí)器0周期寄存器cputimer0regs.tim.all = 0; /清零定時(shí)器0的計(jì)數(shù)器cputimer0regs.tpr.all = 0; /初始化定

21、時(shí)器0預(yù)定標(biāo)計(jì)數(shù)器使其分頻系數(shù)為sysclkout/1,即150mhz;cputimer0regs.tprh.all = 0;cputimer0regs.tcr.bit.tss = 1; /停止定時(shí)器0的運(yùn)行 cputimer0regs.tcr.bit.trb = 1; /將周期寄存器prd中的值裝入計(jì)數(shù)器寄存器tim中, /重裝載控制位寫1,控制分頻系數(shù)和計(jì)數(shù)初值的裝載 cputimer0regs.tcr.bit.soft=1; /將soft和free設(shè)為1,在遇到調(diào)試斷點(diǎn)cputimer0regs.tcr.bit.free=1; /定時(shí)器0將繼續(xù)運(yùn)行cputimer0regs.tcr.bi

22、t.tie=1; /使能定時(shí)器0中斷,若計(jì)數(shù)器遞減到0同時(shí)tie位為1,定時(shí)器發(fā)出中斷請(qǐng)求3.2.2 中斷模塊f2812的中斷管理共分為外設(shè)級(jí)、pie級(jí)和cpu級(jí)。由于多種外設(shè)集成于芯片內(nèi)部,會(huì)產(chǎn)生許多外設(shè)中斷,因?yàn)閏pu無(wú)法處理所有的cpu級(jí)中斷請(qǐng)求,因而f2812有一個(gè)專門用于處理判定外設(shè)中斷的中斷擴(kuò)展控制器(pie)。中斷仲裁機(jī)制確定中斷服務(wù)程序的位置的原理是根據(jù)pie向量表存放的每個(gè)中斷服務(wù)程序的地址來(lái)確定。1、外設(shè)級(jí) 一當(dāng)外設(shè)有中斷事件,對(duì)應(yīng)外設(shè)的中斷標(biāo)識(shí)位就會(huì)置1,若對(duì)應(yīng)中斷使能位設(shè)1,那么外設(shè)中斷的請(qǐng)求信號(hào) intx.y就可送至 pie控制器。若外設(shè)的中斷被禁止輸入進(jìn)來(lái),那么外設(shè)

23、中斷標(biāo)志將一直保持為 1,直到軟件清 0。 2、pie 級(jí) pie的中斷都有一個(gè)pieifrx.y(中斷標(biāo)志位) 和一個(gè)pieierx.y(中斷使能位),另外,每個(gè) cpu 中斷組都有一應(yīng)答位 pieackx。若 pie來(lái)了中斷請(qǐng)求,相應(yīng)中斷標(biāo)志位 pieifrx.y就會(huì)置1,若 pieierx.y也為 1,那么 pieackx 就可決定 cpu可否響應(yīng)此中斷。3、cpu級(jí) cpu 級(jí)中斷標(biāo)志寄存器一旦在中斷請(qǐng)求送入后標(biāo)志位就會(huì)置 1。在ier (cpu 中斷使能寄存器)中相應(yīng)位置 1,且intm(全局中斷屏蔽位)為 0的情況下時(shí),cpu會(huì)進(jìn)入中斷。實(shí)現(xiàn)中斷主要語(yǔ)句如下:dint; /禁止中斷

24、eint; /使能intm(全局中斷)ertm; /使能dbgm(全局實(shí)時(shí)中斷)eallow; /有些寄存器受到寫保護(hù),要寫它就先用此語(yǔ)句禁止寫保護(hù),寫自由pievecttable.tint0=&cpu_timer0_isr;edis; /使能寫保護(hù)piectrl.pieier1.bit.intx7=1;/pie級(jí)中斷使能ier|=m_int1;/使能cpu中斷進(jìn)入中斷子程序如下:interrupt void cpu_timer0_isr(void)cputimer0regs.tcr.bit.tif=1;reloadcputimer0(); time+; if(time=fre) time=0

25、; gpiodataregs.gpadat.all=sin_dancount+ ; if(ncount=100) ncount=0;round+;if(round=1000/fre) round=0; fre+; if(fre=100) fre=1; piectrl.pieack.all=pieack_group1;這段程序中ncount用來(lái)一個(gè)周期內(nèi)計(jì)送出的點(diǎn)數(shù),當(dāng)?shù)竭_(dá)一個(gè)周期的100點(diǎn)時(shí),ncount變?yōu)?;fre為從100hz到10khz的100個(gè)不同頻率檔,time是用于定時(shí)器進(jìn)入中斷次數(shù)的計(jì)數(shù),當(dāng)time計(jì)數(shù)值=fre的值時(shí)會(huì)向io送出正弦表的值,同時(shí)time清零;round為不同頻

26、率檔下波形的不同顯示次數(shù),其設(shè)置為1000/fre,即當(dāng)round當(dāng)前值為1000除以當(dāng)前的fre時(shí),說(shuō)明1000/fre個(gè)當(dāng)前頻率下的正弦波已經(jīng)全部送出,fre自動(dòng)加1,round變?yōu)?。3.2.3 gpio模塊gpio就是通用io口。嵌入式系統(tǒng)中常有很多的簡(jiǎn)單外部設(shè)備/電路,對(duì)它們的控制,使用gpio(通用可編程io接口)即可。f2812包含有56個(gè)多功能引腳,其第一功能是作為通用意義數(shù)字i/o口(gpio),為了使用通用i/o,我們需要對(duì)gpio進(jìn)行相應(yīng)的設(shè)置。為了將數(shù)字量的正弦波輸出,設(shè)計(jì)需要通過(guò)設(shè)置gpio實(shí)現(xiàn),具體語(yǔ)句如下:void initgpio(void) eallow; g

27、piomuxregs.gpamux.all=0x0000;/將gpio設(shè)置為通用i/o口 gpiomuxregs.gpadir.all=0x00ff;/設(shè)置gpio為輸出 gpiomuxregs.gpaqual.all=0x0000; /窗寬為0,無(wú)抗噪聲能力 edis;3.3 dac轉(zhuǎn)換模塊dac0832是采用cmos工藝實(shí)現(xiàn)。它是8位分辨率的數(shù)模轉(zhuǎn)換集成芯片。與微處理器完全兼容。這個(gè)da轉(zhuǎn)換器應(yīng)用很廣泛因?yàn)樗啾绕渌酒瑏?lái)說(shuō)價(jià)格低、接口電路簡(jiǎn)單、轉(zhuǎn)換控制容易。dac0832包含有8位dac寄存器、8位輸入寄存器、8位d/a轉(zhuǎn)換器,它的采樣頻率高達(dá)5mhz,因而可以實(shí)現(xiàn)對(duì)需要采樣率高于1mh

28、z的正弦波的采集。 圖3.4 da模塊電路圖如圖所示,da模塊采用的是0832器件手冊(cè)上的應(yīng)用例程。圖中q1的作用是將電流輸出型信號(hào)改為電壓輸出型信號(hào);q2的作用是由于輸出是反向的電壓,因此此處是起到反相器的作用。3.4 陷波網(wǎng)絡(luò)模塊本次設(shè)計(jì)采用的是有源帶阻濾波器。本有源帶阻濾波器主要通過(guò)雙t網(wǎng)絡(luò)實(shí)現(xiàn)。電阻電容組成外圍網(wǎng)絡(luò)和lm358芯片一起實(shí)現(xiàn)功能。通過(guò)電容電阻的諧振作用實(shí)現(xiàn)帯阻作用,通過(guò)358芯片實(shí)現(xiàn)放大信號(hào)的作用。圖3.5 陷波網(wǎng)絡(luò)模塊電路圖圖3.5所示,rf和rf(即r4和r5)選擇了稍大一些的電阻值是為了使電路更穩(wěn)定,這里使用的分別是160k和200k。選擇較小電容也是為了使電路運(yùn)行

29、更穩(wěn)定,這里取c=1pf.帶入fo=1/2rc可得r的值約為27k,考慮到實(shí)際連接電路的問(wèn)題,減少元件的個(gè)數(shù),取r1=r2=56k。其各項(xiàng)參數(shù)如下:r1=r2=r=56k; r3=27kc1=c2 =1nf ; c3=2.2nfr5=rf;r4=rf;中心頻率fo=1/2rc=2.78k帶寬 f2-f1=2(2-kf)=0.4khz增益 kf=1+rf/rf=1.8q點(diǎn) q=1/2(2-kf)=0.1圖3.6 陷波網(wǎng)絡(luò)模塊電路圖使用multsim中的波特圖實(shí)現(xiàn)了仿真,如圖3.6所示。3.5 信號(hào)調(diào)理電路模塊其電路圖如下圖所示: 圖3.7 信號(hào)調(diào)理電路圖中r6以及r7用于分壓,使信號(hào)電壓降低在d

30、sp所要求的03v內(nèi),后面利用lm358制成的電壓跟隨器,以“隔離”前后級(jí)之間的影響。3.6 ad采集模塊ad采集模塊實(shí)現(xiàn)信號(hào)采集需要如下兩個(gè)步驟:(1)利用事件管理器中的定時(shí)器定時(shí)決定采樣頻率;(2)設(shè)置adc模塊;其軟件流程圖如下所示,開(kāi)始dsp初始化adc模塊初始化配置adc配置eva設(shè)置定時(shí)器1ad采集中斷服務(wù)程序入口ad采樣,將采樣結(jié)果送入循環(huán)采樣數(shù)組采樣滿512次?消除ad中斷標(biāo)志開(kāi)總中斷中斷返回ny 圖3.8 信號(hào)調(diào)理電路3.6.1 事件管理器定時(shí)設(shè)置在ad采集過(guò)程中,利用事件管理器ev的通用定時(shí)器實(shí)現(xiàn)采樣頻率的確定。事件管理器包括eva和evb,有通用定時(shí)器1、2、3、4,每個(gè)

31、定時(shí)器有如下特點(diǎn):16 位txcnt(定時(shí)器增/減計(jì)數(shù)器)。16 位txcmpr(定時(shí)器比較寄存器)。 16 位txpr(定時(shí)器周期控制寄存器)。 16 位txcon(定時(shí)器控制寄存器)。 一個(gè)txcmp用于通用定時(shí)器比較輸出。定時(shí)器按照寄存器 txcon 中的 tmode1,tmode0 位確定的工作模式工作分別是停止/保持模式、連續(xù)增計(jì)數(shù)模式、定向增/減計(jì)數(shù)模式還是連續(xù)增/減計(jì)數(shù)模式,較為常用的是第二種和第三種。本設(shè)計(jì)采用的是連續(xù)增計(jì)數(shù)模式,下圖為其工作模式圖: 圖3.9 通用定時(shí)器連續(xù)增計(jì)數(shù)模式當(dāng)計(jì)數(shù)器和周期寄存器在一個(gè)時(shí)鐘周期匹配時(shí),中斷標(biāo)志位會(huì)置為1。在外設(shè)中斷未被屏蔽的情況下將產(chǎn)生

32、外設(shè)中斷請(qǐng)求。此周期中斷通過(guò) gptcona開(kāi)啟adc,中斷標(biāo)志置1,同時(shí)ad啟動(dòng)信號(hào)送至ad。具體實(shí)現(xiàn)語(yǔ)句如下:evaregs.t1cmpr=0xfd11;/給比較寄存器賦值evaregs.t1pr=0xffff; /給周期寄存器賦值evaregs.gptcona.bit.t1toadc=1; / eva 中的通用定時(shí)器1中斷產(chǎn)生ad啟動(dòng) evaregs.t1con.all=0x1042; /遞增模式,x/1分頻,內(nèi)部時(shí)鐘,使能比較,使用自己的周期,立即啟動(dòng)定時(shí)器計(jì)數(shù)3.6.2 adc設(shè)置模塊adc(模數(shù)轉(zhuǎn)換器)有 16個(gè)12位通道,可通過(guò)軟件設(shè)置成兩個(gè)8 通道,或一個(gè) 16 通道,本次設(shè)計(jì)

33、因?yàn)橹恍枰斎胍粋€(gè)通道,所以兩種方式都沒(méi)有什么影響。adc 包含一個(gè)轉(zhuǎn)換器,兩個(gè)排序器。排序器在級(jí)聯(lián)模式下變?yōu)閱?16 通道。轉(zhuǎn)換完成后結(jié)果存放在adcresult里。它比普通單采樣轉(zhuǎn)換分辨率高是因?yàn)樽詣?dòng)排序器允許相同通道多次轉(zhuǎn)換,因而可以實(shí)現(xiàn)過(guò)采樣算法。 圖3.10 adc模塊原理框圖其原理如圖3.9所示。排序器分別有seq1和seq2,也可級(jí)聯(lián)為seq。其作用是自動(dòng)排序多個(gè)轉(zhuǎn)換。若只需要一個(gè)通道輸入信號(hào),16個(gè)通道任意一個(gè)都可選擇。轉(zhuǎn)換之后結(jié)果就存于相應(yīng)的adcresultn(結(jié)果寄存器)中。 ad有順序采樣以及同時(shí)采樣兩種工作模式。利用對(duì)convxx 位(位于排序寄存器中)置不同的值確定

34、用于ad采集的信號(hào)從哪個(gè)管腳輸入。本次設(shè)計(jì)采用的是級(jí)聯(lián)順序采樣的模式,則convxx 中共有 4 個(gè)位定義是從哪個(gè)管腳輸入。采樣保持器 a(s/h-a)的任意一個(gè)輸入管腳是從0到7中任意一個(gè)數(shù)表示。例如,若 convxx 中的值為 5,則選擇需要進(jìn)行ad轉(zhuǎn)換信號(hào)的輸入管腳為 adcina5。采樣保持器 b(s/h-b)的任意一個(gè)輸入管腳是從8到15中任意一個(gè)數(shù)表示。例如,若convxx 中的值為11,則選擇 adcinb3管腳。在本次設(shè)計(jì)中,采用的輸入管腳是adcina3,因此convxx 中的值為2進(jìn)入中斷程序的作用為:定時(shí)時(shí)間到后程序進(jìn)入中斷模塊,每次進(jìn)入中斷采樣一次,之后進(jìn)行中斷標(biāo)志位清

35、除,響應(yīng)中斷等過(guò)程而重新等待進(jìn)入中斷;當(dāng)采樣點(diǎn)數(shù)為512時(shí),采樣結(jié)束。3.7fft模塊dft(傅里葉變換)用于信號(hào)分析處理,它是一種非常重要的變換。但是直接計(jì)算dft的計(jì)算量與變換區(qū)間長(zhǎng)度n的平方成正比,但是它比較難在實(shí)際應(yīng)用中實(shí)現(xiàn),尤其是處理大量采樣點(diǎn)時(shí),計(jì)算量將會(huì)非常大。20世紀(jì)中科學(xué)家發(fā)現(xiàn)了dft的一種快速算法,使dft的運(yùn)算效率提高,推動(dòng)數(shù)字信號(hào)的發(fā)展。一個(gè)n點(diǎn)序列x(n)的dft為: (3-1)為了減少運(yùn)算量,把n點(diǎn)dft分解為幾個(gè)短dft,可使計(jì)算量大幅度減少。另外,旋轉(zhuǎn)因子w的周期性、對(duì)稱性可以減少不必要的計(jì)算。具體方法如下: 分把一個(gè)n點(diǎn)的序列分解為若干個(gè)較短的序列,分別計(jì)算其

36、dft值; 利用旋轉(zhuǎn)因子的周期性、對(duì)稱性進(jìn)行處理。 周期性: (3-2) 對(duì)稱性: (3-3)時(shí)域抽取法f思想: 首先,n點(diǎn)序列x(n)分為奇序列x2(n)和偶序列x1(n),分別計(jì)算這兩個(gè)序列可求得x(n)的fft。 (3-4)那么x(n)的dft可寫為: (3-5)因?yàn)閤1(k)和x2(k)的周期都是n/2,同時(shí)由于 , x(k)又可表示為: (3-6)如上式表明,一個(gè)n點(diǎn)dft分兩個(gè)n/2點(diǎn)的dft,圖3.9表示了上式的運(yùn)算過(guò)程,其成為蝶形運(yùn)算。 圖3.9 蝶形運(yùn)算符號(hào)第二次分解: 將按r取奇、偶分為2個(gè)n/4點(diǎn)的序列 l=0,1,,n/4-1; (3-7) (3-8)將也按r取奇、偶可

37、分解成2個(gè)長(zhǎng)n/4的子序列 , 同理得在f2812中,ti公司直接提供了用于計(jì)算fft的函數(shù),因此給我們帶來(lái)了很大方便,我們只要學(xué)會(huì)使用計(jì)算fft的如何使用語(yǔ)句即可。實(shí)現(xiàn)fft過(guò)程如下:fft256.ipcbptr=ipcb;/cal()函數(shù)處理數(shù)據(jù)起始位置fft256.init(&fft256);/復(fù)制旋轉(zhuǎn)因子for(i=0;isamplelong/2;i+)ipcbi = ad_datai;rfft32_brev(ipcb,ipcb,n);/位倒序處理fft256.calc(&fft256);/調(diào)用256點(diǎn)復(fù)數(shù)fft運(yùn)算fft256.split(&fft256);/劈分256點(diǎn)復(fù)數(shù)結(jié)果m=

38、0;for(i=0;isamplelong/2;i+=2) p=ipcbi;q=ipcbi+1; n=p*p+q*q; n=sqrt(n); modm=n; m+;程序中ipcb是用來(lái)存放傅里葉變換后x(k)的數(shù)組,它是復(fù)數(shù)形式a+bi,存放形式是實(shí)部和虛部間隔存儲(chǔ),因而需要利用求n來(lái)計(jì)算它的模值。 第4章 設(shè)計(jì)結(jié)果(1) 掃頻信號(hào):用示波器觀察,如下圖所示:圖4.1 掃頻信號(hào)用示波器觀察,da轉(zhuǎn)換后信號(hào)幅值為2v*2.6=5.2v,周期為0.5ms*3=1.5ms=667hz作為輸出信號(hào)接后續(xù)電路。(2) 陷波網(wǎng)絡(luò):用示波器觀察,結(jié)果如下。圖4.2 通過(guò)陷波網(wǎng)絡(luò)的波形在通過(guò)陷波網(wǎng)絡(luò)掃頻信號(hào)如

39、圖4.2所示,左邊是經(jīng)過(guò)陷波網(wǎng)絡(luò)的不是頻率為3khz的正弦波,右邊是經(jīng)過(guò)陷波網(wǎng)絡(luò)的頻率為3khz的正弦波,二者的具體數(shù)據(jù)如下:頻率幅值左圖t=0.5ms*2.6=1.3msf=770hz2v*4.5=9v右圖t=0.5ms*0.7=0.35msf=2.86khz1v*1.8=1.8v用示波器觀察,經(jīng)過(guò)陷波網(wǎng)絡(luò)模塊后其他頻率信號(hào)幅值為4.6*2=9.2v,大約是輸入信號(hào)5.2v的1.769倍,約等于1.8倍,符合增益kf=1.8(3) 調(diào)理電路:里用示波器觀察,結(jié)果如下圖所示:圖4.3 通過(guò)調(diào)理電路的波形頻率幅值左圖t=0.5ms*3=1.5msf=667hz1v*2=2v右圖t=0.5ms*0

40、.7=0.35msf=2.86khz1v*0.4=0.4v(4)ad采樣:用ccs3.1中的viewgraphtime/frequency觀察結(jié)果,如下圖所示。圖4.4 1khz正弦波ad采樣結(jié)果觀察橫坐標(biāo)是時(shí)域的,一個(gè)周期波形采集回來(lái)之后橫坐標(biāo)間隔為0.001,單位為s,因此采集到的正弦波的頻率為1khz。(5)fft結(jié)果觀察:用ccs3.1中的viewgraphtime/frequency項(xiàng)觀察,如下圖所示。圖4.5 輸入波形fft結(jié)果輸入的是1khz正弦波,ccs直接分析出輸入波形的頻率,正好在1khz處有一峰值,同時(shí)由于輸入的是單極性正弦波,因此在頻率為0處有一個(gè)直流分量(橫坐標(biāo)為頻率

41、域)。圖4.6 1khz正弦波輸入計(jì)算fft結(jié)果圖4.5輸出的是經(jīng)過(guò)dsp計(jì)算1khz正弦波fft的結(jié)果,由于它的橫坐標(biāo)是時(shí)域,因此橫坐標(biāo)為9.2*10(-4),取倒數(shù)結(jié)果約為1khz,縱坐標(biāo)誤差較大。最后是畢業(yè)作品的實(shí)物圖:圖4.6 作品實(shí)物圖第5章 總結(jié)與展望5.1 總 結(jié)在前期準(zhǔn)備中,我主要復(fù)習(xí)了c語(yǔ)言,學(xué)習(xí)dsp以及濾波器相關(guān)知識(shí),設(shè)計(jì)過(guò)程中通過(guò)各種途徑我查閱了很多資料,例如圖書館、上網(wǎng)等,將這些資料全部記錄下來(lái),盡量使我的資料完整、精確、數(shù)量多,為完成畢業(yè)設(shè)計(jì)做充分準(zhǔn)備 。之后就開(kāi)始進(jìn)行軟硬件的各種設(shè)計(jì),編程,學(xué)習(xí)ccs集成開(kāi)發(fā)環(huán)境,學(xué)習(xí)建立工程,學(xué)習(xí)利用dsp的各部分模塊來(lái)實(shí)現(xiàn)畢業(yè)

42、設(shè)計(jì)要求的功能,學(xué)習(xí)設(shè)計(jì)濾波器,da以及調(diào)理電路,不斷明確設(shè)計(jì)思路,改進(jìn)設(shè)計(jì)方案,最終敲定一個(gè)相對(duì)比較具體又可以實(shí)現(xiàn)的方案,開(kāi)始進(jìn)一步設(shè)計(jì)。接著對(duì)設(shè)計(jì)出來(lái)的東西進(jìn)行調(diào)試修改,使其達(dá)到需要的功能,這個(gè)過(guò)程比較吃力,是一個(gè)不斷排查以及修改的過(guò)程,費(fèi)時(shí)較多。最后進(jìn)行論文的編寫。本次設(shè)計(jì)基本實(shí)現(xiàn)了畢業(yè)設(shè)計(jì)的要求:(1)發(fā)出了掃頻信號(hào),頻率為100hz10khz;(2)制作了中心頻率為3khz的陷波網(wǎng)絡(luò);(3)實(shí)現(xiàn)了ad采集以及fft分析,可以分析100hz到10khz的單一正弦波。但是fft分析精度不太高,也只能分析單一輸入頻率,因此有些不完美。5.2 展 望 本次設(shè)計(jì)精度不太高,因而以后如果想要進(jìn)一

43、步把它做得更好,精度這一塊可以多下一些工夫提高;同時(shí),由于用電腦顯示頻譜,所以便攜方面是一個(gè)問(wèn)題,今后可以用液晶的方式顯示頻譜,便可增加它的便攜性。參考文獻(xiàn)1 萬(wàn)山明編著。tms320f281x dsp原理及應(yīng)用實(shí)例. 北京:北京航空航天大學(xué)出版社,2007wan ming-shan. the principle and application example of tms320f281x dsp. beijing: beijing university of aeronautics and astronautics press, 2007.2 蘇奎峰、呂強(qiáng)、耿慶鋒、陳圣儉編著。tms320f2812原理與開(kāi)發(fā).,北京:電子工業(yè)出版社,2005su kui-feng,lv qiang,geng qing-feng,chen sheng-jian. the principle and development of tms320f2812. beijing: publishing house of electronics industry, 2005.3 蘇奎峰、呂強(qiáng)、常天慶、張永秀編著。 tms320x281x+dsp原理及c程序開(kāi)發(fā) 北京:北京航空

溫馨提示

  • 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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)論