DSP課程設(shè)計(jì)正弦信號(hào)發(fā)生器的設(shè)計(jì)

上傳人:仙*** 文檔編號(hào):140101778 上傳時(shí)間:2022-08-23 格式:DOC 頁(yè)數(shù):8 大小:913KB
收藏 版權(quán)申訴 舉報(bào) 下載
DSP課程設(shè)計(jì)正弦信號(hào)發(fā)生器的設(shè)計(jì)_第1頁(yè)
第1頁(yè) / 共8頁(yè)
DSP課程設(shè)計(jì)正弦信號(hào)發(fā)生器的設(shè)計(jì)_第2頁(yè)
第2頁(yè) / 共8頁(yè)
DSP課程設(shè)計(jì)正弦信號(hào)發(fā)生器的設(shè)計(jì)_第3頁(yè)
第3頁(yè) / 共8頁(yè)

下載文檔到電腦,查找使用更方便

10 積分

下載資源

還剩頁(yè)未讀,繼續(xù)閱讀

資源描述:

《DSP課程設(shè)計(jì)正弦信號(hào)發(fā)生器的設(shè)計(jì)》由會(huì)員分享,可在線閱讀,更多相關(guān)《DSP課程設(shè)計(jì)正弦信號(hào)發(fā)生器的設(shè)計(jì)(8頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。

1、 太原理工大學(xué) DSP課程設(shè)計(jì) 設(shè)計(jì)題目:正弦信號(hào)發(fā)生器的設(shè)計(jì) 班級(jí):電信0801班 姓名:凌天 一、 設(shè)計(jì)目的 1、 通過(guò)實(shí)驗(yàn)掌握DSP的軟件開(kāi)發(fā)過(guò)程 2、 學(xué)會(huì)運(yùn)用匯編語(yǔ)言進(jìn)行程序設(shè)計(jì) 3、 學(xué)會(huì)用CCS仿真模擬DSP芯片,通過(guò)CCS軟件平臺(tái)上應(yīng)用C54X匯編語(yǔ)言來(lái)實(shí)現(xiàn)正弦信號(hào)發(fā)生裝置。 二、 設(shè)計(jì)原理 本實(shí)驗(yàn)產(chǎn)生正弦波的方法是泰勒級(jí)數(shù)展開(kāi)法。泰勒級(jí)數(shù)展開(kāi)法需要的存儲(chǔ)單元少,具有穩(wěn)定性

2、好,算法簡(jiǎn)單,易于編程等優(yōu)點(diǎn),而且展開(kāi)的級(jí)數(shù)越多,失真度就越小。求一個(gè)角度的正弦值取泰勒級(jí)數(shù)的前5項(xiàng),得近似計(jì)算式: 三、 總體方案設(shè)計(jì) 本實(shí)驗(yàn)是基于CCS開(kāi)發(fā)環(huán)境的。CCS是TI公司推出的為開(kāi)發(fā)TMS320系列DSP軟件的集成開(kāi)發(fā)環(huán)境,是目前使用最為廣泛的DSP開(kāi)發(fā)軟件之一。它提供了環(huán)境配置、源文件編譯、編譯連接、程序調(diào)試、跟蹤分析等環(huán)節(jié),并把軟、硬件開(kāi)發(fā)工具集成在一起,使程序的編寫(xiě)、匯編、程序的軟硬件仿真和調(diào)試等開(kāi)發(fā)工作在統(tǒng)一的環(huán)境中進(jìn)行,從而加速軟件開(kāi)發(fā)進(jìn)程。通過(guò)CCS軟件平臺(tái)上應(yīng)用C54X匯編語(yǔ)言來(lái)實(shí)現(xiàn)正弦信號(hào)發(fā)生裝置。 總體思想

3、是:正弦波的波形可以看作由無(wú)數(shù)點(diǎn)組成,這些點(diǎn)與x軸的每一個(gè)角度值相對(duì)應(yīng),可以利用DSP處理器處理大量重復(fù)計(jì)算的優(yōu)勢(shì)來(lái)計(jì)算x軸每一點(diǎn)對(duì)應(yīng)的y的值(在x軸取N個(gè)點(diǎn)進(jìn)行逼近)。整個(gè)系統(tǒng)軟件由主程序和基于泰勒展開(kāi)法的SIN子程序組成,相應(yīng)的軟件流程圖如圖。 四、 設(shè)計(jì)內(nèi)容 1、設(shè)置 在Family下選擇C55xx,將看到所有C55xx的仿真驅(qū)動(dòng),包括軟件仿真和硬件仿真; 在Platform下選擇Simulator,在Available Factory Boards中只顯示軟件仿真驅(qū)動(dòng),選中相應(yīng)的驅(qū)動(dòng); 雙擊C55xx Rev4.0 CPU Funct

4、ional Simulator,可以在My System下看到所加入的驅(qū)動(dòng); 點(diǎn)擊Save & Quit,將保存設(shè)置退出Setup CCStudio v3.1并啟動(dòng)運(yùn)行CCStudio。 2、編寫(xiě)匯編源程序sin。 3.、建立匯編源程序 在CCS環(huán)境下,點(diǎn)擊file/new/source file菜單命令,打開(kāi)一個(gè)空白文檔,將匯編程序輸入。 單擊file/save菜單命令,在D:\program files\ti\myprojects下保存文件名為sin,并選擇保存類型為*.asm。 4、建立鏈接命令文件。 5、創(chuàng)建新的工程文件 啟動(dòng)CCS,在Project菜單中選擇New

5、項(xiàng),在Project中輸入denglin,CCS將創(chuàng)建一個(gè)名為denglin.pjt的工程。 6、將文件添加到工程中 在工程中添加源文件,執(zhí)行菜單project/add files to project,把sin文件添加到工程中。 7、生成和運(yùn)行程序 (1)選擇菜單命令Project→Rebuild All,對(duì)工程重新編譯、匯編和鏈接,主窗口下方的信息窗口將顯示build進(jìn)行匯編、編譯和鏈接的相關(guān)信息。 (2) 選擇菜單命令File→Load Program,在當(dāng)前目錄的Debug目錄下選擇sin并打開(kāi),將Build生成的程序加載到DSP中。 (3)選擇菜單命令

6、Debug→Run或在Debug工具欄上單擊Run按鈕,運(yùn)行該程序。 8、觀察運(yùn)行結(jié)果 點(diǎn)擊view/gragh菜單命令觀看圖像 五、 主要參數(shù) 六、 源程序 匯編源程序sin .mmregs .def start .def d_xs,d_sinx,d_xc,d_cosx,sinx,cosx sin_x: .usect "sin_x",360 STACK: .usect "STACK",10H k_theta .set 286

7、 ;theta=pi/360(0.5deg) start: .text STM #STACK+10H,SP STM k_theta,AR0 STM 0,AR1 STM #sin_x,AR6 STM #90,BRC RPTB loop1-1 LDM AR1,A LD #d_xs,DP STL A,@d_xs

8、 STL A,@d_xc CALL sinx ;d_sinx=sin(x) CALL cosx ;d_cosx=cos(x) LD #d_sinx,DP LD @d_sinx,16,A ;A=sin(x) MPYA @d_cosx ;B=sin(x)*cos(x) STH B,1,*AR6+ ;AR6----2*sin(x)

9、 MAR *AR1+0 loop1: STM #sin_x+89, AR7 ;sin91(deg.)-sin179(deg.) STM #88,BRC RPTB loop2-1 LD *AR7-,A STL A,*AR6+ loop2: STM #179,BRC ;sin180(deg.)-sin359(deg.) STM #sin_x,AR7 RPTB lo

10、op3-1 LD *AR7+,A NEG A STL A,*AR6+ loop3: STM #sin_x,AR6 ;generate sin wave STM #1,AR0 STM #360,BK B loop3 sinx: .def d_xs,d_sinx .data table_s .word 01C7H ;C1=1/(

11、8*9) .word 030BH ;C2=1/(6*7) .word 0666H ;C3=1/(4*5) .word 1556H ;C4=1/(2*3) d_coef_s .usect "coef_s",4 d_xs .usect "sin_vars",1 d_squr_xs .usect "sin_vars",1 d_temp_s .usect "sin_vars",1 d_sinx .usect

