第一范文网 - 专业文章范例文档资料分享平台

DSP第二次实验报告

来源:用户分享 时间:2025/5/25 20:17:16 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

五、实验心得

通过此次实验我掌握利用DSP产生正弦信号的原理,熟悉子程序调用的程序结构以及堆栈的使用,掌握CCS的图形输出操作,本次实验内容有阅读和理解Sin.s54;调试正弦波发生器;加入断点,并选取图形观测,利用动画及时更新;对比前两次实验,难度有所增加,但是在老师和助教的精心指导下,顺利完成实验,几次实验之后,我认识到实验之前预习的必要性,所以以后的实验中,我会争取做到每一次实验都提前预习。

附录:实验程序

;****************************************************************************** ; SJTU DSP Tech. Center

; Copyright (c) 2003 SJTU DSP Tech. Center. All Rights Reserved. ;

; Description:

; TMS320C54x Program for Students Experiment ;

; History:

; Date Authors Changes ; 2003/08/01 Fu Xuan Created.

;******************************************************************************

STACK_ADDR .set 0x0500

STEP .set 0x0900 ;delta x (must be positive), the more the higher frequency

;T=65536/STEP, f=1/T

.bss sin_out, 1

.mmregs

.global main

.text

main:

stm #STACK_ADDR, SP

stm #0x00A8, PMST ;IPTR=0x0080

stm #0x0000, SWWSR ;software wait status register

sub A

ssbx CPL ;direct address using SP ssbx FRCT ;fraction mode ssbx OVM ;overflow mode ssbx SXM ;sign extension

stm #sin_out, AR6

sin_loop:

pshm AG ;save current x ;ddian OK pshm AH ;ddian OK pshm AL ;ddian OK

call calculate_sin ;-pi <= x <= pi ;ddian OK

sth A, *AR6 ;store sin(x), add probe point ;ddian OK

popm AL ;ddian OK popm AH ;ddian OK popm AG ;ddian OK

add #STEP, A ;add delta ;ddian OK

sub #0x7fff, A, B ;test if x>pi, B=A-pi ;ddian OK bc normal_increase, BLT;ddian OK ld #0x8000, A ;A=-pi

add B, A ;A=B+(-pi)=x - 2*pi normal_increase:

b sin_loop ;ddian OK dead_loop: nop nop nop nop

b dead_loop

;****************************************************************************** sign .set 0 ;local variable

calculate_sin:

frame -1 ;allocate sign

nop ;no direct addressing next frame

st #0, @sign ;decide sign, 0 for 1st and 2nd quadrant, 1 for 3rd and 4th quadrant xc 2, ALT st #1, @sign

abs A ;change to 1st and 2nd quadrant sub #0x4000, A, B ;test for 1st quadrant

bc first_quadrant, BLEQ;if not change to 1st quadrant sub #0x7fff, A ;As sin(pi-x)=sinx, let x=pi-x neg A

first_quadrant:

stm #coef, AR2

stlm A, T ;T=x ld *AR2+, 16, A ;AH=C5 ld *AR2+, 16, B ;BH=C4

rpt #5-1 ;AH=C5*x^5+C4*x^4+C3*x^3+C2*x^2+C1*x+0 poly *AR2+

ld @sign, B ;pick out sign sfta A, 3 ;make Q15 format

nop ;nop for B condition test by xc xc 1, BNEQ ;test sign neg A ;sin(-x)=-sinx

frame 1 ret

;****************************************************************************** .sect \

int_RESET:

b main nop nop

.space 124*16

;sin(x)=0 + 3.140625x + 0.02026367x^2 - 5.325196x^3 + 0.5446778x^4 + 1.800293x^5 .data

coef: ;As the max value is -5.325196, so Q12 is used .word 0x1cce ;1.800293 * 4096 .word 0x08b7 ;0.5446778 * 4096 .word 0xaacc ;-5.325196 * 4096 .word 0x0053 ;0.02026367 * 4096 .word 0x3240 ;3.140625 * 4096 .word 0x0000 ;0 .end

;end of Sin.s54

搜索更多关于: DSP第二次实验报告 的文档
DSP第二次实验报告.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c1le6b2b3df1emx12t1jh_2.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top