题目十一: 数字音频回声系统的处理实验报告.docxVIP

  • 21
  • 0
  • 约5.67千字
  • 约 17页
  • 2019-11-27 发布于湖北
  • 举报

题目十一: 数字音频回声系统的处理实验报告.docx

通信系统工程应用训练实验报告 题目:数字音频回声系统的处理 专业:通信工程 姓名: 吕迪 学号指导教师:孙恩昌 完成日期:2016年6月6日 一、实验目的 加深对IIR滤波器基本原理的理解; 学习利用IIR滤波器的C语言程序; 了解数字音频回声处理的方法,提高分析和解决问题的能力。 二、实验内容 下面是一个对实际效果模拟的组合方案,如图3所示。其中左面的子系统是延迟相加模块,滤波器参数分别为 =0.75,b=1,R=29 =0.75,b=0.9,R=37 =0.75,b=0.8,R=44 =0.75,b=0.7,R=50 右面的子系统是第二个延迟相加模块,参数为 =0.75, R=27 =0.75, R=31 输入一个脉冲信号,观察输出信号的波形(脉冲响应)。 求和 1.0 求和 0.9 0.8 0.7 图3 数字音频回声系统模拟 三、实验思路及流程图 开始 开始 结束对结果求DFT变换,画出频谱图求和得到的结果作为后边延时器的输入,输出结果 结束 对结果求DFT变换,画出频谱图 求和得到的结果作为后边延时器的输入,输出结果,画出图形 对上一级输出进行求和,,画出对应输出图形 分别将x1[60]加载到滤波器中,得到对应的输出文件,并画出对应的输出图形 初始化画板、画笔,画出x、y轴 定义 定义并且初始化全局变量数组a[60],b[60],c[60],d[60]存储各级延时器的输出,初始化文件指针用于输出数据,定义数组x1[60]存放输入信号单位冲击响应 四、实验结果 单位冲击响应时延29滤波后图形 单位冲击响应时延37滤波后图形 单位冲击响应时延44滤波后图形 单位冲击响应时延55滤波后图形 滤波后求和后图形 求和后时延27滤波后图形 再次时延31滤波后图形 DFT变换后频谱图 五、实验程序 #include stdafx.h #includeD:\x_math.cpp #includeD:\x_graph.cpp void Filter1(int t,double x[]); //延迟相加模块一 void Filter2(double a,double b,double x[],int c0); //延迟相加模块二 void Filter3(double a,double b,double x[]); //延迟相加模块三 void plotgri2test(COLORREF gridcolor,COMPLEX p[],int N); //二维绘图函数 double a[60]; double b[60]; double c[60]; double d[60]; int main(int argc, char* argv[]) { int i; double x1[60]; COMPLEX X2[60],X3[60]; FILE *txtfile1; FILE *txtfile2; FILE *txtfile3; FILE *txtfile4; FILE *txtfile5; FILE *txtfile6; FILE *txtfile7; x1[0]=1; //在零时刻提供一个脉冲 for(i=1;i60;i++)x1[i]=0; for(i=0;i60;i++)a[i]=0; window2(IIR数字滤波器-29,-2,3,70,-1,t,f(t)); HPEN pen1=CreatePen(PS_SOLID,5,BLACK),oldpen=(HPEN)SelectObject(win2.hdc,pen1);//创建画笔 HPEN pen2=CreatePen(PS_SOLID,1,RED); HPEN pen3=CreatePen(PS_SOLID,5,BLUE); xy2(GREEN);//画xy轴。 Filter1(29,x1); SelectObject(win2.hdc,pen3); for(int n=0;n60;n++) { line2(n,0,n,a[n]); } SelectObject(win2.hdc,pen2); for( n=0;n60;n++) { line2(n,0,n,x1[n]); } getch();//等待 for(i=0;i60;i++){ b[i]=a[i]; } //将结果存进数组b,进行求和 txtfile1=fopen(1.tx

文档评论(0)

1亿VIP精品文档

相关文档