数字滤波器设计及DSP实现报告_第1页
数字滤波器设计及DSP实现报告_第2页
数字滤波器设计及DSP实现报告_第3页
数字滤波器设计及DSP实现报告_第4页
数字滤波器设计及DSP实现报告_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

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

文档简介

1、带通数字滤波器的设计及DSP实现班级: 物联网1121 我是 学号: 1132106124 我是 姓名: 我是傻子 现场答辩(20分)书面报告(80分)成绩Matlab设计(20分)DSP程序(25分)输入输出分析(20分)格式规范(15分)总分等级1.课程设计目的1.1巩固和加深对DSP原理和知识的理解;1.2培养根据课题需要选学参考书籍、查阅手册和文献资料的能力;1.3学会方案论证的比较方法,拓宽知识,初步掌握工程设计的基本方法;1.4掌握matlab、ccs的正确使用方法,学会软件的设计和调试方法;1.5能按课程设计的要求编写课程设计报告,能正确反映设计和实验成果,能用ccs进行仿真。2

2、.课程设计要求2.1 A/D采样率为100KHZ;采用窗函数设计法设计一个通带截止频率为5KHZ、15KHZ的带通滤波器,并在DSP上仿真实现、验证设计结果。2.2利用matlab进行相应滤波器设计,给出设计过程及设计结果。2.3利用上述设计所计算的滤波器系数,编写相应的DSP实现程序,2.4输入信号为1.5KHz、10KHz、20KHz的叠加信号,即x(t)=sin(3000t)+sin(20000t)+ sin(40000t),观察其经过滤波器后的响应,记录输入、输出的时域、频域波形图,并对结果作相应分析。3. matlab设计3.1 滤波器设计原理假设FIR滤波器的系数为h(0)、h(1

3、)、h(N-1),x(n)表示滤波器在n时刻的输入,则n时刻的输出为:y(n)=h(0)x(n)+h(1)x(n-1)+h(N-1)xn-(N-1)=对应的滤波器传递函数为:横截型滤波器的结构图为:若FIR 数字滤波器的单位冲激响应序列为h(n),它就是滤波器系数向量b(n)。传统的滤波器分析与设计均使用繁琐的公式计算,改变参数后需要重新运算,从而在分析与设计滤波器尤其是高阶滤波器时工作量特别大。这里应用MATLAB 设计FIR滤波器,根据给定的性能指标设计一个H(z),使其逼近这一指标,进而计算并确定滤波器的系数b(n),再将所设计滤波器的幅频响应、相频响应曲线作为输出,与设计要求进行比较,

4、对设计的滤波器进行优化。设计完成之后将得到FIR滤波器的单位冲激响应序列h(n)的各个参数值。3.2 滤波器设计思路1)先通过对滤波器重要参数的计算,算出归一化的上通带截止频率,和下通带截止频率。由于所给的上截止频率和下截止频率为5KHZ和15KHZ,所以wp1=5/100*pi=0.1pi,wp2=15/100*pi=0.3pi,即wc=0.10 0.30。2)选择合适的窗函数,确定要选用的滤波器阶数。本次设计,我用的是hamming窗函数,所以,M=6.6*pi/过渡带宽。在此,我选的阶数为37。3)根据得到的截止频率和滤波器阶数编写matlab程序,得到单位冲击响应序列各个参数值。4)根

5、据输入信号,加上幅值,编写matlab程序,得到37个n时刻的x(n)值。5)将两组数值带入dsp程序中进行仿真。程序流程图: 计算滤波器w和N Matlab编程得出冲击序列根据输入信号得出n时刻值带入dsp程序进行仿真,得波形3.3 matlab程序1) 滤波器设计程序:wc=0.10 0.30;M=37; b=fir1(M-1,wc); freqz(b);/画幅频响应图/ figure;/画单位冲击响应图/ stem(b,'.'); line(0,25,0,0);xlabel('n');ylabel('h(n)'); fid=fopen(&#

6、39;input.dat','w'); fprintf(fid,'%dn',round(b*32768);/把浮点数转化为1位符号位,0位整数位,15位小数位的定点数/ fclose(fid);2) 输入信号设计程序:n=0:1:199;T=1/100000;x=sin(3000*pi*n*T)+sin(20000*pi*n*T)+sin(40000*pi*n*T);fid=fopen('in.dat','w'); fprintf(fid,'%dn',round(x*230);fclose(fid);plo

7、t(t,x);程序分析:由于x是由三个频率不同的正弦函数叠加而成的,所以若要设置一个周期的数据,就要计算出这三个正弦函数的最小公约数。通过计算得到最小公约数,并且得到一个周期中的n正好是200个,所以把n设置成步长为1,0到199。因为步长为1,所以T等于抽样频率的倒数。3.4 matlab仿真图图(1)带通滤波器的频率响应图(2)带通滤波器单位冲击响应图(3)输入信号x=sin(3000*pi*n*T)+sin(20000*pi*n*T)+sin(40000*pi*n*T)波形图(4)输入信号x(t)=sin(3000t)+sin(20000t)+ sin(40000t)冲击响应4. DSP

8、实现4.1 设计实现步骤1)运行CCS。2)FIR滤波器的DSP软件仿真。a在CCS环境下新建fir工程和四个文件:fir.asm、fir.cmd、in.dat、out.dat。b.分别编辑四个文件并将文件fir.asm、fir.cmd、添加到fir工程中。c.编译、链接、装载程序d设置探针、断点、及文件关联。e按F12运行程序并设置图形查看窗口。4.2源程序1)asm程序 .title "fir.asm" .mmregs .def _c_int00 .bss y,1indata .usect "buffer",1outdata .usect "

