ccs实现dsp课设iir滤波器(1)

合集下载

ccs实现dsp课设iir滤波器(1)

ccs实现dsp课设iir滤波器(1)

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)满足所希望得到的频域指标,即符合给定的通带截止频率、阻带截止频率、通带衰减系数和阻带衰减系数。

DSP实验报告——FIR和IIR滤波器设计

DSP实验报告——FIR和IIR滤波器设计

DSP 实验报告实验一 FIR 滤波器的设计1.实验目的利用所学DSP 知识,在CCS3.3平台上,对TMS320VC5416DSP 设计,编程实现FIR 滤波器。

从而学会使用CCS 软件和TMS320VC5416实验板。

2.实验要求设计一个10阶的FIR 滤波器,要求 =2.5kHZ ,定点实现。

并对 =8kHZ 的多正弦波合成文件进行滤波测试,显示出输入和输出信号。

3.实验原理一个截止频率为 的理想数字低通滤波器,其传递函数的表达式为:⎪⎩⎪⎨⎧≤≤≤=-πωωωωωτωc c j jd ee H ,0,)(这个滤波器是物理不可实现的。

为了产生有限长度的冲激响应函数,我们取样响应为)(n h ,长度为N 。

)(n h 表示截取)(n h d 后的冲激响应,即)()()(n h n n h d ω=,其中)(n ω即为窗函数,窗长为N 。

一般的FIR 滤波器差分方程如下:1()()()n k y n h k x n k -==-∑进行Z 变换得到FIR 的系统函数为:∑-=-=10)()(N n nz n h z HN 阶滤波器通常采用N 个延迟单元、N 个加法器与N+1个乘法器组成。

因此可以得到FIR 滤波器的结构图如图1所示。

图1 FIR 滤波器直接结构图4.设计思路对于FIR滤波器的设计,其系数()h n是关键。

由于matlab自带滤波器设计工具箱和滤波器设计函数,故借用matlab工具,设计满足条件的滤波器并导出系数以备编写滤波器程序时使用。

实验需要用到的输入数据是多正弦波合成文件,对于输入信号的设计,这里也借助matlab编程生成dat文件。

然后用C语言编写FIR滤波器的主程序,输入文件在程序运行后导入。

5.实验内容(1)滤波器系数的设计由于实验只给出滤波器条件为N=10,=2.5kHZ,并没有给出和,所以这里调用matlab工具箱函数fir1实现窗函数法设计滤波器。

fir1的调用格式为 ( ,),返回值为6dB截止频率为的N阶(单位脉冲响应h(n)长度=N+1)的FIR低通滤波器的系数向量(为标量),默认选用哈明窗。

DSP课程设计--基于IIR的语音信号滤波

DSP课程设计--基于IIR的语音信号滤波

1设计的总体方案本题目通过DSP 处理器控制TLC320AD50采集音频信号,在CCS 软件中分析音频信号的频谱图,使用Matlab 设计相应的IIR 数字滤波器(低通、带通或带阻等滤波器中的一种)并得到滤波器H(z)的系数,然后根据这些系数,编写DSP 程序(C 语言或汇编)对已采集信号进行处理,最后在CCS 软件中得到处理后音频信号的频谱图,比较滤波前后信号的频谱图。

其中语音信号的采集与回放是采用TLC320AD50芯片对语音信号进行A/D 以及D/A 转换,从而实现对语音信号的数字处理和语音回放;DSP 芯片主要是将转化成数字信号的语音信号用DSP 算法对其进行处理,并将处理后的信号送到输出端,图1.1为本题目设计的总体方案图。

图1.1 总体方案设计图对滤波后的语音信号进行D/A 转换语音信号的采集输入语音信号的回放设计IIR 滤波器并编写DSP 程序对语音信号进行A/D 转换DSP 信号处理器2设计原理2.1 DSP信号处理器与TLC320AD50接口电路的原理图图2.1给出了一种基于TMS320C54X数字信号处理芯片和TLC320AD50C模拟接口电路的语音处理系统方案, 这个系统可用于多种语音处理场合,通过修改程序可达到不同的语音处理效果,具有良好的扩展性、灵活性和适应性等。

图2.1 DSP信号处理器与TLC320AD50接口电路的原理图2.2 IIR滤波器的基本结构IIR滤波器与FIR滤波器相比,具有相位性差的特点,但它的结构简单、运算量小、具有经济、高效的特点,并且可以用较小的阶数获得很高的选择性。

因此,也得到了较为广泛的应用。

IIR滤波器的差分方程的一般表达式为y(n)=∑b i x(n-i)-∑a i y(n-i)式中,x(n)为输入序列;y(n)为输出序列;a i和b i为滤波器系数。

若所有的系数a i等于零,则为FIR滤波器。

IIR滤波器具有无限长的单位脉冲响应,在结构上存在反馈回路,具有递归性,即IIR滤波器的输出不仅与输入有关,而且与过去的输出有关。

dsp滤波器llR课程设计

dsp滤波器llR课程设计

dsp滤波器llR课程设计一、课程目标知识目标:1. 学生能理解数字信号处理(DSP)的基本概念,特别是滤波器的作用和分类。

2. 学生能掌握IIR(无限冲击响应)滤波器的原理和数学描述。

3. 学生能学习并应用IIR滤波器的不同类型,如巴特沃斯、切比雪夫和椭圆滤波器。

4. 学生能够明确IIR滤波器的频率响应特性及其与理想滤波器之间的差异。

技能目标:1. 学生能够使用计算机软件(如MATLAB)进行IIR滤波器的设计和仿真。

2. 学生能够通过实验或模拟,分析并评估IIR滤波器的性能,包括幅频响应和相频响应。

3. 学生能够解决实际应用中IIR滤波器的设计问题,如确定合适的滤波器阶数和截止频率。

情感态度价值观目标:1. 学生能够培养对数字信号处理学科的兴趣,认识到其在现代通信和信号处理领域的重要性。

2. 学生能够通过小组合作完成滤波器设计任务,培养团队协作能力和解决问题的能力。

3. 学生能够通过课程学习,增强对数学工具在工程问题解决中作用的认可,培养科学严谨的态度。

本课程设计旨在结合学生年级特点和知识深度,通过理论与实践相结合的方式,使学生不仅掌握IIR滤波器的基础知识,而且能够在实际应用中灵活运用,从而激发学生的学习兴趣和探究欲望,提高其分析和解决复杂工程问题的能力。

二、教学内容本节教学内容紧密围绕课程目标,结合教材以下章节进行组织:1. 数字信号处理基础概念:回顾数字信号处理的基本原理,重点介绍离散时间信号与系统的基本性质,为理解滤波器设计奠定基础。

2. 滤波器原理与分类:详细讲解滤波器的定义、作用及其分类,特别是无限冲击响应(IIR)滤波器的特点和应用场景。

3. IIR滤波器数学描述:深入分析IIR滤波器的差分方程表示和Z域转移函数,包括极点和零点的概念及其对滤波器性能的影响。

4. IIR滤波器设计方法:系统介绍巴特沃斯、切比雪夫和椭圆等常见IIR滤波器的设计方法和步骤,强调不同类型滤波器的性能特点。

用DSP实现IIR滤波器

用DSP实现IIR滤波器


MPY @B2,A LTD @x1
;计算前向通道,x2*B2→A ;x1送T寄存器,x1移至x2单元
向 MAC @B1,A ;x2*B2+x1*B1→A
运 LTD @x0
;x0送T寄存器,x0移至x1单元

MAC @B0,A STH A,@x0
;x2*B2+x1*B1+x0*B0→A ;暂存y(n)=x2*B2+x1*B1+x0*B0→x0单元
X x(n-2)
Y y(n-2)
B B2
A A2
x(n-1) AR4 y(n-1)
AR2 x(n)
y(n) AR5
B1 AR3 A1
B0
(未用)
15
例5-32 编写直接形式二阶IIR滤波器的源程序。
.title “IIR3.asm” ;给汇编程序取名
.mmregs
;说明存储器映象寄存器
.def start ;定义标号start的起始位置
.text
start: SSBX FRCT ;指明进行小数乘法
STM #x,AR1 ;传送初始数据x(n-2),x(n-1)
RPT #1
;重复二次下条指令
MVPD #table,*AR1+ ;x(n-2)=0,x(n-1)=0
STM #Y,AR1 ;传送初始数据y(n-2),y(n-1)
RPT #1
是有限长序列。而IIR滤波器的脉冲传递在Z平面上有
极点存在,ai≠0,其单位冲激响应是无限长序列。 2
特点
IIR滤波器与FIR滤波器的一个重要区别是,IIR滤 波器可以用较少的阶数获得很高的选择特性,所用的 存储单元少,运算次数少,具有经济、高效的特点。 但是,在有限精度的运算中,可能出现不稳定现象。 而且,选择性越好,相位的非线性越严重,不像FIR 滤波器可以得到严格的线性相位。

IIR滤波器的DSP实现

IIR滤波器的DSP实现

IIR滤波器的DSP实现IIR滤波器(Infinite Impulse Response Filter)是一种数字滤波器,其输出跟输入信号有无穷多个时刻的关联,因此称为无限冲激响应滤波器。

与之相对的是有限冲激响应滤波器(FIR Filter)。

以一阶IIR低通滤波器为例,其差分方程可以表示为:y[n]=b0*x[n]+b1*x[n-1]-a1*y[n-1]其中,y[n]表示输出信号,x[n]表示输入信号,b0、b1、a1是滤波器的系数。

在DSP实现中,我们可以按照如下的步骤进行操作:1.初始化滤波器的系数:根据滤波器的设计需求,计算出b0、b1、a1的值。

2.初始化输入输出缓冲区:分配内存空间来存储输入信号x[n]和输出信号y[n]。

3.计算滤波器输出:按照差分方程的形式,遍历输入信号的每个采样点,并根据当前和过去的输入信号和输出信号值,计算当前输出信号的值。

4.更新输入输出缓冲区:将当前输出信号的值保存在输出缓冲区中,并更新输入缓冲区的值,将当前输入信号的值保存在输入缓冲区中。

5.重复步骤3和4,直到处理完所有输入信号的采样点。

6.释放内存空间:在处理完所有输入信号后,释放之前分配的内存空间。

需要注意的是,在实际的DSP实现中,由于数字信号的存储和处理是以离散的方式进行的,可能会遇到一些数值精度和计算精度的问题。

因此,在设计和实现IIR滤波器时,需要进行适当的处理和优化,以减小误差和提高性能。

此外,IIR滤波器还有其他的实现方法,如级联形式(Cascade Form)、直接形式转置(Direct Form II)等。

这些实现方法在性能、计算复杂度和资源消耗等方面可能存在差异,选择合适的实现方法需要综合考虑实际应用需求和性能要求。

总之,IIR滤波器的DSP实现是一项复杂的任务,需要深入理解滤波器的原理和算法,并结合具体应用需求进行实现和优化。

通过合理的设计和实现,可以有效地应用IIR滤波器来处理数字信号,满足各种信号处理应用的需求。

dsp课程设计iir

dsp课程设计iir

dsp课程设计iir一、教学目标本课程的教学目标是使学生掌握IIR(无限冲击响应)滤波器的基本原理和设计方法,能够运用DSP(数字信号处理)技术进行IIR滤波器的设计和分析。

具体目标如下:1.掌握IIR滤波器的数学模型和传递函数。

2.理解IIR滤波器的频率响应特性和相位响应特性。

3.熟悉IIR滤波器的设计方法和步骤。

4.能够使用DSP工具或软件进行IIR滤波器的设计和仿真。

5.能够分析IIR滤波器的性能指标,如阶跃响应、波特图等。

6.能够解决实际信号处理问题,如噪声消除、信号滤波等。

情感态度价值观目标:1.培养学生的创新思维和问题解决能力,使其能够运用IIR滤波器解决实际问题。

2.培养学生对信号处理领域的兴趣和热情,提高其对DSP技术的认识和应用能力。

二、教学内容根据课程目标,教学内容主要包括IIR滤波器的基本原理、设计方法和DSP技术的应用。

具体教学大纲如下:1.IIR滤波器的基本原理:–介绍IIR滤波器的数学模型和传递函数。

–解释IIR滤波器的频率响应特性和相位响应特性。

2.IIR滤波器的设计方法:–介绍IIR滤波器的设计方法和步骤。

–讲解常用的IIR滤波器设计算法,如巴特沃斯、切比雪夫等。

3.DSP技术的应用:–介绍DSP技术在IIR滤波器设计和分析中的应用。

–讲解如何使用DSP工具或软件进行IIR滤波器的设计和仿真。

三、教学方法为了激发学生的学习兴趣和主动性,本课程将采用多种教学方法,如讲授法、讨论法、案例分析法和实验法等。

1.讲授法:通过教师的讲解,使学生掌握IIR滤波器的基本原理和设计方法。

2.讨论法:引导学生参与课堂讨论,培养学生的创新思维和问题解决能力。

3.案例分析法:分析实际信号处理问题,让学生学会运用IIR滤波器解决实际问题。

4.实验法:让学生动手实践,使用DSP工具或软件进行IIR滤波器的设计和仿真。

四、教学资源为了支持教学内容和教学方法的实施,丰富学生的学习体验,将选择和准备以下教学资源:1.教材:选择合适的教材,如《数字信号处理》等,用于学生学习和参考。

DSP 课件 IIR滤波器设计

DSP 课件 IIR滤波器设计

幅度响应
Type 2 Chebyshev Filter 1 N=3 N=5 N=7
Magnitude
0.8 0.6 0.4 0.2 0 0 1 2

3
特点:1、通带内单调下降;2、阻带内具有等波纹
阶数估计:
H a ( j s )
2
1 2 1 2TN ( s / p )
1 1 2 2 1 1 cosh[N cosh ( s / p ) A
Butterworth Filter 1 N=2 N=4 N = 102源自3、滚降的陡峭度(参数N)
2 1,1 c时, 2 G ( 2 ) 10 log10 1 G (1 ) 6 NdB
2N
Magnitude
0.8 0.6 0.4 0.2 0 0 1 2
模拟低通滤波器设计
滤波器特性
理想低通滤波器:
T
H r ( j )
c
c

典型的模拟低通滤波器幅度响应指标
滤波器特性:
通带 0 p 中,
1 p H a ( j) 1 p , for p
阻带 s 中,
H a ( j) s , for s
归一化形式(c=1)
1
s N a1 s n 1 a 2 s n 2 a N 1 s a N
巴特沃斯滤波器的特性:
1、 =0处的最大平坦幅度特性(前2N-1阶导数为0) 2、-3dB截止频率(参数c )
G ( c ) 10 log10 H a ( j c ) 10 log10 (1 / 2) 3dB c : 3dB截止频率
椭圆滤波器的幅度响应

DSP实验报告——FIR和IIR滤波器设计

DSP实验报告——FIR和IIR滤波器设计
N 阶滤波器通常采用 N 个延迟单元、N 个加法器与 N+1 个乘法器组成。因 此可以得到 FIR 滤波器的结构图如图 1 所示。
DSP 实验报告——FIR 和 IIR 滤波器设计
4、设计思路
图 1 FIR 滤波器直接结构图
对于 FIR 滤波器的设计,其系数 h(n) 就是关键。由于 matlab 自带滤波器设计
DSP 实验报告——FIR 和 IIR 滤波器设计
DSP 实验报告
实验一 FIR 滤波器的设计
1、实验目的
利用所学 DSP 知识,在 CCS3、3 平台上,对 TMS320VC5416DSP 设计,编程实 现 FIR 滤波器。从而学会使用 CCS 软件与 TMS320VC5416 实验板。
2、实验要求
图8
(a) 时域图
DSP 实验报告——FIR 和 IIR 滤波器设计
(b) 频域图 图 9 输入信号 1 波形图
(a) 滤波结果时域图
(b) 滤波结果频域图 图 10 信号 1 滤波结果图 (a) 时域图
(b)频域图 图 11 输入信号 2 波形图
(a) 滤波结果时域图
DSP 实验报告——FIR 和 IIR 滤波器设计
取样响应为 h(n) ,长度为 N。 h(n) 表示截取 hd (n) 后的冲激响应,即 h(n) (n)hd (n) ,
其中(n) 即为窗函数,窗长为 N。一般的 FIR 滤波器差分方程如下:
n1
y(n) h(k)x(n k) k 0
进行 Z 变换得到 FIR 的系统函数为:
N 1
H (z) h(n)z n n0
DSP 实验报告——FIR 和 IIR 滤波器设计
图 7 CCS3、3 程序窗口

基于DSP的IIR数字滤波器 (设计实验)(汇编语言)(word文档良心出品)

基于DSP的IIR数字滤波器 (设计实验)(汇编语言)(word文档良心出品)

IIR 数字滤波器 (设计实验)一、实验目的1.了解IIR (Infinite Impulse Response ,无限冲激响应)滤波器原理及使用方法;2.了解使用MA TLAB 语言设计IIR 滤波器的方法;3.了解DSP 对IIR 滤波器的设计及编程方法;4.熟悉在CCS 环境下对IIR 滤波器的调试方法;二、实验原理IIR 数字滤波器的传递函数H(z)为:其对应的差分方程为:对于直接形式的二阶IIR 数字滤波器,其结构如图4.1图4.1 IIR 数字滤波器结构图编程时,可以分别开辟四个缓冲区,存放输入、输出变量和滤波器的系数,如图4.2所示。

图4.2 IIR 数字滤波器算法图三、实验内容与步骤设计一个三阶的切比雪夫Ⅰ型带通数字滤波器,其采样频率Fs =16kHz ,其通频带3.2kHz<f <4.8kHz ,内损耗不大于1dB ;f <2.4kHz 和f >5.6kHz 为阻带,其衰减大于20dB 。

输入信号频率为4000Hz 、6500Hz 的合成信号,通过所设计的带通滤波器将6500Hz 信号滤掉,余下4000Hz 的信号,达到滤波效果。

1、IIR 滤波器的MA TLAB 设计在MA TLAB 中设计IIR 滤波器,程序为: wp=[3.2,4.8];ws=[2.4,5.6];rp=1;rs=2001()1Mii i N ii i b zH z a z -=-==-∑∑01()()()MNi i i i y n b x n i a y n i ===-+-∑∑[n,wn]=cheb1ord(wp/8,ws/8,rp,rs)[b,a]=cheby1(n,rp,wn)设计结果为:N=3wn =0.4000 0.6000b0=0.0114747 a0=1.000000b1=0 a1=0b2=-0.034424 a2=2.13779b3=0 a3=0b4=0.034424 a4=1.76935b5=0 a5=0b6=-0.0114747 a6=0.539758在设计IIR滤波器时,会出现系数≥1的情况,为了用Q15定点小数格式表示系数,可以用大数去所有系数。

DSP课程设计--IIR数字滤波器的设计

DSP课程设计--IIR数字滤波器的设计

目录摘要 (I)前言 (1)1 方案设计与论证 (2)1.1 设计方案概论 (2)1.2 设计方案详论 (2)1.3 设计工具CCS及SEED-DTK2812 实验系统简介 (3)2 系统设计 (4)2.1 IIR数字滤波器的设计方法及原理 (4)2.2 程序设计流程图 (6)2.3 系统设计步骤 (6)4 总结 (10)参考文献 (11)致谢 (12)附录 (13)前言本文介绍了滤波器的滤波原理以及模拟滤波器、数字滤波器的设计方法。

重点介绍了IIR数字滤波器的设计方法。

即脉冲响应不变法和双线性变换法。

在此基础上,用DSP 虚拟实现任意阶IIR滤波器。

此设计扩展性好,便于调节滤波器的性能,可以根据不同的要求在DSP上加以实现。

数字信号处理是利用计算机或专用处理设备,以数字形式对信号进行采集、变换、滤波、估值、增强、压缩、识别等处理,以得到符合人们需要的信号形式。

数字信号处理是围绕着数字信号处理的理论、实现和应用等几个方面发展起来的。

数字信号处理在理论上的发展推动了数字信号处理应用的发展。

反过来,数字信号处理的应用又促进了数字信号处理理论的提高。

而数字信号处理的实现则是理论和应用之间的桥梁。

数字信号处理是以众多学科为理论基础的,它所涉及的范围极其广泛。

例如,在数学领域,微积分、概率统计、随机过程、数值分析等都是数字信号处理的基本工具,与网络理论、信号与系统、控制论、通信理论、故障诊断等也密切相关。

近来新兴的一些学科,如人工智能、模式识别、神经网络等,都与数字信号处理密不可分。

可以说,数字信号处理是把许多经典的理论体系作为自己的理论基础,同时又使自己成为一系列新兴学科的理论基础。

数字滤波器根据其冲激响应函数的时域特性,可分为两种,即无限长冲激响应(IIR)数字滤波器和有限长冲激响应(FIR)数字滤波器。

IIR 数字滤波器的特征是,具有无限持续时间冲激响应,需要用递归模型DSP 芯片是一种特别适合数字信号处理运算的微处理器,主要用来实时、快速地实现各种数字信号处理算法。

基于DSP的IIR滤波器的设计

基于DSP的IIR滤波器的设计

基于DSP的IIR滤波器的设计IIR滤波器是一种数字信号处理(DSP)中常用的滤波器,其设计基于离散时间传递函数。

IIR滤波器的设计可以通过不同的方法实现,包括模拟滤波器的转换方法、频率变换方法以及优化方法。

在本文中,我们将讨论基于DSP的IIR滤波器的设计。

IIR滤波器的设计通常包括以下几个步骤:确定滤波器的要求、选择滤波器类型、确定滤波器的阶数、计算滤波器系数、实现滤波器。

首先,确定滤波器的要求是设计IIR滤波器的第一步。

这包括确定滤波器的通带和阻带的频率范围,以及通带和阻带的衰减要求。

这些要求将决定滤波器的类型和阶数。

其次,选择滤波器类型是设计中的第二步。

常见的IIR滤波器类型包括低通滤波器、高通滤波器、带通滤波器和带阻滤波器。

滤波器类型将决定滤波器的架构和系数。

确定滤波器的阶数是设计中的第三步。

滤波器的阶数表示滤波器的复杂程度和能力。

阶数越高,滤波器的频率响应越陡峭,但计算和实现的复杂度也会相应增加。

一般来说,较低阶数的滤波器可以满足大多数应用的要求。

计算滤波器系数是设计中的第四步。

滤波器的系数决定了滤波器的频率响应。

常见的计算方法包括巴特沃斯方法、切比雪夫方法和椭圆方法。

这些方法将根据滤波器的类型、阶数和要求的频率响应计算出滤波器的系数。

最后,实现滤波器是设计中的最后一步。

实现滤波器可以通过直接计算、级联计算或者时域转换等方法。

其中,级联计算是最常用的方法,可以将滤波器的高阶拆分为多个低阶滤波器,以降低计算的消耗。

总结起来,基于DSP的IIR滤波器的设计是一个相对复杂的过程,需要确定滤波器的要求、选择滤波器类型、确定滤波器的阶数、计算滤波器系数,并最终实现滤波器。

这些步骤需要根据具体的应用场景和信号要求进行调整和优化,以获得满意的滤波效果。

(完整word版)DSP基于CCS的IIR滤波器设计实验

(完整word版)DSP基于CCS的IIR滤波器设计实验

实验六IIR滤波器一、实验目的1.熟悉IIR滤波器C54X实现的编程方法.2.测试IIR滤波器的单位冲击响应曲线.3.检查IIR滤波器的频率特性。

二、实验条件1.已经设计出四阶IIR滤波器的参数如下:·通带:0—200Hz·过渡带宽:200Hz-500Hz·通带内波动:<0。

5dB·阻带衰减:<—20dB·采样频率Fs:3600Hz·脉冲传递函数H(z):·差分方程式为:y(n)=*x(n)+*x(n—1)+*x(n-2)+*x(n-3)+*x(n-4)+*y(n-1)+*y (n-2)+*y(n-3)+*y(n-4)其中:A1=-3.4647 A2=4。

4615 A3=—2.8518 A4=0。

6739B0=0.0951 B1=-0。

3139 B2=0。

4460 B3=-0.3139 B4=0。

0951生成正弦数据文件的高级语言程序。

程序名为sin_flt。

exe.2.直接形式二阶IIR滤波器程序Lab6.asm以及链接命令文件Lab6.cmd。

三、实验内容1.消化直接形式二阶滤波器程序iir3.asm以及链接命令文件iir3。

cmd.2.修改Lab6。

asm。

①定义循环缓冲区:X:Y:B: A:相应的汇编命令为:X 。

usect ”X”,5Y 。

usect ”Y”,5B .usect "B",5A 。

usect ”A",5②修改系数表:初始值y(n—4)- y(n-1)以及x(n-4)- x(n-1)均设置为0。

凡绝对值≥1的系数需化成绝对值〈1的系数。

这样,系数表示为:。

word 3116 ;B4=0。

0951.word -10286 ;B3=-0.3139.word 14615 ;B2=0.4460。

word -10286 ;B1=—0。

3139。

word 3116 ;B0=0.0951.word —22082 ;A4=-0.6739.word 31149 ;A3/3=2。

基于某DSP地IIR设计(C语言编程)

基于某DSP地IIR设计(C语言编程)

基于DSP的IIR滤波器设计姓名:专业:学号:指导教师:日期:一、设计目的为了熟练使用DSP ,在本课程结束之际,利用所学的数字信号处理知识设计一IIR 滤波器,并在基于DSP 平台的仿真软件CCS 下通过软件模拟仿真实现基本的滤波功能,其中输入信号和滤波器的各个参数自行确定。

首先可以借助Matlab 来产生输入数据,并根据输入信号确定滤波器参数,然后根据产生滤波器参数在CCS 下编写程序实现滤波器功能,最后进行滤波器性能的测试,完成本次课程设计。

本设计中使用的信号为信息信号: signal=sin(2*pi*sl*n*T)高频噪声: noise =0.5*sin(2*pi*ns1*n*T)混合信号: x=(signal+noise)其中sl=1000Hz ,ns1=4500Hz ,T=1/10000。

混合信号波形为滤波器输入信号波形,信息信号波形为输出信号波形,滤波器的效果为滤除两个高频噪声。

二、IIR 滤波器基本理论数字滤波器根据其冲激响应函数的时域特性,可分为两种,即无限长冲激响应(IIR)数字滤波器和有限长冲激响应(FIR)数字滤波器。

IIR 滤波器与FIR 滤波器相比,具有相位特性差的缺点,但它的结构简单,运算量小,具有经济、高效的特点,并且可以用较少的阶数获得很高的选择性。

因此也得到了较为广泛的应用。

(1)IIR 滤波器的基本结构IIR 滤波器差分方程的一般表达式为:)()()(10i n y b i n x a n y Ni i N i i -+-=∑∑==式中x(n)为输入序列;y(n)为输出序列;和为滤波器系数。

IIR 滤波器具有无限长的单位脉冲响应,在结构上存在反馈回路,具有递归性,即IIR 滤波器的输出不仅与输入有关,而且与过去的输出有关.其传递函数为:∑∑=-=-+=Nk kk M r r rZ a Z b z H 101)( 设计IIR 滤波器的任务就是寻求一个物理上可实现的系统函数H(z),使其频率响应H(z)满足所希望得到的频域指标,即符合给定的通带截止频率、阻带截止频率、通带衰减系数和阻带衰减系数。

DSP 实验五 IIR滤波器设计的DSP实现

DSP 实验五 IIR滤波器设计的DSP实现

;以上是前向通道计算
STH A,*AR2+ ;将输出存入 AR2 指向的单元(z),且 AR2 加 1
BANZ IIR1,*AR4- ;若 AR4 不等于 0 则跳到 IIR1,循环
end:B end
.end
;程序结束
链接命令文件:ch5p1.cmd
-e aa
-m map.map
MEMORY
{
PAGE 0:
址 AR1 加 1
STM #x1,AR1
RPT #1
MVPD #tablex,*AR1+
; 将 w(n-1)和 w(n-2)的初始值存入 AR1 所指向的
数据存储空间,且地址 AR1 加 1
2
DSP 原理与应用实验指导书
STM #B2,AR1
RPT #4
MVPD #tableBA,*AR1+
; 将滤波系数存入 AR1 所指向的数据存储空间,且地
5
DSP 原理与应用实验指导书
.word 0,11756*32768/100000,0,19021*32768/100000,0 .word 0,0,-19021*32768/100000,0,-11756*32768/100000 .word 0,11756*32768/100000,0,19021*32768/100000,0 .word 0,0,-19021*32768/100000,0,-11756*32768/100000 .word 0,11756*32768/100000,0,19021*32768/100000,0 .word 0,0,-19021*32768/100000,0,-11756*32768/100000 .word 0,11756*32768/100000,0,19021*32768/100000,0 .word 0,0,-19021*32768/100000,0,-11756*32768/100000 .word 0,11756*32768/100000,0,19021*32768/100000,0 .word 0,0,-19021*32768/100000,0,-11756*32768/100000 .word 0,11756*32768/100000,0,19021*32768/100000,0 .word 0,0,-19021*32768/100000,0,-11756*32768/100000 .word 0,11756*32768/100000,0,19021*32768/100000,0 .word 0,0,-19021*32768/100000,0,-11756*32768/100000 将链接命令文件 ch5p1.cmd 改为: -e aa -m map.map MEMORY { PAGE 0: EPROM :org=04000H len=1000H PAGE 1: SPRAM :org=0060H len=0130H DARAM :org=0190H len=1380H } SECTIONS { .text :> EPROM PAGE 0 .data :> EPROM PAGE 0 .bss :> SPRAM PAGE 1 XN : align(128){ }>DARAM PAGE 1 x: align(8){ }>DARAM PAGE 1 COEF: align(8){ }>DARAM PAGE 1 } 问:再怎样修改该程序,完成滤波功能?将修改的程序语句写在下方: 将 .bss z,5 改为.bss z,100 将 XN .usect "XN",5 改为 XN .usect "XN",100 将 RPT #4 改为 RPT #99 将 STM #5,AR4 改为 STM #100,AR4

实验五 IIR滤波器的DSP实现

实验五  IIR滤波器的DSP实现

实验五 IIR滤波器的DSP实现一、实验目的掌握IIR滤波器的设计方法二、实验设备计算机、ZY13DSP12BD实验箱、5416EVM板。

三、实验原理参考教材第七章第三节《IIR滤波器的DSP实现方法》。

四、实验内容将采集到的信号经过DSP处理,将IIR滤波处理后的波形在CCS中显示出来。

五、实验步骤1、用仿真机将计算机与ZY13DSP12BD实验箱连接好,并依次打开实验箱电源、仿真机电源,然后运行CCS软件。

2、新建一个项目:点击Project-New,将项目命名为shiyan4b,并将项目保存在自己定义的文件夹下,注意文件夹一定要用英文名,不要将文件夹取名为中文名,因为CCS软件不能识别以中文命名的文件夹。

3、新建一个源文件:点击File-New-Source File可以打开一个文本编辑窗口,点击保存按键,保存在和项目相同的一个文件夹下面(shiyan4b),保存类型选择*.ASM(如果源文件是C语言编写的,保存类型选择*.C,本实验中的例程是使用汇编语言编写的,所以选择*.ASM为保存类型),我们在这里将保存名字命名为shiyan4b.asm。

4、在项目中添加源文件:在新建立了一个源文件以后,要想使用CCS编译器对该源文件进行编译还需要将源文件添加到项目中去。

添加方法是在工程管理器中右键单击shiyan4b.pjt,在弹出的菜单中选择Add Files,然后将刚才建立的shiyan4b.asm文件添加到该项目中去。

5、编写源程序:在工程管理器中双击shiyan4b.asm ,将出现文本编辑窗口,在该文本编辑窗口中输入如下内容:**************************************用双操作数指令实现二阶IIR滤波器 **反馈通道:x0=w(n)=x(n)+A1*x1+A2*x2 **前向通道:y(n)=B0*x0+B1*x1+B2*x2 **************************************.title "shiyan4b.asm".mmregs.def startx2 .usect "x",1x1 .usect "x",1x0 .usect "x",1COEF .usect "COEF",5indata .usect "buffer",1outdata .usect "buffer",1.datatable .word 0 ;x(n-1).word 0 ;x(n-2).word 676*32768/10000 ;分子系数B2=0.0676.word 1352*32768/10000;分子系数B1=0.1352.word 676*32768/10000 ;分子系数B0=0.0676.word -4142*32768/10000;分母系数A2=-0.4142.word 707*32768/10000 ;分母系数A1=0.0707.textstart: SSBX FRCTSTM #x2,AR1RPT #1MVPD #table,*AR1+STM #indata,AR5STM #outdata,AR2STM #COEF,AR1RPT #4MVPD #table+2,*AR1+STM #x2,AR3STM #COEF+4,AR4 ;AR4-->A1MVMM AR4,AR1 ;保存地址值在AR1中STM #3,BK ;设置循环缓冲区长度STM #-1,AR0 ;设置变址寻址步长IIR2: M VDD *AR5,*AR3 在这里设置断点与指针LD *AR3+0%,16,A ;计算反馈通道,A=x(n)MAC *AR3,*AR4,A ;A=x(n)+A1*x1MAC *AR3+0%,*AR4-,A ;A=x(n)+A1*x1+A1*x1MAC *AR3+0%,*AR4-,A ;A=x(n)+2*A1*x1+A2*x2STH A,*AR3 ;保存x0MPY *AR3+0%,*AR4-,A ;计算前向通道,A=B0*x0MAC *AR3+0%,*AR4-,A ;A=B0*x0+B1*x1MAC *AR3,*AR4-,A ;B=B0*x0+B1*x1+B2*x2=y(n)STH A,*AR3 ;保存y(n)MVMM AR1,AR4 ;AR4重新指向A1BD IIR2 ;循环MVDD *AR3,*AR2 在这里设置断点与指针nop.end6、编写链接配置文件如下:vectors.objshiyan4b.obj-o shiyan4b.out-m shiyan4b.map-estartMEMORY{PAGE 0:EPROM: org=0090H,len=0F70HVECS: org=0080H,len=0010HPAGE 1:SPRAM: org=1000H,len=1000HDARAM: org=2000H,len=2000H}SECTIONS{.text :> EPROM PAGE 0.data > EPROM PAGE 0.bss :> SPRAM PAGE 1x: align(4){} > DARAM PAGE 1COEF: align(8){} > DARAM PAGE 1buffer :>DARAM PAGE 1.vectors :> VECS PAGE 0}7、编写中断向量表文件参照实验二,可不作修改。

实验一 通用DSP实现IIR滤波器

实验一 通用DSP实现IIR滤波器

实验一: 通用DSP 实现IIR 滤波器1.1实验目的1.了解用数字滤波器实现模拟信号滤波的全过程;2.了解数字滤波器的实现方法及各个组成部分的功能和电路原理;3.了解一个四阶IIR 滤波器的频率特性,了解采样频率的变化对整个系统频率特性的影响。

1.2 实验原理数字滤波器的功能是将一组输入数字序列(信号)通过一定的运算后转变成另一组数字序列(信号)输出。

其输入、输出均为数字序列(信号)。

若要用数字滤波器对模拟信号进行滤波则必须配接相应的A/D ﹑D/A 转换器、保护﹑恢复滤波器。

本实验用一四阶IIR 滤波器实现对模拟信号的滤波,其框图如图1.1所示。

本实验中使用的数字信号处理器为单片式数字信号处理器,选用的是TI 公司的TMS320F206,该芯片为改进型哈佛结构的定点16位DSP 。

A/D ﹑D/A 转换器使用的也是TI 公司的TLC32044,该芯片是一个14位模拟接口集成电路,它包含了A/D ﹑D/A 单元和输入﹑输出滤波器,取样频率最高为19.2KHz ,可通过编程对采样频率进行控制,且增益可调。

电路具有模拟双断差分输入接口,其数据输入输出采用串行电路。

IIR 滤波器为无限长单位脉冲响应数字滤波器,其传递函数为以下形式:01()1mr r r nk k k b z H z a z-=-==-∑∑本实验中我们采用DSP 系统实现一个四阶的II R 滤波器,其传递函数为:12340123412341234()1b b z b z b z b z H z a z a z a z a z --------++++=----其中:012341.0, 7.4959, 24.9028, 47.8687, 58.2157b b b b b ==-==-=,123445.8645, 22.8612, 6.5933, 0.8428a a a a =-==-=。

该滤波器的频率图1.1 模拟信号的滤波特性如图1.2所示:实验中数字滤波器的结构选用直接I 型,其结构图如图1.3所示:1.3实验仪器及设备稳压电源一台,双踪示波器一台,函数发生器一台,计算机一台,仿真器一台,实验板一块。

DSP IIR滤波器设计

DSP IIR滤波器设计

课程设计(2010-2011学年春季学期)论文题目:IIR滤波器设计课程名称:DSP课程设计任课教师:杨卫中班级:自动化081学号:0808140823姓名:李璐IIR滤波器设计实验报告一、实验目的:1、用MATLAB仿真软件完成各种滤波器的仿真实验。

2、在DSP CCS中用C语言完成滤波器的设计。

3、观察波形。

二、实验原理:1.IIR数字滤波器的系统函数可以写成封闭函数的形式。

2.IIR数字滤波器采用递归型结构,即结构上带有反馈环路。

IIR滤波器运算结构通常由延时、乘以系数和相加等基本运算组成,可以组合成直接型、正准型、级联型、并联型四种结构形式,都具有反馈回路。

由于运算中的舍入处理,使误差不断累积,有时会产生微弱的寄生振荡。

3.IIR数字滤波器在设计上可以借助成熟的模拟滤波器的成果,如巴特沃斯、契比雪夫和椭圆滤波器等,有现成的设计数据或图表可查,其设计工作量比较小,对计算工具的要求不高。

在设计一个IIR数字滤波器时,我们根据指标先写出模拟滤波器的公式,然后通过一定的变换,将模拟滤波器的公式转换成数字滤波器的公式。

4.IIR数字滤波器的相位特性不好控制,对相位要求较高时,需加相位校准。

在MATLAB下设计IIR滤波器可使用Butterworth函数设计出巴特沃斯滤波器,使用Cheby1函数设计出契比雪夫I型滤波器,使用Cheby2设计出契比雪夫II型滤波器,使用ellipord函数设计出椭圆滤波器。

下面主要介绍前两个函数的使用。

与FIR滤波器的设计不同,IIR滤波器设计时的阶数不是由设计者指定,而是根据设计者输入的各个滤波器参数(截止频率、通带滤纹、阻带衰减等),由软件设计出满足这些参数的最低滤波器阶数。

在MATLAB下设计不同类型IIR滤波器均有与之对应的函数用于阶数的选择。

㈠、巴特沃斯IIR滤波器的设计在MATLAB下,设计巴特沃斯IIR滤波器可使用butter函数。

Butter函数可设计低通、高通、带通和带阻的数字和模拟IIR滤波器,其特性为使通带内的幅度响应最大限度地平坦,但同时损失截止频率处的下降斜度。

DSP课程设计IIR滤波器的实现

DSP课程设计IIR滤波器的实现

DSP课程设计IIR滤波器的实现设计二 IIR滤波器的实现一、设计目的1. 加深对IIR滤波器原理和基本性质的理解;2. 熟悉IIR滤波器子程序的算法流程和应用;3. 学习DSP的IIR滤波器设计和编程思想;4. 学习使用CCS的波形观察器观察波形和频谱情况; 二、设计内容在了解IIR滤波器的基本原理之后,首先利用MATLAB软件来设计。

滤波器设计可以采用巴特沃斯滤波器设计、切比雪夫滤波器设计、椭圆滤波器设计等等。

高阶IIR滤波器可以通过多个二阶IIR滤波器的级联和并联来实现,以此来实现滤波器的定点DSP。

DSP 步骤1.配置CCS为TMS320VC5402仿真模式,并新建一个工程。

2.新建一个汇编文件,写入一个滤波程序。

3.新建一个cmd文件,写入给滤波程序的cmd程序。

4.将汇编源程序和cmd文件添加到新建工程中,设这编译后,根据报错分析并解决问题5.没有error和warning后,将*.out文件load到内存中运行。

6.设置程序运行起始位置为3000h,运行程序后,观察memory中的数据,滤波前的数据从地质320h开始,滤波后的数据存放在地址200h开始。

17.观察graph中滤波前后的时域和频域波形,对比两者并进行分析。

三、设计原理(一).IIR滤波器差分方程的一般表达式为:式中x(n)为输入序列;y(n)为输出序列;和为滤波器系数.若所有系数等于0,则为FIR滤波器.IIR滤波器具有无限长的单位脉冲响应,在结构上存在反馈回路,具有递归性,即IIR滤波器的输出不仅与输入有关,而且与过去的输出有关.将上式展开得出y(n)表达式为:在零初始条件下,对上式进行z变换,得到:设N=M,则传递函数为:上式可写成:2上式具有N个零点和N个极点.若有极点位于单位圆外将导致系统不稳定.由于FIR滤波器所有的系数均为0,不存在极点,不会造成系数的不稳定.对于IIR滤波器,系统稳定的条件如下:若||<1,当n?时,h(n)?0,系统稳定;若||>1,当n?时,h(n)?,系统不稳定.IIR滤波器具有多种形式,主要有:直接型(也称直接I型)、标准型(也称直接II型)、变换型、级联型和并联型.(二).二阶IIR滤波器,又称为二阶基本节,分为直接型、标准型和变换型.对于一个二阶IIR滤波器,其输出可以写成:1.直接型(直接I型)根据上式可以得到直接二型IIR滤波器的结构图.如图1所示.共使用了4个延迟单元().3图1 直接I型二阶IIR滤波器直接型二阶IIR滤波器还可以用图2的结构实现.图2 直接I型二阶IIR滤波器此时,延时变量变成了w(n).可以证明上图的结构仍满足二阶IIR滤波器输出方程.前向通道:反馈通道:4将1.2式代入1.1式可得:2.标准型(直接II型)从图2可以看出,左右两组延迟单元可以重叠,从而得到标准二阶IIR滤波器的结构图,如图3所示.由于这种结构所使用的延迟单元最少(只有2个),得到了广泛地应用,因此称之为标准型IIR滤波器.图3 标准型二阶IIR滤波器四、总体设计方案DSP实现TI公司的2000系列和5000系列的DSP都通用型的芯片。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

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_iirbset frctsub #1,t0mov 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=0x000200 PAGE 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_in[bufer_L];int out[bufer_L] ;int x[IIRNUMBER_L+1];int y[IIRNUMBER_L+1];int k=0;int bufer=bufer_L;int fBn[IIRNUMBER_L]={0,0x634a};int fAn[IIRNUMBER_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){x[0]=data_in[k];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_in[i]=(cos(wt1)+cos(wt2))/2*32768;}}在CCS内编写以上程序通过加载运行等操作我们可以得到得到输入,输出的时域与频域波形图。

六、实验结果及分析1.输入信号<1> 输入信号波形属性<2>输入信号时域波形图<3>.输入波形频域图2.输出波形<4>输出波形属性:<5>输出时域图:<6>输出频域图:3.分析仿真结果:有仿真输入波形时域是混合波的叠加,在频域分析时我们可以看出该输入信号是一低频和一高频的叠加。

当我们将该信号通过一IIR滤波器时,我们从输出波形看到,时域是一余弦波,频域也只保留了低频频率成分,这说明混合信号通过IIR滤波器后,高频成分被滤除,符合滤波器功能,因此CCS可以作为一种模拟滤波器功能的软件。

七、设计心得、体会通过这次的DSP课程设计,我收获很大。

虽然在刚接触CCS时我感觉有点困难,但是我并没有被困难吓到,相反我当时特想学会运用它。

于是我和同学们一起研究,终于我们从CCS的安装到CCS的系统配置,再到CCS基本操作的练习与运用,再到后来学习怎样创建CCS项目……就这样我们慢慢的了解了CCS并学会了它的简单操作与运用。

而本次我们课设要在CCS下实现IIR滤波器的功能,创立源程序是关键也是难点,这对于刚刚了解CCS的我们绝对是一考验,好在大家都很用心,刚开始我们不会建立源程序,也不会汇编,于是我们互相讨论并向老师请教,慢慢的一切都迎刃而解了,到编译与运行时,看到没有错误时心里很开心,当看到输入与输出时域频域波形和理论吻合时,终于松了一口气。

这次课设让我们深刻体会到CCS可以作为一种软件为我们的滤波器提供模拟环境,可以极大的提高效率,使我们充分认识到它的强大与优越性。

这次课设也是我体会到DSP行业的发展对于整个社会来说有着推动作用,所以做为电子行业的人来说,我们应该掌握这门技术,最后我还是想说这次课设我们每一个人的付出都是值得的,以后我会更加努力学习这方面的知识。

相关文档
最新文档