文档详情

正弦波信号发生器课程设计.doc

发布:2017-12-06约6.23千字共10页下载文档
文本预览下载声明
太 原 理 工 大 学 DSP原理及应用 课程设计报告书 课题名称 正弦波信号发生器 姓 名 高占冬 学 号 2010001279 院、系、部 信息工程 专 业 通信1002 正弦波信号发生器课程设计 课程设计基础 数字信号处理(Digital Signal Processing,简称DSP)是一门涉及许多学科而又广泛应用于许多领域的新兴学科。,它所涉及的范围极其广泛。如数学领域中的微积分、概率统计、随机过程、数字分析等都是数字信号处理的基础工具。它与网络理论、信号与系统、控制理论、通信理论、故障诊断等密切相关。 一个典型的DSP系统应包括抗混叠滤波器、数据采集A/D转换器、数字信号处理器DSP、D/A转换器和低通滤波器等组成。 DSP信号处理过程: 将输入信号x(t)进行抗混叠滤波,滤掉高于折叠频率的分量,以防止信号频谱的混叠; 经采样和A/D转换器,将滤波后的信号转换为数字信号x(n); 数字信号处理器对x(n)进行处理,得数字信号y(n); 经D/A转换器,将y(n)转换成模拟信号; 经低通滤波器,滤除高频分量,得到平滑的模拟信号y(t)。 课程设计目的 1、了解DSP对数据的处理能力 2、利用DSP实现正弦信号发生器 课程设计总体方案 总体方案设计 ① 基于DSP的特点,本设计采用TMS320C54X系列的DSP作为正弦信号发生器的核心控制芯片。 ② 用泰勒级数展开法实现正弦波信号。 ③ 设置波形时域观察窗口,得到其滤波前后波形变化图; ④ 设置频域观察窗口,得到其滤波前后频谱变化图。 正弦波信号发生器 正弦波信号发生器已被广泛地应用于通信、仪器仪表和工业控制等领域的信号处理系统中。 通常有两种方法可以产生正弦波,分别为查表法和泰勒级数展开法。 查表法是通过查表的方式来实现正弦波,主要用于对精度要求不很高的场合。 泰勒级数展开法是根据泰勒展开式进行计算来实现正弦信号,它能精确地计算出一个角度的正弦和余弦值,且只需要较小的存储空间。 本次主要用泰勒级数展开法来实现正弦波信号。 产生正弦波的算法正弦函数和余弦函数可以展开成泰勒级数,其表达式: 取泰勒级数的前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)xcos(n-2)x。?sin.pjt,装载程序; 2.在程序的适当处加上一个断点。作用:这里定义了一个显示缓冲区dis_buf, 将要输出到D/A的数据送到显示缓冲区当中去,以便在CCS图形显示的时候可以从图形显示中得到数据。 3.打开CCS的图形显示窗口,修改如下参数: Start Address=sin_x、 Page=Data、Acquisition Buffer Size=360、Display Data Size=360;DSP Data Type=16-bit signed integer 4.点击CCS的Debug/Animate运行此程序,就可以在CCS的图形观察窗口看到正弦波的显示。注:Animate运行方式是在遇见断点后继续执行的一种方式,在显示图形是特别方便,显示效果如下: 参考程序: ****************************************************** * 用泰勒级数开展开式计算一个角度的正弦值 * *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 .def start .ref sin_start,d_xs,d_sinx STACK: .usect STACK,10 start: STM #STACK+10,SP LD #d_xs,DP ST #6487H,d_xs ;x--d_xs CALL sin_start end: B end sin_start: .def sin_start d_coef_s .usect coef,4 .data table_s: .word 01C7H ;c1=1/(8*9) .word 030BH ;c2=1/(6*7) .word 0666H ;c3=1/(4*
显示全部
相似文档