9、;buffer",1xn .usect "xn",37h .usect "h",37 .datatable: .word -17,27,108,197,215,98,-98,-181,0,312 .word 293,-519,-2056,-3480,-3574,-1628,1838,5169,6541,5169 .word 1838,-1628,-3574,-3480,-2056,-519,293,312,0,-181 .word -98,98,215,197,108,27,-17 .text_c_int00: SSBX FRCT STM #x

10、n,AR1 RPT #36 ST #0,*AR1+ STM #h,AR1 RPT #36 MVPD #table,*AR1+ STM #xn+36,AR3 STM #h+36,AR4 STM #37,BK STM #-1,AR0 STM #indata,AR5 STM #outdata,AR2 ;LD #xn,DP;PORTR PA1,xn ;LD #y,DPFIR: NOP MVDD *AR5,*AR3+0% RPTZ A,#36 MAC *AR3+0%,*AR4+0%,A STH A,*AR1 MVDD *AR1,*AR2 NOP;STH A,y;PORTW y,PAO B FIR ;B

11、FIR;PORTR PA1,*AR3+0% .end2)连接文件程序fir.obj -o fir.out -m fir.map -estart MEMORY PAGE 0: EPROM: org=0100H,len=0F70H PAGE 1: SPRAM: org=1000H,len=1000H DARAM: org=2000h,len=2000H SECTIONS .text :> EPROM PAGE 0 .data :> EPROM PAGE 0 .bss :> SPRAM PAGE 1 xn : align(128)> DARAM PAGE 1 h : alig

12、n(128)> DARAM PAGE 1 buffer :>DARAM PAGE 1 4.3 输入信号in.dat内容1651 1 1025 1 10,376,397148,1,104,207,57,-196,-181,186,552,562,300,139,227,313,146,-126,-129219,565,555,274,94,163,230,46,-243,-263,71,404,383,91,-98,-36,26,-161,-452,-471-135,202,186,-98,-278,-205,-130,-304,-580,-583,-230,125,128,-137

13、,-297,-205,-111-265,-522,-506,-135,237,256,6,-141,-36,69,-76,-325,-304,71,445,465,213,63,163261,107,-152,-143,219,578,582,313,146,227,306,133,-146,-156,186,526,511,225,40104,168,-19,-311,-332,0,332,311,19,-168,-104,-40,-225,-511,-526,-186,156,146,-133,-306,-227,-146,-313,-582,-578,-219,143,152,-107,

14、-261,-163,-63,-213,-465-445,-71,304,325,76,-69,36,141,-6,-256,-237,135,506,522,265,111,205,297,137,-128,-125,230,583,580,304,130,205,278,98,-186,-202,135,471,452,161,-26,36,98-91,-383,-404,-71,263,243,-46,-230,-163,-94,-274,-555,-565,-219,129,126,-146-313,-227,-139,-300,-562,-552,-186,181,196,-57,-2

15、07,-104,-1,-148,-397,-376 5. 仿真结果图(5)数据存储区地址图:分析:有数据存储区的地址可以看出,输入数据的地址为0x1025,输出数据的地址为0x1026。图(6)图形窗口设置图:分析:对图形窗口进行设置,修改输入输出的地址。图(7)输入、输出时域波形仿真图:分析:上面是in.dat中的输入信号波形,是三个正弦波的叠加图;下面是out.dat的输出波形图,是通过带通滤波器滤波后出来的中间的一个正弦波,即:x=sin(20000*pi*t)。 图(8)输入信号频域波形图:分析:这是输入信号的频域波形图,因为输入信号是由三个不同频率的信号叠加而成的,所以,图中一个周期中有三个脉冲信号,分别表示不同频率的正弦波。最左边的是高通的波形,中间的是带通的波形,最右边的是低通的波形。图(9)输出信号频域波形图:分析:由图中可以验证,我所设计的滤波器是带通的滤波器。因为与上图相比较,我输出的波形的横坐标所在位置,正好与上图中带通的冲激波的位置相符合。6. 设计心得体会为了这次大作业设计,自己自学了数字信号处理领域中窗函数的有关知识。实际中遇到的离散时间信号总是有限长的,因此不可避免地要遇到数据截断问题。而在信号处理中,对离散序列的数据截断是通过序列与窗函数相乘

温馨提示

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

评论

0/150

提交评论