苏州职业大学DSP正弦波报告.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
苏州职业大学DSP正弦波报告

苏州职业大学 DSP原理及应用 课程设计报告 2010年12月30日 一、设计目的 学会用ccs集成开发软件,在开发环境下完成工程项目创建,程序编辑,编译,链接,调试和数据分析。 二、设计内容 编写程序,利用ccs软件产生正弦波 三、设计原理 正弦波信号发生器已被广泛地应用于通信、仪器仪表和工业控制等领域的信号处理系统中。 通常有两种方法可以产生正弦波,分别为查表法和泰勒级数展开法。 查表法是通过查表的方式来实现正弦波,主要用于对精度要求不很高的场合。 泰勒级数展开法是根据泰勒展开式进行计算来实现正弦信号,它能精确地计算出一个角度的正弦和余弦值,且只需要较小的存储空间。 本次主要用泰勒级数展开法来实现正弦波信号。 产生正弦波的算法 正弦函数和余弦函数可以展开成泰勒级数,其表达式: 取泰勒级数的前5项,得近似计算式: 递推公式: sin(nx) = 2cos(x)sin[(n-1)x]-sin[(n-2)x] cos(nx) = 2cos(x)sin[(n-1)x]-cos[(n-2)x] 由递推公式可以看出,在计算正弦和余弦值时,需要已知cos(x)、sin(n-1)x、sin(n-2)x和cos(n-2)x。 四、总体方案设计 (1)建立工程:点击菜单project-new,在弹出的窗口中输入工程名,后缀是.pjt; (2)建立文件:点击菜单file-new-source file,建立汇编语言文件和链接命令文件; (3)将文件加入工程:点击菜单project-add files to project,选择要加入的文件添加到工程; (4)工程的汇编链接:点击菜单project-rebuild all,若汇编链接成功会生成.out文件; (5)装载可执行程序:点击菜单file-load program,装载.out文件; (6)执行程序:点击菜单debug-run; (7)观察结果。 注意事项: (1)标号区分大小写,标号从第一列开始; (2)星号(*)从第一列开始; (3)指令助记符不能从第一列开始; (4) MEMORY和SECTIONS要大写; (5)在链接命令文件中解释说明用符号/* */; (6)PAGE与0或与1之间要有空格。 五、主要参数 (1)sin(theta)=x(1-x^2/2*3(1-x^2/4*5(1-x^2/6*7(1-x^2/8*9)))) (2)cos(theta)=1-x^2/2*3(1-x^2/4*5(1-x^2/6*7(1-x^2/8*9))) (3)sin(2*theta)=2*sin(theta)*cos(theta) 六、设计源程序代码 正弦波形的汇编程序 .title sinx.asm .mmregs .def _c_int00 .ref d_xs,d_sinx,d_xc,d_cosx sin_x: .usect sin_x,360 STACK: .usect STACK,10 k_theta .set 286 PA0 .set 0 _c_int00: .text STM #STACK+10,SP STM #0,AR1 STM k_theta,AR0 STM #sin_x,AR7 STM #90,BRC RPTB loop1-1 LDM AR1,A LD #d_xs,DP STL A,@d_xs STL A,@d_xc CALL sin_start CALL cos_start LD #d_sinx,DP LD @d_sinx,16,A MPYA @d_cosx STH B,1,*AR7+ MAR

文档评论(0)

asd522513656 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档