预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共13页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

DSP课程设计PAGE\*MERGEFORMAT13DSP课程设计报告课程名称:DSP原理及应用设计题目:FIR滤波器设计学院:电气信息学院专业年级:通信工程2011级指导教师:姓名:学号:时间:2014.6.30-2014.7.4目录引言3TOC\o"1-3"\u第一章课程设计要求及流程41.1FIR滤波器设计要求41.2设计流程4第二章课程设计实现42.1功能描述42.2算法研究42.3参数计算52.3.1利用Matlab计算滤波系数52.3.2编写滤波器输入信号程序62.4编写源程序62.4.1汇编源程序“.asm”文件的编写62.4.2链接命令文件“.cmd”的编写82.5调试过程82.5.1调试前的准备82.5.2.inc和.dat的使用82.5.3编写及编译程序82.5.4观察点设置92.6运行并观察结果10第三章课程设计总结12参考文献12引言随着信息与数字技术的发展,数字信号处理已经成为当今极其重要而学科与技术领域之一。它在通信、语音、图像、自动控制、雷达、军事、航空航天、医疗和家用电器等众多领域得到了广泛的应用。在数字信号处理的基本方法中,通常会涉及到变换、滤波、频谱分析、调制解调和编码解码等处理。其中滤波是应用非常广泛的一个环节,数字滤波器的理论和相关设计也一直都是人们研究的重点之一。FIR滤波器的是非递归的,稳定性好,精度高;更重要的是,FIR滤波器在满足幅频响应要求的同时,可以获得严格的线性相位特征。因此,它在高保真的信号处理,如数字音频、图像处理、数据传输和生物医学等领域得到广泛应用。在数字信号处理中,滤波占有极其重要的地位。数字滤波是语音信号处理、图像处理、模式识别、频谱分析等应用的基本处理算法。用DSP芯片实现数字滤波除了具有稳定性好、精确度高、不受环境影响等优点外,还具有灵活性好等特点。本次课程设计的是FIR低通滤波器,首先运用MATLAB产生滤波系数,再用DSP仿真软件CCS进行仿真,观察输入输出,看是否符合低通滤波器的功能。第一章课程设计要求及流程1.1FIR滤波器设计要求设计一个FIR低通滤波器,通带边界频率为1500Hz,通带波纹小于1dB;阻带边界频率为2000Hz,阻带衰减大于40dB;采样频率为10000Hz,滤波器阶数为16。FIR滤波器的设计也可以用MATLAB窗函数法进行。1.2设计流程设计流程如图1。图1设计流程图第二章课程设计实现2.1功能描述低通滤波器是允许低于截至频率的信号经过,但高于截止频率的信号不能经过的电子滤波安装。2.2算法研究FIR的原理及公式FIR设计原理:如果一个FIR滤波有一个冲激响应,h(0),h(1),…,h(N-1),和x(n)描绘输入的时常滤波n,输出滤波y(n)的n给出以下方程式:Y(n)=h(0)x(n)+h(1)x(n-1)+h(2)x(n-2)+…+h(N-1)x[n-(n-1)]N阶有限冲激响应滤波器(FIR)公式:Y(n)=k=0N2-1hkxn-k+xn-N-1+kN=0,1,2,3…2.3参数计算2.3.1利用Matlab计算滤波系数滤波器阶数为16阶,截止频率1500HZ,采样频率10000HZ。2.3.2编写滤波器输入信号程序因为截止频率为1500Hz,所以输入信号应该至少包含两种频率成分的正弦信号,一种信号频率小于1500Hz,一种信号频率大于1500Hz。利用Matlab生成滤波器输入信号程序“.inc”文件和“.dat”文件。2.4编写源程序2.4.1汇编源程序“.asm”文件的编写.globalstart,fir.mmregsCOFF_FIR_START:.sect"coff_fir".include"0127.inc"K_FIR_BFFR.set20d_data_buffer.usect"fir_bfr",64FIR_DP.usect"fir_vars",0d_filin.usect"fir_vars",1output.usect"fir_vars",1input.usect"fir_vars",1d_filout.usect"fir_vars",100hstacksize.set256stack.usect"fir_vars",stacksize.asgAR4,FIR_DATA_P.asgAR6,INBUF_P.asgAR7,OUTBUF_P.asgAR3,OUTBUF.asgAR2,INBUF.sect"fir_prog"nopstart:stm#stack+stacksize,SPLD#FIR_DP,DPSTM#d_data_buffer,FIR_DATA_P;RPTZA,#K_FIR_BFFR-1;RC=31STLA,*FIR_DATA_P+;STM#d_filin,INBUF_PSTM#d_f