DSP課程設(shè)計報告數(shù)據(jù)采集處理和控制系統(tǒng)設(shè)計_第1頁
DSP課程設(shè)計報告數(shù)據(jù)采集處理和控制系統(tǒng)設(shè)計_第2頁
DSP課程設(shè)計報告數(shù)據(jù)采集處理和控制系統(tǒng)設(shè)計_第3頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、數(shù)據(jù)采集處理和控制系統(tǒng)設(shè)計一 課程設(shè)計要求基本DSP硬件系統(tǒng)設(shè)計要求 基本DSP硬件系統(tǒng)以TMS320C54X系列為核心處理器,包括最小系統(tǒng)、存儲器擴(kuò)展、顯示器、鍵盤、AD、DA等電路模塊; 硬件設(shè)計畫出主要芯片及電路模塊之間的連接即可,重點(diǎn)考查電路模塊方案設(shè)計與系統(tǒng)地址分配; 設(shè)計方案以電路示意圖為主,輔以必要的文字說明。1. 基本軟件設(shè)計要求 看懂所給例程,畫出例程輸出波形示意圖; 修改例程程序,使之輸出其它波形,如方波、三角波、鋸齒波等均可; 設(shè)計方案以程序?qū)崿F(xiàn)為主,輔以必要的文字說明。2. 課程設(shè)計報告要求 硬件系統(tǒng)設(shè)計:設(shè)計思路、設(shè)計系統(tǒng)功能、主要芯片選型及使用方法、設(shè)計方案說明、電

2、路示意圖 軟件系統(tǒng)設(shè)計:示例程序功能解讀及輸出波形示意圖、設(shè)計軟件功能、設(shè)計思路、實(shí)現(xiàn)源碼(帶程序注釋) 報告總結(jié)系統(tǒng)分析利用實(shí)驗(yàn)箱的模擬信號產(chǎn)生單元產(chǎn)生不同頻率的信號,或者產(chǎn)生兩個頻率的信號的疊加。在DSP中采集信號,并且對信號進(jìn)行頻譜分析,濾波等。通過鍵盤或者串口命令選擇算法的功能,將計算的信號頻率或者濾波后信號的頻率在LCD上顯示。主要功能如下:對外部輸入的模擬信號采集到DSP內(nèi)存,會用CCS軟件顯示采集的數(shù)據(jù)波形。(2)對采集的數(shù)據(jù)進(jìn)行如下算法分析: 頻譜分析:使用fft算法計算信號的頻率。 對信號進(jìn)行IIR濾波或FIR濾波,并且計算濾波前后信號的頻率。 外部鍵盤或者從計算機(jī)來的串口命

3、令選擇算法功能,并且將結(jié)果在LCD上顯示。繪制出DSP系統(tǒng)的功能框圖、使用AD(AltiumDesigner)繪制出系統(tǒng)的原理圖和PCB版圖。在DSP中采集信號,用CCS軟件顯示采集的數(shù)據(jù)波形,以及對采集的數(shù)據(jù)進(jìn)行算法分析。二 硬件設(shè)計3.1硬件總體結(jié)構(gòu)CLKSD15.O16A19.O20CONTROLPower(73HD3XX)111MX16BITFLASHWEOE復(fù)位電路TMS32054XRESETCErz>16XDS510JTAG-«£EE-z-一二-s-31&r=2£rEprFr=s-I-EE""-<ei-13HHa

4、-87V«j3.3電源模塊設(shè)計3UaAL11=3!IKESF7KStaOCTIiJi-:GKDIAT將5V電源電壓轉(zhuǎn)換為3.3V和1.6V電源3.4時鐘模塊設(shè)計此處由外部晶振提供時鐘信號GNDGNDCLKX23OUTVCCJGND11lCLK5UJGN1>0IuFLI3.5存儲器模塊設(shè)計DSP上只有一個讀寫控制信號引腳,而FLASHt兩個引腳,將讀、寫分開,-1TV-1TV備匸VI曙7E卯42d-An-flBfljD-1*-Jfl-s忙故在0E上接一個非門電路,實(shí)現(xiàn)高時讀,低時寫。FLASH上的地址線和數(shù)據(jù)線與DSP上的地址線、數(shù)據(jù)線相連3.6JATG模塊設(shè)計GNDGND板上包

5、括了支持TMS320VC541獨(dú)立運(yùn)行的時鐘電路、復(fù)位電路、Flash模塊、JTAG仿真接口電路以及電源模塊等。為節(jié)省空間和材料,部分器件放在了反面。四軟件設(shè)計4.1正弦波信號發(fā)生器所給例程輸出波形為正弦波,波形如下圖所示:4&0040003&0030002S002000150010QQ5000s1015202530354.2三角波(方波)信號發(fā)生器*三角波信號發(fā)生程序(括號內(nèi)為方波)*.mmregs.defstartk1.usect"k",1outdatal.set0800h(0800h)outdata2.set09ffh(0fffh)outdata3.s

