欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    DSP技术与应用课程设计报告.doc

    • 资源ID:4843446       资源大小:179.64KB        全文页数:13页
    • 资源格式: DOC        下载积分:12金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要12金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    DSP技术与应用课程设计报告.doc

    1、DSP技术与应用课程设计报告华北水利水电大学DSP技术及应用课程设计题目: 基于DSP的FIR数字滤波器设计 学 院:信息工程学院 专 业:电子信息工程 姓 名: 学 号: 201215523 目录摘要3一、设计要求和设计目的3二、FIR滤波器理论研究3三、 CCS完成的流程示意图4四、 滤波器源程序:5五、通过,ATLAB设定滤波器参数5六、生成.dat文件输入数据6七、CCS滤波器实现6八、扩展语音信号滤波观察8九、心得与体会8参考文献:9摘要FIR数字滤波器以其良好的线性特性被广泛应用于现代电子通信系统中,是数字信号处理的重要内容之一。在实际信号处理中,往往要求系统兼具实时性和灵活性。使

    2、用MATLAB实现FIR滤波器,既有很强的实时性,又兼顾了灵活性,为数字信号处理提供了一种很好的解决方案。论文借助MATLAB工具箱,选择合适的窗函数,设计了两种FIR数字滤波器,给出了实现的设计流程和一般步骤,并对其进行了相关仿真分析,展望数字滤波器设计技术的未来。关键字:FIR滤波器,MATLAB,CCS。正文一、设计要求和设计目的1) 利用数字信号处理理论设计一个滤波器;2) 利用CCS实现滤波器;3) 通过实际信号作用,验证滤波器是否达到设计目标;通过CCS集成开发环境,源程序采用C语言或者汇编语言实现一个FFR滤波器,实现FIR运算,结合数字信号处理理论知识,通过MATLAB设计一个

    3、低通滤波器的所有参数,生成一个C的头文件.h文件。并且通过MATLAB产生一个语音信号或者三个频率不相同的正弦信号相叠加,生成一个.dat文件,输入到CCS集成开发环境中,运行程序,观察信号输入和输出的波形图和频谱变换,通过观察数值窗口,得到滤波之后的频率同输入进行比较,得到FIR的滤波性能。二、FIR滤波器基本理论 (1)FIR滤波器的特点数字滤波器的功能,就是把输入序列通过一定的运算变换成输出序列。它的实现方法有很多,其中比较常用到的是无限长脉冲响应滤波器IIR和有限长脉冲响应滤波器FIR两种。在计算量相等的情况下,IIR数字滤波器比FIR滤波器的幅频特性优越,频率选择性也好。但是,它有着

    4、致命的缺点,其相位特性不好控制。它的相位特性) 是使频率产生严重的非线性的原因。但是在图像处理、数据传输等波形传递系统中都越来越多的要求信道具有线性的相位特性。在这方面FIR滤波器具有它独特的优点,设FIR滤波器单位脉冲响应h(n)长度为N,其系统函数H(z)为H(z)是1-z的(N-1)次多项式,它在z平面上有(N-1)个零点,原点z=0是(N-1)阶重极点。因此,H(z)永远稳定,它可以在幅度特性随意设计的同时,保证精确、严格的线性相位。(2)FIR滤波器的基本结构数字滤波是将输入的信号序列,按规定的算法进行处理,从而得到所期望的输出序列,FIR滤波器的差分方程为:对上式进行Z变换得到FI

    5、R滤波器的传递函数为:由上式可以看出,H(z)是1-z的N-1次多项式,它在z平面内有N-1个零点,同时在原点处有N-1个重极点。N阶滤波器通常采用N个延迟单元、N个加法器与N+1个乘法器,取图中(a)、(b)两种结构。图FIR滤波器的一般结构因为FIR滤波器的单位抽样响应是有限长的,所以它永远是稳定的。另外,若对h(n)提出一些约束条件,那么可以很容易地使H(z)具有线性相位,这在信号处理的很多领域是非常重要的。FIR滤波器的设计任务,是要决定一个转移函数H(z),使它的频率响应满足给定的要求。这里所说的要求,除了通带频率pw、阻带频率及两个带上的最大和最小衰减p和s外,很重要的一条是保证H

    6、(z)具有线性相位。(3)Chebyshev逼近法窗函数法和频率采样法设计出的滤波器的频率特性都是在不同意义上对所给理想频率特性()jwdeH的逼近。由数值逼近理论可知,对某个函数f(x)的逼近一般有以下三种方法:插值法(InterpolatingWay)最小平方逼近法(LeastSquareApproachingWay)一致逼近法(ConsistentApproachingWay)切比雪夫最佳一致逼近的基本思想是,对于给定区间a,b上的连续函数()xf,在所有n次多项式的集合nj中,寻找一个多项式p(x),使它在a,b上对()xf的偏差和其它一切属于nj的多项式p(x)对f(x)的偏差相比是

    7、最小的,即切比雪夫逼近理论,这样的多项式是存在的,且是唯一的,并指出了构造这种最佳一致逼近多项式的方法,就是有名的“交错点组定理”。三、 CCS完成的流程示意图保存结果至输出单元y输入数据.dat初始化DSP读入数据存放至栈顶滤波处理结束是否滤波样本点数(800)处理完?图3-1 CCS完成滤波示意图四、 滤波器源程序:13#includestdio.h #includef100-500-20000.h #define N 101 #define L 800 /信号长度 long y; /每次累加器的中间变量int inL; /输入信号 int outL; /输出信号void main() /

    8、主函数入口 int m,n; int *x; for(n=0;nL-1;n+) /此处循环载入样本点 x=&inn; /指针指向载入样本点地址 y=0; /每次执行完将累加器置成0for(m=0;m2fh通过截止频率为600的滤波器,滤除高频噪声,得到300HZ的原信号,抽样点N为1000。生成的.dat文件如图:3 图6-1 生成.dat文件七、CCS滤波器实现1.将cmd连接文件,fir.c源文件,.lib库文件添加到工程之中,重新编译,得到。Out可执行文件,将生成的.out文件加载到项目当中,然后将外界的.dat文件load到CCS中,start address为in,长度为0x1ff

    9、f,选择加载类型为DATA。之后运行程序,选择view,查看graphics,属性修改如下:图7-1 ccs图形显示属性设置然后将输入和输出的时序图和频域图都显示如下,滤波之后同滤波之前比较:图7-2 输入输出波形图和频谱图分析:输入的为300HZ的正弦信号和两个高频正弦噪声信号,分别是3000HZ和8000HZ,通过一个截止频率为500HZ的低通滤波器,输出为一个频率为300HZ的正弦信号,3000HZ和8000HZ滤除掉了。频谱输入为3个脉冲,滤波之后输出为一个脉冲。对于原信号:signal=sin(2*pi*sl*n*T); sl=300; fs=20000; T=1/fs;时域周期为:

    10、 T1=fs/s1=200/3=66.7s经过滤波之后取点(50,0)和(150,0)可得滤波之后的波形周期:1.5T2=150-50=100s 得到T2=66.7T1=T2,可判定滤波器滤波性能理想。 2.打开VIEW的watch window,添加in端口,添加out端口,如图7-3所示:图7-3 window输出out端口地址和数据3.打开memory窗口out端口数据如图7-4所示:图7-4 memory输出out端口地址和数据八、扩展语音信号滤波观察重新设计滤波器,通过输入一个语音信号,测的其抽样频率为8192HZ,将MATLAB上也定义抽样频率为8192HZ,截至频率为300,阶数

    11、为100,将语音信号加噪声生成.dat文件输入到CCS中,其滤波之后效果如下:图8-1 语音信号滤波输入与输出九、心得与体会 这次设计FIR滤波器设计,让我对数字信号和DSP技术和应用有了更深的理解,C语言的编程也更加熟悉,而且对MATLAB也有了一定的认识,更重要的是提高了我的学习能力和解决问题的能力。与其他高级语言的程序设计相比,MATLAB环境下可以更方便、快捷地设计出具有严格线性相位的FIR滤波器,节省大量的编程时间,提高编程效率,且参数的修改也十分方便,还可以进一步进行优化设计。如何通过软件来实现低通滤波器设计,而之前经常用硬件来实现滤波器的设计,硬件实现的低通滤波器滤波单一,无法改

    12、变,硬件设计一旦错了就会无法挽回和经济的浪费,结果又得重新开始浪费时间。而通过DSP的FIR低通滤波器可以改变设置的参数来改变滤波器的截止频率,使得设计非常的灵活,方便且易于修改。而MATLAB在编程上更灵活,功能更强大。在FIR低通滤波器的设计中,还可以通过软件编程和硬件的结合,通过示波器来看到真实的低通滤波器的设计,因为软件还是一个虚拟的东西,最终的成品不仅仅在于软件上,与实际的结合才是真正意义上的设计,通过本次课程设计,使我更加扎实的掌握了有关数字滤波器方面的知识,在这次课程设计中虽然遇到了很多的困难,但是经过一次又一次的查阅资料,一次一次的认真思考,终于找出了原因,通过这次课程设计,了

    13、解知识还是需要通过实践才能真正的掌握住精髓。通过这一周的课程设计,从查找资料,题目选定,到最后的实践成稿。正在这其中学到了很多的东西。既巩固了在课堂上学习的知识,也在查找资料的过程中也学到了很多课本上没有学习到的知识,可以说是收获颇丰。通过这次课程设计将理论与实践相结合,从中提高而来自己独立思考能力和实践动手能力,从而不断超越自己,学会了坚持不懈,坚持到底。参考文献:1. 乔瑞萍, 崔涛, 张芳娟.TMS320C54x原理及应用 M .西安:西安电子科技大学出版社, 2005.2. 周金治.基于 Matlab与 DSP的语音信号 FIR滤波 J .兵工自动化, 20053. 陈金鹰,DSP技术

    14、及应用,机械工业出版社,2004年4. 程佩青,数字信号处理,M清华大学出版社,20035. 王先峰,石东,基于DSP的FIR数字滤波器的设计与实现,天津科技大学电子信息与自动化学院,天津300222附录:CCS滤波源程序#includestdio.h #includef100-500-20000.h #define N 101 #define L 800 /信号长度 long y; /每次累加器的中间变量int inL; /输入信号 int outL; /输出信号void main() /主函数入口 int m,n; int *x; for(n=0;nL-1;n+) /此处循环载入样本点 x

    15、=&inn; /指针指向载入样本点地址 y=0; /每次执行完将累加器置成0for(m=0;m SARAM1|SARAM2|SARAM0 /* Code */ /* Both stacks must be on same physical memory page */ .stack DARAM0 /* Primary system stack */ .sysstack DARAM0 /* Secondary system stack */ .bss DARAM0|SARAM0|SARAM1 /* Global & static vars */ .data DARAM0|SARAM0|SARAM

    16、1 /* Initialized vars */ .const DARAM0|SARAM0|SARAM1 /* Constant data */ .sysmem DARAM0|SARAM0|SARAM1 /* Dynamic memory (malloc) */ .switch SARAM2 /* Switch statement tables */ .cinit SARAM2 /* Auto-initialization tables */ .pinit SARAM2 /* Initialization fn tables */ .cio SARAM2 /* C I/O buffers */

    17、 vectors: 0xffff00 /* Interrupt vectors */ .ioport IOPORT PAGE 2 /* Global & static ioport vars */生成.dat的matlab源程序sl=300; ns1=3000; ns2=8000; fs=20000; N=1000; T=1/fs; n=0:N; signal=sin(2*pi*sl*n*T); noise1=0.7*sin(2*pi*ns1*n*T);noise2=0.4*sin(2*pi*ns2*n*T); x=(signal+noise1+noise2);%归一化:xout=x/max(x); xto_css=round(32767*xout); xoutcss=xto_css; %通过函数fopen产生一个.dat文件,执行写操作,写入CCS头标识,写入三个正弦信号数据;fid=fopen(E:program filesmatlab2012bbininputd.dat,w); fprintf(fid,1651 1 0 1 0n); fprintf(fid,%dn,xoutcss);


    注意事项

    本文(DSP技术与应用课程设计报告.doc)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开