12、"sin_vars",1 d_l_s .usect "sin_vars",1 .text SSBX FRCT STM #d_coef_s,AR5 ;move coeffs table_s RPT #3 MVPD #table_s,*AR5+ STM #d_coef_s,AR3 STM #d_xs,AR2 STM #d_l_s,AR4

13、 ST #7FFFH,d_l_s SQUR *AR2+,A ;A=x^2 ST A,*AR2 ;(AR2)=x^2 ||LD *AR4,B ;B=1 MASR *AR2+,*AR3+,B,A ;A=1-x^2/72,T=x^2 MPYA A ;A=T*A=x^2(1-x^2/72)

14、 STH A,*AR2 ;(d_temp)=x^2(1-x^2/72) MASR *AR2-,*AR3+,B,A ;A=1-x^2/42(1-x^2/72);T=x^2(1-x^2/72) MPYA *AR2+ ;B=x^2(1-x^2/42(1-x^2/72)) ST B,*AR2 ;(d_temp)=x^2(1-x^2/42(1-x^2/72)) ||LD

15、 *AR4,B ;B=1 MASR *AR2-,*AR3+,B,A ;A=1-x^2/20(1-x^2/42(1-x^2/72)) MPYA *AR2+ ;B=x^2(1-x^2/20(1-x^2/42(1-x^2/72))) ST B,*AR2 ;(d_temp)=B ||LD *AR4,B ;B=1