6、et0affh(0fffh)outdata4.set0bffh(0fffh)outdata5.set0cffh(0fffh)outdata6.set0dffh(0fffh)outdata7.set0effh(0fffh)outdata8.set0fffh(0fffh)outdata9.set1000h(0fffh)outdata10.set0fffh(0fffh)outdata11.set0effh(0fffh)outdata12.set0dffh(0fffh)outdata13.set0cffh(0fffh)outdata14.set0bffh(0fffh)outdata15.set0aff

7、h(0fffh)outdata16.set09ffh(0fffh)outdata17.set08ffh(0800h)outdata18.set07ffh(0000h)outdata19.set06ffh(0000h)outdata20.set05ffh(0000h)outdata21.set04ffh(0000h)outdata22.set03ffh(0000h)outdata23.set02ffh(0000h)outdata24.set01ffh(0000h)outdata25.set00ffh(0000h)outdata26.set01ffh(0000h)outdata27.set02ff

8、h(0000h)outdata28.set03ffh(0000h)outdata29.set04ffh(0000h)outdata30.set05ffh(0000h)outdata31.set06ffh(0000h)outdata32.set07ffh(0000h)/定義輸出數(shù)據(jù).textstart:stm2000h,sp/置堆棧指針stm#k1,ar2/將操作數(shù)#k1裝入ar2st#outdata1,*ar2/將數(shù)據(jù)送到*ar2nopnopbegin:st#outdata1,*ar2portw*ar2,0bfffh/將*ar2內(nèi)容從D/A轉(zhuǎn)換器輸出rpt#7fffh/等待一段時間nopst#

9、outdata5,*ar2portw*ar2,0bfffhrpt#7fffhnopst#outdata6,*ar2portw*ar2,0bfffhrpt#7fffhnopst#outdata7,*ar2portw*ar2,0bfffhrpt#7fffhnopst#outdata8,*ar2portw*ar2,0bfffhrpt#7fffhnopst#outdata9,*ar2portw*ar2,0bfffhrpt#7fffhnopst#outdata10,*ar2portw*ar2,0bfffhrpt#7fffhnopst#outdata11,*ar2portw*ar2,0bfffhrpt#7

10、fffhnopst#outdata12,*ar2portw*ar2,0bfffhrpt#7fffhnopst#outdata16,*ar2portw*ar2,0bfffhrpt#7fffhnopst#outdata17,*ar2portw*ar2,0bfffhrpt#7fffhnopst#outdata18,*ar2portw*ar2,0bfffhrpt#7fffhnopst#outdata19,*ar2portw*ar2,0bfffhrpt#7fffhnopst#outdata20,*ar2portw*ar2,0bfffhrpt#7fffhnopst#outdata21,*ar2portw*

11、ar2,0bfffhrpt#7fffhnopst#outdata22,*ar2portw*ar2,0bfffhrpt#7fffhnopst#outdata23,*ar2portw*ar2,0bfffhrpt#7fffhnopst#outdata27,*ar2portw*ar2,0bfffhrpt#7fffhnopst#outdata28,*ar2portw*ar2,0bfffhrpt#7fffhnopst#outdata29,*ar2portw*ar2,0bfffhrpt#7fffhnopst#outdata30,*ar2portw*ar2,0bfffhrpt#7fffhnopst#outda

12、ta31,*ar2portw*ar2,0bfffhrpt#7fffhnopst#outdata32,*ar2portw*ar2,0bfffhrpt#7fffhnopbbegin/循環(huán)輸出32個數(shù)據(jù).end/代碼段結(jié)束4.3本系統(tǒng)軟件總體流程4.4核心模塊及實(shí)現(xiàn)代碼piLength,intn,intpiLength,intn,intk,doubleFFT算法程序:voidkfft(doubleprLength,doublefrLength,doublefiLength,intl,intil)intit,m,is,i,j,nv,IO;doublep,q,s,vr,vi,poddr,poddi;fo

13、r(it=0;it<=n-1;it+)m=it;is=0;for(i=0;i<=k-1;i+)j=m/2;is=2*is+(m-2*j);m=j;frit=pris;fiit=piis;pr0=1.0;pi0=0.0;p=6.6/(1.0*n);pr1=cos(p);pi1=-sin(p);if(l!=0)pi1=-pi1;for(i=2;i<=n-1;i+)p=pri-1*pr1;q=pii-1*pi1;s=(pri-1+pii-1)*(pr1+pi1);pri=p-q;pii=s-p-q;for(it=0;it<=n-2;it=it+2)vr=frit;vi=fii

