![dsp-正弦波信號發(fā)生器課程設計._第1頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/21/1cd00a56-1039-4898-aa8e-f80eb0ee70e4/1cd00a56-1039-4898-aa8e-f80eb0ee70e41.gif)
![dsp-正弦波信號發(fā)生器課程設計._第2頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/21/1cd00a56-1039-4898-aa8e-f80eb0ee70e4/1cd00a56-1039-4898-aa8e-f80eb0ee70e42.gif)
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、探探 2009 級學生 DSP 原理及應用課程設計探探太原理工大學DSP 原理及應用 課程設計報告書 課題名稱正弦波信號發(fā)生器 姓名學號院、系、部專業(yè)正弦波信號發(fā)生器課程設計一、課程設計基礎數(shù)字信號處理(Digital Signal Processing,簡稱 DSP)是一門涉及許多學科而又廣泛 應用于許多領域的新興學科。數(shù)字信號處理是利用計算機或專用處理設備,以數(shù) 字的形式對信號進行分析、采集、合成、變換、濾波、估算、壓縮、識別等加工 處理,以便提取有用的信息并進行有效的傳輸與應用。數(shù)字信號處理是以眾多學 科為理論基礎,它所涉及的范圍極其廣泛。如數(shù)學領域中的微積分、概率統(tǒng)計、隨 機過程、數(shù)字
2、分析等都是數(shù)字信號處理的基礎工具。它與網(wǎng)絡理論、信號與系 統(tǒng)、控制理論、通信理論、故障診斷等密切相關。一個典型的 DSP 系統(tǒng)應包括抗混疊濾波器、數(shù)據(jù)采集A/D 轉換器、數(shù)字信號處理器 DSP、D/A 轉換器和低通濾波器等組成。披潘.5 頁町叢林號賀叭MAM濾渡*特換黠 櫃浪籍DSP 信號處理過程:1將輸入信號 x(t)進行抗混疊濾波,濾掉高于折疊頻率的分量,以防止信號頻譜 的混疊;2經(jīng)采樣和 A/D 轉換器,將濾波后的信號轉換為數(shù)字信號 x(n);數(shù)字信號處 理器對x(n)進行處理,得數(shù)字信號 y(n);經(jīng) D/A 轉換器,將 y(n)轉換成模擬信號;經(jīng)低通濾波器,濾除高頻分量,得到平滑的模
3、擬信號y(t)。二、 課程設計目的1、 了解 DSP 對數(shù)據(jù)的處理能力2、 利用 DSP 實現(xiàn)正弦信號發(fā)生器三、 課程設計總體方案1. 總體方案設計1基于 DSP 的特點,本設計采用 TMS320C54X 系列的 DSP 作為正弦信號發(fā)生器 的核心控制芯片。2用泰勒級數(shù)展開法實現(xiàn)正弦波信號。3設置波形時域觀察窗口,得到其濾波前后波形變化圖;4設置頻域觀察窗口,得到其濾波前后頻譜變化圖。2. 正弦波信號發(fā)生器正弦波信號發(fā)生器已被廣泛地應用于通信、儀器儀表和工業(yè)控制等領域的信號處理系統(tǒng)中。通常有兩種方法可以產生正弦波,分別為查表法和泰勒級數(shù)展開法。查表法是通過查表的方式來實現(xiàn)正弦波,主要用于對精度
4、要求不很高的場合。泰勒級數(shù)展開法是根據(jù)泰勒展開式進行計算來實現(xiàn)正弦信號, 它能精確地計算出一一 個角度的正弦和余弦值,且只需要較小的存儲空間。本次主要用泰勒級數(shù)展開法來實現(xiàn)正弦波信號。產生正弦波的算法正弦函數(shù)和余弦函數(shù)可以展開成泰勒級數(shù),其表達式:sin(x)=x-x33!x2+x55!x4-x77!x6+x99!x8- cos(x)=1-2!+4!-6!+8!-取泰勒級數(shù)的前 5 項,得近似計算式:sin(x)=x-x33!+xx255!-x77!+x2x99! =x(1-2 ? 3(1-4? 5(1-x26? 7(1-x28? 9)cos(x)=1- =1-xx22!2+x44!-xx26
5、6!+x88!x22(1-3? 4(1-5? 6(1-x27? 8)遞推公式:sin(nx) = 2cos(x)si n(n-1)x-si n(n-2)xcos( nx) = 2cos(x)si n(n-1)x-cos (n-2)x由遞推公式可以看出,在計算正弦和余弦值時,需要已知 cos(x)、sin(n-1)x、sin(n- 2)x和 cos(n-2)x。四、 課程設計內容1用泰勒級數(shù)展開法計算 sin(x)的值;2.用泰勒級數(shù)展開法計算 con(x)的值;3用泰勒級數(shù)展開法產生正弦波。五、課程設計步驟1 用泰勒級數(shù)展開法計算 sin(x)的值:1 在 CCS 中建立項目:sinx.pjt
6、,裝載程序并運行;2. 在程序 sinx.asm 中,給出的 x 的值為 pi/4=6487 弧度。如果改變 x 在程序中的 值,便可以計算其他角度的正弦值。3. 執(zhí)行結果 sin(pi/4)=5A81H,存儲在數(shù)據(jù)存儲器 d_sinx(2003H)單元中。用查看 寄存器的方法可以看到此結果。2 用泰勒級數(shù)展開法計算 cos(x)的值:1. 在 CCS 中建立項目:cosx.pjt,裝載程序并運行;2. 在程序 cosx.asm 中,給出的 x 的值為 pi/4=6487 弧度。如果改變 x 在程序中的 值,便可以計算其他角度的余弦值。3. 執(zhí)行結果 sin(pi/4)=5A82H,存儲在數(shù)據(jù)
7、存儲器 d_sinx(2003H)單元中。用查看 寄存器的方法可以看到此結果。3、用泰勒級數(shù)展開法產生正弦波:1.在 CCS 中建立項目:sin.pjt,裝載程序;2.在程序的適當處加上一個斷點。作用:這里定義了一個顯示緩沖區(qū)dis_buf,將要輸出到 D/A 的數(shù)據(jù)送到顯示緩沖區(qū)當中去,以便在 CCS 圖形顯示的時候可 以從圖形顯示中得到數(shù)據(jù)。3.打開 CCS 的圖形顯示窗口, 修改如下參數(shù):Start Address=0 x1010 Page=DataAcquisition Buffer Size=1、Display Data Size=1000; DSP Data Type=16-bit
8、 sig ned integer 修改后的界面如下:Q Graph Property DialogA1 Display TypeSingle TimeA| Graph TitleGraphical DisplayStart AddrWEM0 x1010Pag?*Date.Acquisition. Buffer Size1Index liter em ent1Display Data Si ze1000DSF Data Type16-lit signed integerQ-value0Sampling Rate Q工IPlot Data FromLftft to RightLeftshi fte
9、d Bata D1i splayYesAutoscaleOnDC Valu*0Axes DisplayOnTim Display Unit7S| Cancel | Help4.點擊 CCS 的 Debug/Animate 運行此程序,就可以在 CCS 的圖形觀察窗口看到 正弦波的顯示。注:Animate 運行方式是在遇見斷點后繼續(xù)執(zhí)行的一種方式,在 顯示圖形是特別方便,顯示效果如下:參考程序:*用泰勒級數(shù)開展開式計算一個角度的正弦值* *si n(x)=x(1-x*x/2*3(1-x*x/4*5(1-x*x/6*7(1-x*x/8*9)*.mmregs.def startSTACK: .use
10、ctstart:STMLD #d_x,DP;x-d_x STACK,10 #STACK+10,SP ST #6487H,d_xCALL sin_startend: B endsin _start:.def sin _startd_coeff .usect coeff,4.datatable: .word 01C7H.word 030BH.word .word 0666H 1556H ;c1= 1/(8*9) ;c2=1/(6*7) ;c3=1/(4*5) ;c4=1/(2*3) d_x .usect sin _vars,1d_squr_x .usect s in _vars,1d_temp .
11、usect d_sinx .usect c_1 .usect .text SSBX STM RPT #3 MVPD #table,*AR5+.title sinx.asmSTM #d_coeff,AR3 STM #d_x,AR2 sin_vars,1 sin_vars,1 sin_vars,1 FRCT#d_coeff,AR5STM #c_1,AR4 ;A=xA2 ;(AR2)=xA2 ;B=1 ;A=1-xA2/72,T=xA2;A=T*A=xA2(1-xA2/72) ST#7FFFH,c_1 SQUR *AR2+,A ST A,*AR2 |LD *AR4,B MPYA A MASR*AR2
12、+,*AR3+,B,A STH A,*AR2 ;(d_temp)=xA2(1-xA2/72) MASR*AR2- ,*AR3+,B,A ;A=1-xA2/42(1-xA2/72),T=xA2(1-xA2/72) MPYA *AR2+ ST B,*AR2|LD *AR4,B ;B=xA2(1-xA2/42(1-xA2/72) ;(d_temp)=xA2(1-xA2/42(1-xA2/72) ;B=1MASR *AR2-,*AR3+,B,A 4=1幟八2/20(1幟八2/42(1幟八2/72) MPYA*AR2+ ;B=xA2(1- xA2/20(1-xA2/42(1-xA2/72) ST B,*
13、AR2 |LD*AR4,B ;(d_temp)=B ;B=1 MASR *AR2-,*AR3+,B,A 4=1幟八2/6(1幟八2/20(1幟八2/42(1幟八2/72) MPYA d_x ;B=x(1- %八2/6(1幟八2/20(1幟八2/42(1幟八2/72)STH B,d_sinx ;sin(theta) RET .end開式計算一個角度的正弦值 * * cos(x)=1-x*x/2(1-x*x/3*4(1-x*x/5*6(x*x/7*8)*.title cosx.asm .mmregs.def startSTACK: .usect STACK,10start:STM #STACK+1
14、0,SPLD #d_x,DP ST #6487H,d_x ;x-d_xCALL cos_startend: B endcos_start:.def cos_startd_coeff .usect.datatable: .word.word .word coeff,4 0249H ;= 1/(7*8) ;c2=1/(5*6) ;c3=1/(3*4) 0444H 0AABH.word 4000H ;c4=1/(1*2)d_x .usect cos_vars,1d_squr_x .usect cos_vars,1d_temp .usect cos_vars,1d_cosx .usect cos_va
15、rs,1c_1 .usect cos_vars,1.textSSBX FRCTSTM RPT #3 MVPD #table,*AR5+ STM #d_coeff,AR3 STM #d_x,AR2 STM #c_1,AR4ST #7FFFH,c_1 SQUR *AR2+,A ST A,*AR2 ;A=xA2 ;(AR2)=xA2 ;A=1- xA2/56,T=xA2#d_coeff,AR5 |LD *AR4,B ;B=1 MASR *AR2+,*AR3+,B,A MPYAA ;A=T*A=xA2(1-xA2/56) STH A,*AR2 ;(d_temp)=xA2(1-xA2/56) MASR*
16、AR2- ,*AR3+,B,A ;A=1-xA2/30(1-xA2/56),T=xA2(1-xA2/56) MPYA *AR2+ STB,*AR2 ;B=xA2(1-xA2/30(1-xA2/56) ;(d_temp)=xA2(1-xA2/30(1-xA2/56) |LD*AR4,B ;B=1 MASR *AR2-,*AR3+,B,A 4=1 幟八 2(1 幟八 2/30(1 幟八 2/56) SFTA A,-1,A ;A 右移一位即 A 除以 2 NEG A 舊=幟八 2/2(1 幟八 2/12(1 幟八 2/30(1 幟八 2/56)MPYA *AR2+ MAR *AR2+ RETD AD
17、D *AR4,16,B STH B,*AR2 RET .end ;B=1-xA2/2(1- xA2/12(1-xA2/30(1-xA2/56) ;cos(theta)* *.mmregs .def start.usect s in _x,360 sin_x:STACK: .usect STACK,10H.bss dis_buff,1k_theta .set 286PA0 .set 0 x0002 .text#STACK+10H,SPk_theta,AR00,AR1#sin_x,AR6#90,BRCloop1-1 start:STM STM STM STMSTM RPTB LDM AR1,A L
18、D #d_xs,DP STL A,d_xs STL A,d_xc CALL sinxCALL cosx LD #d_si nx,DP LD d_si nx,16,A MPYA d_cosxSTH B,1,*AR6+MAR *AR1+0loopl: STM #sin_x+89,AR7STM RPTB #88,BRC loop2-1LD *AR7-,ASTL A,*AR6+Ioop2: STM #179,BRCSTM #sin_x,AR7RPTB Ioop3-1 LD *AR7+,ANEG ASTL A,*AR6+loop3: STM #sin_x,AR6STM STM #1,AR0 #360,B
19、Kloop4: PORTW *AR6+0%,PA0LD *AR6,AMVDK *AR6,dis_buff B loop4* *用泰勒級數(shù)開式計算角度的正弦值 * *si n(x)=x(1-x*x/2*3(1-x*x/4*5(1-x*x/6*7(1-x*x/8*9)*.def d_xs,d_si nx .data .datatable_s.word .word .word .word 01C7H 030BH 0666H 1556H ;c1=1/(8*9) ;c2=1/(6*7) ;c3=1/(4*5) ;c4=1/(2*3) d_coef_s .usectd_xs .usect coef_s,4
20、 sin_vars,1 d_squr_xs .usect s in _vars,1 d_temp_s .usect sin _vars,1 d_sinx .usect.usect s in _vars,1 sin_vars,1 d_s.textSSBX STM FRCT #d_coef_s,AR5 RPT #3 MVPD #table_s,*AR5+ STM STM STMSQUR #d_coef_s,AR3 #d_xs,AR2 #d_s,AR4 *AR2+,A ;A=xA2 ST #7FFFH,d_l_s STA,*AR2 ;(AR2)=xA2 |LD *AR4,B ;B=1 MASR *A
21、R2+,*AR3+,B,A ;A=1- xA2/72,T=xA2MPYA A ;A=T*A=xA2(1-xA2/72) STH A,*AR2 ;(d_temp)=xA2(1-XA2/72) MASR *AR2-,*AR3+,B,A 4=1幟人2/42(1幟人2/72)丁=乂八2(1幟八2/72)MPYA *AR2+ ST B,*AR2 |LD *AR4,B舊=乂八2(1幟八2/42(1幟八2/72) ;(d_temp)=xA2(1- xA2/42(1-xA2/72) ;B=1 MASR *AR2-,*AR3+,B,A 4=1幟八2/20(1幟八2/42(1幟八2/72)MPYA *AR2+ ;
22、B=xA2(1-xA2/20(1-xA2/42(1-xA2/72) ST B,*AR2 |LDsinx:*AR4,B ;B=1 MASR *AR2-,*AR3+;A=1-xA2/42(1-xA2/72) MPYA d_xs ;B=x(1-xA2/6(1-xA2/20(1-xA2/42(1-xA2/72) STHB,d_sinx ;sin(theta)RET* *用泰勒級數(shù)開展開式算角度的余弦值 * *cos(x)=1-x*x/2(1-x*x/3*4(1-x*x/5*6(x*x/7*8) *.def d_xc,d_cosx d_coef_c .usect .data table_c:.word.
23、word .word .word coef_c,4 0249H 0444H4000H Q= 1/(7*8) ;c2=1/(5*6) ;c3=1/(3*4) ;c4=1/(1*2) 0AABH d_xc .usectcos_vars,1d_squr_xc .usect cos_vars,1 d_temp_c .usectd_cosxc_l_c.text SSBX cos_vars,1 cos_vars,1 cos_vars,1 .usect .usect FRCT STM#d_coef_c,AR5 RPT #3 MVPD #table_c,*AR5+ STM #d_coef_c,AR3 STM#d_xc,AR2 STM #c_l_c,AR4 ST #7FFFH,c_l_c SQUR *AR2+,A心八2 STA,*AR2 ;(AR2)=xA2 |LD *AR4,B ;B=1 MASR *AR2+,*AR3+,B,A ;A=1- xA2/56,T=xA2MPYA A STH A,*AR2 ;A=T*A=xA2(1-xA2/56) ;(d_temp)=xA2(1- XA2/56) MASR*AR2-,*AR3+,B,A 4=1幟人2/30(1幟人2
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 11 爸爸媽媽在我心中(說課稿)-統(tǒng)編版道德與法治三年級上冊
- 16大家一起來合作-團結合作快樂多(說課稿)-統(tǒng)編版道德與法治一年級下冊
- 2025拌合站租賃合同模板
- 2025公對私房屋租賃合同
- 6 飛向藍天的恐龍 說課稿-2023-2024學年統(tǒng)編版語文四年級下冊
- 2025個人機械加工合同
- Module 10 Unit 2 You shouldn't be late(說課稿)-2024-2025學年外研版(一起)英語五年級上冊
- 2024-2025學年高中歷史 第六單元 現(xiàn)代世界的科技與文化 第27課 新中國的科技成就說課稿 岳麓版必修3
- 保密專項培訓合同范本
- 公司配送合同范例
- 2023年北京自然博物館招考聘用筆試參考題庫附答案詳解
- 密度計法顆粒分析試驗記錄(自動和計算)
- 土方轉運方案
- (11.3.1)-10.3蒸汽壓縮制冷循環(huán)
- JJF(紡織)064-2013織物防鉆絨性試驗儀(摩擦法)校準規(guī)范
- GB/T 21797-2008化學品有機磷化合物28天重復劑量的遲發(fā)性神經(jīng)毒性試驗
- 2023年湖北成人學位英語考試真題
- 園區(qū)保安巡邏崗標準作業(yè)規(guī)程
- SJG 112-2022 既有建筑幕墻安全性鑒定技術標準高清最新版
- 旅游文本的翻譯課件
- 最全新能源材料-鋰離子電池材料189張課件
評論
0/150
提交評論