资源描述:
《基于ccs的dsp算法仿真实验设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、ISSN1672-4305实验室科学第3期2009年6月CN12-1352/NLABORATORYSCIENCENo.3Jun.2009基于CCS的DSP算法仿真实验设计于莉娜,牛晓霞(燕山大学信息科学与工程学院,河北秦皇岛066004)摘要:简要介绍了CCS软件的主要功能,利用CCS软件,设计数字信号处理实验课程,实现了FFT算法的谱分析和FIR滤波器。关键词:CCS;数字信号处理;FFT;FIR中图分类号:TP311.56文献标识码:A文章编号:1672-4305(2009)03-0099-
2、03ThedesignofDSPalgorithmsmiulationexpermientbasedonCCSYULi-na,NIUXiao-xia(InformationScienceandEngineeringCollege,YanshanUniversity,Qinhuangdao066004,China)Abstract:ThispaperbrieflyintroducesthemainfunctionofCCSsoftware.ByusingCCSsoftwareanddesigningtheexperimentcour
3、seofdigitalsignalprocessing,thespectrumanalysisofFFTalgorithmandFIRfilterarerealized.Keywords:CCS;digitalsignalprocessing;FFT;FIR本文采用CodeComposerStudio软件,利用硬件voidinput_data()函数:采样程序。本程序的DSP电路,实现了FFT算法及FIR滤波器。本实验采样点数是64点。voidfft()函数;FFT函数。void内容较以往的单纯编程更能提高学生的学习热情,ti
4、mer_int()函数;定时器中断函数。该中断不采集使学生由被动学习变为主动研究。数据,数据的采集在input_data()函数中完成。voidvect()函数;中断向量函数。1用CCS实现FFT1.3FFT的实现1.1FFT算法(1)将峰峰值为1.5V,频率为3K的正弦信号FFT算法将长序列的DFT分解为短序列的接入硬件系统。运行CCS软件,打开主程序。对程DFT。N点的DFT先分解为两个N/2点的DFT,每序进行编译、下载程DSP芯片、运行程序,最后观察个N/2点的DFT又分解为两个N/4点的DFT等波形,将观察点数设为
5、64点即可。可以观察到如下等,最小变换的点数即基数,基数为2的FFT算法的最小变换是2点DFT。时间抽取FFT是将N点输入序列按照偶数和奇数分解为偶序列和奇序列两个序列:偶序列:x(0),x(2),x(4),,x(N-2)奇序列:x(1),x(3),x(5),,x(N-1)因此,x(n)的N点FFT可表示为:N/2-1N/2-12nk(2n+1)kX(k)=x(2n)WN+x(2n+1)WNn=1n=1k=Y(k)+WNZ(k)1.2FFT实验子程序图1正弦信号的频谱本系统设计的FFT是64点频率抽选FFT,信号的
6、波形,如图1所示。(2)将主板上的信号源改成的采样频率FS设计为60240Hz。子程序参数说明:方波(方波的谐波为),可以观察到如下的波形,见100图2方波信号的频谱图2。2用CCS实现FIR滤波器2.1加窗法设计FIR滤波器步骤(1)给出滤波器的频率响应函数Hd(ejw)。(2)根据允许的过渡带宽度及阻带衰减,初步选定窗函数和N值。(3)计算以下积分,求出hd(n):1jwjwnhd(n)=-Hd(e)edw2(4)将hd(n)与窗函数相乘得FIR数字滤波器的冲激响应h(n):h(n)=hd(n)!w(n)2.2F
7、IR滤波器的结构框图FIR滤波器的结构图如图3所示:图3N阶FIR滤波器的结构框图2.3FIR滤波器的实现(1)调解信号源,使其产生一峰峰值为900mV,频率为7K的正弦信号;再产生一峰峰值为900mV,频率为2.5K的正弦信号。(2)调用∀lowpass_flter()#低通滤波器,显示滤波前后的时域波形如下,见图4。滤波前的频谱如下图所示,明显可见两根谱线,见图5。经过低通滤波器后只剩下2.5KHz的正弦信号,频谱显示只有一根谱线,见图6。(3)不调用∀lowpass_filter()#低通滤波器,而调用∀highpass
8、_filter()#高通FIR滤波器。滤波前后的3总结时域波形如下图所示,见图7。经过高通滤波器后只利用CCS软件进行仿真使学生很直观地观察剩下7KHz的正弦信号,其谱线清晰可见,见图8。ISSN1672-4305实验室科学第3期