欢迎来到天天文库
浏览记录
ID:21657114
大小:306.55 KB
页数:15页
时间:2018-10-23
《dsp实验报告4》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、实验报告课程名称DSP原理与应用实验项目音频信号的FIR滤波指导教师王勇学院_专业班级/学号学生姓名实验日期___2011年12月___成绩______________________实验4音频信号的FIR滤波一、实验目的1.熟悉音频编解码芯片TLV320AIC23的控制原理。2.熟悉TMS32055xI2C模块驱动。3.熟悉音频信号实时采集、FIR滤波、实时输出程序设计流程及编程。4.利用MATLAB设计FIR滤波器。5.学习使用TI的DSPLIB提高程序运行效率。6.学习使用CCS图形显示窗口
2、观察和分析音频波形及其频谱。二、实验仪器及工具计算机,安装WindowsXP操作系统、MATLAB7.0.1、TI的TMS320C5000DSP的开发软件CCS2.21;ICETEK-VC5509教学实验箱,耳机和麦克风(耳麦)。三、实验内容1.利用MATLAB设计FIR滤波器,以Q15格式导出滤波器系数。开始初始化:EMIF、CPU频率、AIC23初始化语音缓冲区和工作变量读取语音数据保存于左声道缓冲区调用AIC23_Mixer子程序处理音频数据输入/输出开始等待McBSP通道0传送结束滤波结果
3、保存于右声道缓冲区原声音送左声道,滤波结果送右声道,输出到McBSP0调用fir2计算FIR滤波输出2.创建项目,实现音频信号的实时采集、FIR滤波、实时输出。音频信号的抽样率为44.1KHz。将程序下载到实验板上运行,观察程序运行结果。程序通过调用TI的DSPLIB数字信号处理算法库中的fir2函数实现FIR滤波。调用规则可以参看文档c:tidocspdfspru422.pdf。这是一个可以利用DSP中有双MAC硬件的滤波程序,而TMS320VC5509DSP片内具有双MAC,可以用此程
4、序完成运算。程序流程图如上图所示。四、实验步骤1.编写MATLAB程序,利用MATLAB设计FIR低通滤波器,以Q15格式导出滤波器系数。例如设计一个阶数为63,采用汉明窗(HammingWindow)函数,采样频率为44100Hz,截止频率为2205Hz低通FIR线性相位滤波器。可根据信号的频率更改滤波器的频率。2.设置CCS为“C55xCycleAccurateSimulator”软件仿真模式,启动CCS,创建项目,新建项目文件audioFirFiltering.pjt。将所提供的*.c、*.
5、h和audio.cmd拷入到当前目录中,编写TMS3205509I2C模块驱动C程序文件i2c.c,以驱动TMS3205509对音频编解码芯片TLV320AIC23的控制。将MATLAB设计的滤波器系数导入到audio.h的滤波器系数数组h中。aic23.c中的AIC23_Mixer子程序调用DSPLIB中FIR2函数实现对采集到的音频信号滤波,并回放到右声道中,左声道直接回放到采集的到音频信号。添加C文件、audio.cmd及55xdspx.lib到audioFirFiltering.pjt项目
6、中。编译、调试程序,直至没有编译错误。2.连接实验设备,准备音频输入、输出设备。a)将耳麦上麦克风插头插到ICETEK-VC5509-A板的J5插座。b)将耳麦上的耳机音频输入插头插到ICETEK-VC5509-A板的J7插座。c)调节耳麦上音量旋钮到适中位置。3.设置CCS2.21在硬件仿真(Emulator)方式下运行,启动CCS软件。编译、调试、加载、运行程序。6.用麦克风输入语音信号,可以从耳机中听到:左声道存在一些高频噪声,而右声道则较为干净。7.在麦克风上吹气,造成“呼呼”声音输入,同
7、时在程序aic23.c的有“breakpoint”注释的语句上加注软件断点(双击此行前的灰色控制条),程序会停止在此行上。8.设置断点,观察滤波效果显示:-分3次选择菜单View->Graph->Time/Frequency,分别使用以下参数打开3个观察窗口:观察窗口中各波形的时域波形,再将各观察窗口参数中“DisplayType”项分别改成“FFTMagnitude”,观察窗口中各波形的频域波形。9.使用计算机提供的声源:⑴测试计算机语音输出:用“我的电脑”帮助启动播放语音文件LineIn.mp
8、3,并选择播放器参数为循环播放;将耳机上音频输入插头插入计算机上耳机插座;仔细听耳机中是否有输出。⑵拔下耳机音频输入插头,用实验箱附带的音频连接线(两端均为双声道音频插头)连接计算机耳机输出插座和ICETEK-VC5509-A板上J5插座,即上图中“麦克风输入”。⑶运行程序,听效果。五、实验代码:滤波器系数导出:fsamp=44100;N=63;Wn=2205;B=FIR1(N,0.1,hamming(N+1));plot(B),figure,freqz(B)f1=fopen('B
此文档下载收益归作者所有