您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > 信号分析与处理ch4-6
信号分析与处理实验ProjectsofSignalAnalysisandProcessing教育部电子信息与电气信息基础课程教学指导分委员会立项实验教材陈后金郝晓莉钱满义高海林高等教育出版社2006年第四篇信号处理软硬件实现引言实验一序列的卷积与相关实验二DSP系统定时器及其应用实验三信号发生器的实现实验四语音信号的压缩与回放实验五利用DSP实现信号实时滤波实验六利用DSP实现信号频谱动态分析实验七利用DSP实现信号调制与解调实验六利用DSP实现信号频谱动态分析一、实验目的1.掌握FFT的算法原理和基本性质2.掌握TMS320C54xDSPLIB库函数的调用3.掌握利用DSP系统进行信号频谱分析的方法实验六利用DSP实现信号频谱动态分析二、实验原理1.利用N点复序列计算2N点实序列2.TMS320C54xDSPLIB库谱分析函数调用3.利用DSP实现信号频谱动态分析4.CCS基本调试技术1.利用N点复序列计算2N点实序列设y[k]是一个长度为2N的实序列,Y[m]是其2N点DFT。定义如下两个数组分别是其偶分量和奇分量:x[k]=y[2k],h[k]=y[2k+1],可以得到:Y[m]=X[m]+W2Nm·H[m]Y[m+N]=X[m]-W2Nm·H[m]函数rfft就是采用N点复序列计算2N点实序列的。10-Nk10-Nk1,,.1,0-Nm2.TMS320C54xDSPLIB库谱分析函数调用数据导入调用调序函数cbrev()调用FFT函数rfft()计算幅度谱或相位谱cbrev()函数说明调用格式voidcbrev(DATA*x,DATA*r,unshortn)功能(将偶数点和奇数点分别按n)倒序入口参数:x:2*n项输入序列,数据定义为短整型。n:定义数组的大小为2*n。出口参数:r是一个2*n项输出序列,存放x倒序后的结果。特殊要求:输入数组首地址最低log2(2*n)位必须为0例:x[8]={13,-32,-31,22,52,-16,-84,-9}x表示复数:13-32j,-31+22j,52-16j,-84-9j输入序列x经cbrev(x,r,4)后,输出序列r为:r[8]={13,-32,52,-16,-31,22,-84,-9}即r表示复数:13-32j,52-16j,-31+22j,-84-9jcbrev()函数说明rfft()函数说明调用格式:voidrfft(DATAx,nx,shortscale)功能:计算序列的nx点DFTrfft()函数说明voidrfft(DATAx,nx,shortscale)入口参数:x:表示一个nx项的一维数组(16位有符号整型),该数组由函数cbrev产生。数组x既作为输入数据,又存放变换后的输出数据(同址运算)。nx:表示数组中实数的个数。可取值为16,32,64,128,256,512,1024scale:表示变换系数。scale0,变换后结果乘以1/nx,否则结果乘以1。出口参数:x[0]和x[1]m=0和m=nx/2时DFT的值。x[2]和x[3]m=1时DFT的实部与虚部。x[nx-2]和x[nx-1]m=nx/2-1时DFT的实部与虚部。rfft()函数说明voidrfft(DATAx,nx,shortscale)cbrev()和rfft()使用示例#defineNX16DATAx[NX];DATAy[NX];cbrev(x,y,NX/2);rfft(y,NX,1);计算幅度谱参考程序f[0]=abs(y[0]);//m=0时的幅度谱f[NX/2]=abs(y[1]);//m=NX/2时的幅度谱m=1;for(i=2;iNX;i=i+2){p=y[i];//实部q=y[i+1];//虚部temp=sqrt(p*p+q*q);//实部平方加虚部平方f[m]=temp;//f数组存放开方后数据,即幅度谱m++;}3.利用DSP实现信号频谱动态分析上电复位A/D和D/A初始化DMA通道初始化DMA方式接收A/D数据等待DMA接收中断序列FFT频谱经D/A输出主程序中断服务程序序列倒序—数据显示4.CCS的基本调试技术1.View→WatchWindow2.WatchWindow中,在Watch1的Name中输入要显示的数据名,如输入x,rfft计算出的频谱y,输入信号的幅度谱f。—显示频谱4.CCS的基本调试技术View→Graph→Time/Frequency—显示频谱4.CCS的基本调试技术改变输入信号频率m0的值,重新观察频谱—设置断点4.CCS的基本调试技术断点在光标处设断点StepOverDebug工具栏,同Debug菜单观察运行结果1.CCS图形观察工具显示信号波形时,为什么显得不够光滑?2.实序列FFT和复序列FFT在本质上有没有区别?相比于直接进行2N点实序列FFT,由N点复序列FFT计算2N点实序列FFT,可以节省多少乘法运算?3.如果信号数据存放在一个外部数据文件中,如何利用CCS工具读取这个数据文件?实验思考题
本文标题:信号分析与处理ch4-6
链接地址:https://www.777doc.com/doc-7871197 .html