实验六 用泰勒级数开展开式计算一个角度的正弦值_第1页
实验六 用泰勒级数开展开式计算一个角度的正弦值_第2页
实验六 用泰勒级数开展开式计算一个角度的正弦值_第3页
实验六 用泰勒级数开展开式计算一个角度的正弦值_第4页
实验六 用泰勒级数开展开式计算一个角度的正弦值_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 实验六 泰勒级数展开法设计正弦信号发生器 一、 实验目的掌握用泰勒级数展开法求解sin(x)、cos(x)的原理及设计方法二、 实验设备 计算机、ZY130DSP12BD试验箱三、 实验原理 参加教材第六章第四节正弦波信号发生器四、 实验内容1. 用泰勒级数展开法计算sin(x)的值2. 用泰勒级数展开法计算cos(x)的值3. 用泰勒级数展开法产生正弦波五、 实验步骤1 建立一个项目:点击Project->New ,将项目名称为 shiyan4,并将项目保存的d:文件夹下.2 建立一个源文件:点击File->New->Source File 可以打开一个文本编辑

2、器窗口,点击保存按钮,保存在和项目相同的一个文件夹下面,保存类型*.asm ,将文件命名为shiyan4.asm.3 .在项目中添加源文件,在新建了一个源文件后,要想使用CSS 编译器对该源文件进行编译还需要将源文件添加到项目中去。添加方法是在工程管理器中右键点击shiyan4.pjt,在弹出菜单中选择Add Files,然后将刚才建立的shiyan4.asm文件添加到该项目中去。4.编写源程序: 在工程管理器中双击shiyan4.asm,将出现的文本编辑窗口,在该文本编辑窗口中输入程序源代码。(自己完成)5.编写中断向量表文件 点击File->New->Source File 可

3、以打开一个文本编辑器窗口,点击保存按钮,保存在和项目相同的一个文件夹下面,保存类型*.asm ,将文件命名为vectors.asm, 在工程管理器中右键点击shiyan4.pjt,在弹出菜单中选择Add Files,然后将刚才建立的vectors.asm文件添加到该项目中去。然后,在工程管理器中双击vectors.asm,将出现的文本编辑窗口,在该文本编辑窗口中输入下面源代码: .title "vectors.asm" .ref start .sect ".vectors" B start .end6. 编写链接配置文件链接配置文件有很多功能,这里介绍最

4、常见的也是必须的两条:1.存储器的分配 2. 标明程序入口.由于每个程序都需要一个链接文件,每个程序的配置文件根据实际情况的需要都略有不同,下面为本实验的编写的一个配置文件。点击File->New->Source File 可以打开一个文本编辑器窗口,点击保存按钮,保存在和项目相同的一个文件夹下面,保存类型*.cmd ,将文件命名为shiyan4.cmd, 在工程管理器中右键点击shiyan4.pjt,在弹出菜单中选择Add Files,然后将刚才建立的shiyan4.cmd文件添加到该项目中去。然后,在工程管理器中双击shiyan4.cmd,将出现的文本编辑窗口,在该文本编辑窗口

5、中输入下面源代码:vectors.obj /*中断向量的目标文件*/shiyan4.obj /*产生目标文件*/-o shiyan4.out /*产生可执行的下载文件,文件名可以根据不同项目而定*/-m shiyan4.map /*产生存储器映射文件,文件名可以根据不同项目而定*/ -estart /*程序入口*/ MEMORY PAGE 0: EPROM:org=0090H len=0F70H VECS: org=0080H len=0010H PAGE 1: SPRAM:org=1000H len=1000H DARAM:org=2000H len=2000H SECTIONS .text

6、 :>EPROM PAGE 0.data :>EPROM PAGE 0.bss :>SPRAM PAGE 1STACK :>DARAM PAGE 1.vectors :>VECS PAGE 0 7.对项目进行编译和链接确保shiyan4.asm 、vectors.asm、shiyan4.cmd已经添加到工程后,点击Project-Compile File(或者),在项目编译成功之后点击Project->Build(或者) 选项对该项目进行链接,生成*.OUT文件。8.转载可执行文件 要让程序代码在DSP内部运行必须需要将生产的*.out文件装载到DSP内部,

7、装载方法是点击:File->Load Program 再选择生产的shiyan4.out文件就可以将程序装载到DSP的内部存储器中。9运行程序并查看结果 (1) 首先打开预查看的数据空间,点击view->Memory ,弹出”Memory Window Options”对话框,把预查看地址(address)改为0x1000. (2)点击OK按钮,然后点击Debug-Run 让程序在DSP内部运行,最后点击Debug-Halt ,在观察“Memory”对话框,验证结果是否正确。 10. 建立其它项目工程文件注意:每个工程中,vectors.asm不需要修改,但*.cmd文件内容需要修

8、改:(1)*.cmd 的文件名需要与工程名对应的.比如工程名为shiyan4.pjt,则cmd文件名为shiyan4.cmd(2)在.cmd文件中 编写人:黄 忠* 用泰勒级数开展开式计算一个角度的正弦值 *sin(x)=x(1-x*x/2*3(1-x*x/4*5(1-x*x/6*7(1-x*x/8*9)*.title"sinx.asm".mmregs.defstartSTACK:.usect"STACK",10start:STM#STACK+10,SPLD#d_x,DPST#6487H,d_x;x->d_xCALLsin_startend:Ben

9、dsin_start:.defsin_startd_coeff.usect"coeff",4.datatable:.word01C7H;c1=1/(8*9).word030BH;c2=1/(6*7).word0666H;c3=1/(4*5).word1556H;c4=1/(2*3)d_x.usect"sin_vars",1d_squr_x .usect"sin_vars",1d_temp.usect"sin_vars",1d_sinx.usect"sin_vars",1c_1.usect&quo

10、t;sin_vars",1.textSSBXFRCTSTM#d_coeff,AR5RPT#3MVPD#table,*AR5+STM#d_coeff,AR3STM#d_x,AR2STM#c_1,AR4ST#7FFFH,c_1SQUR*AR2+,A;A=x2STA,*AR2;(AR2)=x2|LD*AR4,B;B=1MASR*AR2+,*AR3+,B,A;A=1-x2/72,T=x2MPYAA;A=T*A=x2(1-x2/72)STHA,*AR2;(d_temp)=x2(1-x2/72)MASR*AR2-,*AR3+,B,A;A=1-x2/42(1-x2/72),T=x2(1-x2/72

11、)MPYA*AR2+;B=x2(1-x2/42(1-x2/72)STB,*AR2;(d_temp)=x2(1-x2/42(1-x2/72)|LD*AR4,B;B=1MASR*AR2-,*AR3+,B,A;A=1-x2/20(1-x2/42(1-x2/72)MPYA*AR2+;B=x2(1-x2/20(1-x2/42(1-x2/72)STB,*AR2;(d_temp)=B|LD*AR4,B;B=1MASR*AR2-,*AR3+,B,A;A=1-x2/6(1-x2/20(1-x2/42(1-x2/72)MPYAd_x;B=x(1-x2/6(1-x2/20(1-x2/42(1-x2/72)STHB,d_sinx;sin(theta)RET.endvectors.obj sinx.obj -Osinx.out -msinx.map -estart MEMORY PAGE 0: EPROM:org=0090H,len=0F70H VECS:org=0080H,len=0010H PAGE 1: SPRAM:org=1000H,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论