16、 MASR *AR2-,*AR3+,B,A ;A=1-x^2/6(1-x^2/20(1-x^2/42(1-x^2/72))) MPYA d_xs ;B=x(1-x^2/6(1-x^2/20(1-x^2/42(1-x^2/72)))) STH B,d_sinx ;sin(theta) RET cosx: .def d_xc,d_cosx d_coef_c .usect "coef_c

17、",4 .data table_c .word 0249H ;C1=1/(7*8) .word 0444H ;C2=1/(5*6) .word 0AABH ;C3=1/(3*4) .word 4000H ;C4=1/2 d_xc .usect "cos_vars",1 d_squr_xc .usect "cos_vars",1 d_temp_c .usect "cos_vars",

18、1 d_cosx .usect "cos_vars",1 c_l_c .usect "cos_vars",1 .text SSBX FRCT STM #d_coef_c,AR5 ;move coeffs table_c RPT #3 MVPD #table_c,*AR5+ STM #d_coef_c,AR3 STM #d_xc,AR2 STM

19、 #c_l_c,AR4 ST #7FFFH,c_l_c SQUR *AR2+,A ;A=x^2 ST A,*AR2 ;(AR2)=x^2 ||LD *AR4,B ;B=1 MASR *AR2+,*AR3+,B,A ;A=1-x^2/56,T=x^2 MPYA A ;A=T*A

20、=x^2(1-x^2/56) STH A,*AR2 ;(d_temp)=x^2(1-x^2/56) MASR *AR2-,*AR3+,B,A ;A=1-x^2/30(1-x^2/56); T=x^2(1-x^2/56) MPYA *AR2+ ;B=x^2(1-x^2/30(1-x^2/56)) ST B,*AR2 ;(d_temp)=x^2(1-x^2/30(1-x^2

21、/56)) ||LD *AR4,B ;B=1 MASR *AR2-,*AR3+,B,A ;A=1-x^2/12(1-x^2/30(1-x^2/56)) SFTA A,-1,A ;-1/2 NEG A MPYA *AR2+ ;B=-x^2/2(1-x^2/12(1-x^2/30(1-x^2/56))) MAR *AR2+

22、 RETD ADD *AR4,16,B ;B=-x^2/2(1-x^2/12(1-x^2/30(1-x^2/56))) STH B,*AR2 ;cos(theta) RET .end 鏈接命令文件 MEMORY { PAGE 0: EPROM: org=0E000H, len=1000H VECS: org=0FF80H, le

23、n=0080H PAGE 1: SPRAM: org=0060H, len=0020H DARAM1: org=0080H, len=0010H DARAM2: org=0090H, len=0010H DARAM3: org=0200H, len=0200H } SECTIONS { .text :> EPROM PAGE 0 .data :> EPROM PAGE 0 STACK

24、:> SPRAM PAGE 1 sin_vars :> DARAM1 PAGE 1 coef_s :> DARAM1 PAGE 1 cos_vars :> DARAM2 PAGE 1 coef_c :> DARAM2 PAGE 1 sin_x : align(512) {} > DARAM3 PAGE 1 .vectors :>VECS PAGE 0 } 七、 實(shí)驗(yàn)結(jié)果及分析 結(jié)果成功生成了正弦波圖像,表明改程序能通過(guò)TMS320C54x產(chǎn)生正弦信號(hào) 八、 設(shè)計(jì)總結(jié) 這次實(shí)驗(yàn)把平時(shí)書(shū)本上生硬的文字變成了活生生的圖像,使我對(duì)這門(mén)學(xué)科的基本知識(shí)、理論解起來(lái)更加方便直觀和深刻。通過(guò)實(shí)驗(yàn)我基本了解了DSP應(yīng)用系統(tǒng)開(kāi)發(fā)方法和設(shè)計(jì)過(guò)程,掌握了匯編源程序的編輯、匯編和鏈接過(guò)程,熟悉了CCS集成開(kāi)發(fā)環(huán)境,CCS的安裝及設(shè)置,CCS集成開(kāi)發(fā)環(huán)境,CCS的基本使用,調(diào)試應(yīng)用程序。我成功通過(guò)CCS軟件應(yīng)用C54X匯編語(yǔ)言實(shí)現(xiàn)了正弦信號(hào)發(fā)生裝置,這次實(shí)驗(yàn)使我能夠更真實(shí)地體會(huì)到DSP的功能和用途。

展開(kāi)閱讀全文
溫馨提示:
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. 裝配圖網(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ì)自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!