14、t;frit=vr+frit+1;fiit=vi+fiit+1;frit+1=vr-frit+1;fiit+1=vi-fiit+1;m=n/2;nv=2;for(l0=k-2;l0>=0;l0-)m=m/2;nv=2*nv;for(it=0;it<=(m-1)*nv;it=it+nv)for(j=0;j<=(nv/2)-1;j+)p=prm*j*frit+j+nv/2;q=pim*j*fiit+j+nv/2;s=prm*j+pim*j;s=s*(frit+j+nv/2+fiit+j+nv/2);poddr=p-q;poddi=s-p-q;frit+j+nv/2=frit+j-

15、poddr;fiit+j+nv/2=fiit+j-poddi;frit+j=frit+j+poddr;fiit+j=fiit+j+poddi;if(l!=0)for(i=0;i<=n-1;i+)fri=fri/(1.0*n);fii=fii/(1.0*n);if(il!=0)for(i=0;i<=n-1;i+)pri=sqrt(fri*fri+fii*fii);if(fabs(fri)<0.000001*fabs(fii)if(fii*fri)>0)pii=90.0;elsepii=-90.0;elsepii=atan(fii/fri)*360.0/6.6;卷積程序:v

16、oidConvolveok(/卷積函數(shù)double*x,/原始輸入數(shù)據(jù)double*h,/沖擊響應(yīng)double*y,/卷積輸出結(jié)果UINT16Leng,/序列長度UINT16h_Len)UINT16m,p,j;doubler,rm;doublexmean=0.0;doublexmid100;for(m=0;m<h_Len;m+)xmidm=0.0;for(m=0;m<Leng;m+)xmean=xm+xmean;xmean=1.0*xmean/Length;for(m=0;m<Leng;m+)xm=xm-xmean;for(m=0;m<Leng;m+)for(p=0;p

17、<h_Len;p+)xmidh_Len-p-1=xmidh_Len-p-2;xmid0=xm;r=0.0;rm=0.0;for(j=0;j<h_Len;j+)r=xmidj*hj;rm=rm+r;ym=rm;求最大值和次大值函數(shù):voidmax()intk1,k2;/k1最大值,k2次最大值intr;for(r=0;r<16;r+)if(prk1<prr)k1=r;for(r=20;r<64;r+)if(prk2<prr)k2=r;f0=250000.0/256*k1;f1=250000.0/256*k2;fc=(f0+f1)/2;歸一化函數(shù):voidavg

18、()intj;sum=0.0;for(j=0;j<256;j+)sum+=(data_buffj/256.0);for(j=0;j<256;j+)prj=data_buffj-sum;pij=0.0;FIR濾波器設(shè)計函數(shù):求h(n)voidfirdes(doublenpass)/intt;for(t=0;t<FLen;t+)ht=sin(t-(FLen-1)/2.0)*npass*3.1415926)/(3.1415926*(t-(FLen-1)/2.0);if(t=(FLen-1)/2)ht=npass;外部中斷2服務(wù)函數(shù):voidinterruptExtlnt2(void

19、)inti1,j;*(unsignedint*)IFR=0xFFFF;/清除所有中斷標(biāo)志data_buffi1=port8002&0x00ff;i1+;if(i1=256)avg();kfft(pr,pi,256,8,fr,fi,0,1);max();npass=fc/250000.0;firdes(npass);Convolveok(data_buff,h,y,256,51);for(j=0;j<256;j+)yrj=yj;yij=0.0;kfft(yr,yi,256,8,Yr,Yi,0,1);flag=1;i1=0;4.5程序運(yùn)行效果采集的數(shù)據(jù)及其FFT計算結(jié)果51階濾波器H(n)波形濾波前后信號頻譜圖:由濾波前后高低頻分量的相對大小證明低通濾波器對高頻分量的衰減作用比較強(qiáng),但沒有完全濾出去采集數(shù)據(jù)波形與濾波后波形比較由圖可見濾波后信號中的高頻分量得到了較大的衰減,濾波后波形變得平滑。由圖可見濾波后信號中的高頻分量得到了較大的衰減,濾波后波形變得平滑。五課程設(shè)計總結(jié)DSP芯片有更適合于數(shù)字信號處理的軟件和硬件資源,非常適合于通用數(shù)字信號處理的開發(fā),為數(shù)字信號處理的應(yīng)用打開了新局面。學(xué)好DSP技術(shù)具有非常重要的意義。通過此次課程設(shè)計,我學(xué)

溫馨提示

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

評論

0/150

提交評論