已阅读5页,还剩5页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
IIR滤波器的DSP实现一、设计目的1、进一步了解滤波器的原理,了解IIR滤波器的设计过程。2、了解CCS的使用方法,以及掌握基本编程语言。3、掌握CCS设计IIR滤波器。4、掌握CCS工程的建立,源文件的汇编、连接以及调试程序,并且观察其输入、输出波形。二设计内容用DSP汇编语言编程,实现IIR运算,对产生的合成信号,滤除信号中高频成分,观察滤波前后的波形变化。 三、滤波器的简介1、数字滤波器原理数字滤波是数字信号处理的一部分。数字信号处理主要是研究用数字或符号的序列来表示信号波形,并用数字的方式去处理这些序列,把它们改变成在某种意义上更为有希望的形式,以便估计信号的特征参量,或削弱信号中的多余分量和增强信号中的有用分量。具体来说,凡是用数字方式对信号进行滤波、变换、调制、解调、均衡、增强、压缩、估值、识别、产生等加工处理,都可纳入数字信号处理领域。数字信号处理学科的一项重大进展是关于数字滤波器设计方向的研究。描述离散系统输出与输入关系的卷积和差分方程只是给数字信号滤波器提供运算规则,使其按照这个规则完成对输入数据的处理。时域离散系统的频域特性:其中、分别是数字滤波器的输出序列和输入序列的频域特性(或称为频谱特性),是数字滤波器的单位取样响应的频谱,又称为数字滤波器的频域响应。输入序列的频谱经过滤波后,因此,只要按照输入信号频谱的特点和处理信号的目的, 适当选择,使得滤波后的满足设计的要求,这就是数字滤波器的滤波原理。2、iir滤波器数字滤波器根据其冲激响应函数的时域特性,可分为两种,即无限长冲激响应(IIR)数字滤波器和有限长冲激响应(FIR)数字滤波器。IIR滤波器与FIR滤波器相比,具有相位特性差的缺点,但它的结构简单,运算量小,具有经济、高效的特点,并且可以用较少的阶数获得很高的选择性。因此也得到了较为广泛的应用。IIR 数字滤波器的特征是,具有无限持续时间冲激响应,需要用递归模型来实现,其差分方程为:系统函数为:设计IIR滤波器的任务就是寻求一个物理上可实现的系统函数H(z),使其频率响应H(z)满足所希望得到的频域指标,即符合给定的通带截止频率、阻带截止频率、通带衰减系数和阻带衰减系数。四、平台简介CCS的全称是Code Composer Studio,它是美国德州仪器公司(Texas Instrument, TI)出品的代码开发和调试套件。TI公司的产品线中有一大块业务是数字信号处理器(DSP)和微处理器(MCU),CCS便是供用户开发和调试DSP和MCU程序的集成开发软件。CCS是一种针对TMS320系列DSP的集成开发环境,在Windows操作系统下,采用图形接口界面,提供有环境配置、源文件编辑、程序调试、跟踪和分析等工具。 CCS有两种工作模式,即 :软件仿真器模式:可以脱离DSP芯片,在PC机上模拟DSP的指令集和工作机制,主要用于前期算法实现和调试。 硬件在线编程模式:可以实时运行在DSP芯片上,与硬件开发板相结合在线编程和调试应用程序。 CCS的开发系统主要由以下组件构成: TMS320C54x集成代码产生工具; CCS集成开发环境; DSP/BIOS实时内核插件及其应用程序接口API; 实时数据交换的RTDX插件以及相应的程序接口API; 由TI公司以外的第三方提供的各种应用模块插件。 CCS的功能十分强大,它集成了代码的编辑、编译、链接和调试等诸多功能,而且支持C/C+和汇编的混合编程,其主要功能如下: 具有集成可视化代码编辑界面,用户可通过其界面直接编写C、汇编、.cmd文件等; 含有集成代码生成工具,包括汇编器、优化C编译器、链接器等,将代码的编辑、编译、链接和调试等诸多功能集成到一个软件环境中; 高性能编辑器支持汇编文件的动态语法加亮显示,使用户很容易阅读代码,发现语法错误; 工程项目管理工具可对用户程序实行项目管理。在生成目标程序和程序库的过程中,建立不同程序的跟踪信息,通过跟踪信息对不同的程序进行分类管理; 基本调试工具具有装入执行代码、查看寄存器、存储器、反汇编、变量窗口等功能,并支持C源代码级调试; 断点工具,能在调试程序的过程中,完成硬件断点、软件断点和条件断点的设置; 探测点工具,可用于算法的仿真,数据的实时监视等; 分析工具,包括模拟器和仿真器分析,可用于模拟和监视硬件的功能、评价代码执行的时钟; 数据的图形显示工具,可以将运算结果用图形显示,包括显示时域/频域波形、眼图、星座图、图像等,并能进行自动刷新; 提供GEL工具。利用GEL扩展语言,用户可以编写自己的控制面板/菜单,设置GEL菜单选项,方便直观地修改变量,配置参数等;四、源程序(1) 汇编语言源成序(iir.asm).global _iir,_init,_outdata_iir bset frct sub #1,t0 mov t0,mmap(csr)add t0,ar0mov xar2,xdpmov ar2,cdpmov #0,ac0rpt csrmacmz *ar0-,*cdp+,ac0add t0,ar1mov xar3,xdpmov ar3,cdprpt csrmacmz *ar1-,*cdp+,ac0mar *ar1+mov hi(ac0),*ar1mov hi(ac0),t0bclr frctret2.链接命令文件-stack 0x0500-sysstack 0x0500-heap 0x1000-c-u _Reset-l rts55.libMEMORY PAGE 0: RAM(RWIX): origin=0x000100, length=0x01ff00 ROM(RIX): origin=0x020100, length=0x01ff00 VECS(RIX): origin=0xffff00, length=0x000200PAGE 2: IOPORT(RWI):origin=0x000000, length=0x020000 SECTIONS .text ROM PAGE 0 .data ROM PAGE 0 .bss RAM PAGE 0 .const RAM PAGE 0 .sysmem RAM PAGE 0 .stack RAM PAGE 0 .cio RAM PAGE 0 .sysstack RAM PAGE 0 .switch RAM PAGE 0 .cinit RAM PAGE 0 .pinit RAM PAGE 0 .vectors VECS PAGE 0 .ioport IOPORT PAGE 2 3.C程序#include math.h#define signal_1_f 500#define signal_2_f 10000#define signal_sample_f 25000#define pi 3.1415926#define IIRNUMBER_L 2#define bufer_L 256int N_L=IIRNUMBER_L; int data_inbufer_L;int outbufer_L ;int xIIRNUMBER_L+1;int yIIRNUMBER_L+1;int k=0;int bufer=bufer_L;int fBnIIRNUMBER_L=0,0x634a;int fAnIIRNUMBER_L=0xe5c,0xe5c;extern int iir(int *x,int *y,int *fAn,int *fBn,int N_L);extern int init(int *,int *,int);extern int outdata(int *,int,int);void inputwave();void main()int iirout;inputwave();init(x,y,N_L);while(1)x0=data_ink;iirout=iir(x,y,fAn,fBn,N_L);outdata(out,iirout,bufer);k+;if(k=bufer_L)k=0;void inputwave()float wt1;float wt2;int i;for(i=0;i=bufer_L;i+)wt1=2*pi*i*signal_1_f;wt1=wt1/signal_sample_f;wt2=2*pi*i*signal_2_f;wt2=wt2/signal_sample_f;data_ini=(cos(wt1)+cos(wt2)/2*32768;在CCS内编写以上程序通过加载运行等操作我们可以得到得到输入,输出的时域与频域波形图。六、实验结果及分析 1输入信号 输入信号波形属性 输入信号时域波形图.输入波形频域图2.输出波形输出波形属性:输出时域图:输出频域图:3.分析仿真结果:有仿真输入波形时域是混合波的叠加,在频域分析时我们可以看出该输入信号是一低频和一高频的叠加。当我们将该信号通过一IIR滤波器时,我们从输出波形看到,时域是一余弦波,频域也只保留了低频频率成分,这说明混合信号通过IIR滤波器后,高频成分被滤除,符合滤波器功能,因此CCS可以作为一种模拟滤波器功能的软件。七、设计心得、体会通过这次的DSP课程设计,我收获很大。虽然在刚接触CCS时我感觉有点困难,但是我并没有被困难吓到,相反我当时特想学会运用它。于是我和同学们一起研究,终于我们从CCS的安装到CCS的系统配置,再到CCS基本操作的练习与运用,再到后来学习怎样创建CCS项目就这样我们慢慢的了解了CCS并学会了它的简单操作与运用。而本次我们课设要在CCS下实现IIR滤波器的功能,创立源程序是关键也是难点,这对于刚刚了解CCS的我们绝对是一考验,好在大家都很用心,刚开始我们不会建立源程序,也不会汇编,于是我们互相讨论并向老师请教,慢慢的一切都迎刃而解了,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/Z 150-2025永磁体磁化行为指南
- 全国安全教育日培训课件
- 全员消防安全知识技能培训课件
- 《税法》第9章:财产和行为税法
- 快乐番薯销售话术
- 厨师职业发展路径图解
- 保安主管面试应答指南
- 人工智能简明教程
- 中国农业大学职业发展
- 安全简介手册讲解
- 2025秋人教版(2024)八年级上册英语课件 Unit 1 Happy Holiday (第2课时) Section A Pronunciation 1- 2f
- 冬季心脑血管疾病预防
- 党建阵地日常管理制度
- 车间医药箱管理制度
- T/CSPSTC 17-2018企业安全生产双重预防机制建设规范
- 遥感图像处理技术在城市更新中的应用
- 食叶草种植可行性报告
- 落叶清扫压缩机设计答辩
- 广东省建筑装饰装修工程质量评价标准
- 珍爱生命活在当下-高一上学期生命教育主题班会课件
- 楼板回顶施工方案
评论
0/150
提交评论