版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、-PAGE . z. . . . 资料 . .科技大学信息与电气工程学院?课程设计报告?题 目:基于DSP芯片的函数信号的FFT专 业: 通信工程班 级: 01班姓 名:学 号:指导教师:2015年 12 月 24 日信息与电气工程学院课程设计任务书20 20 学年第学期专业:通信工程 *: :课程设计名称: DSP原理及应用 设计题目:基于DSP芯片的函数信号的FFT 完成期限:自2021 年12月21日至2021 年12月24日共1周设计依据、要求及主要容可另加附页:?DSP原理及应用课程设计?是配合DSP原理及应用理论教学,为通信工程和电子信息工程专业开设的专业技术技能设计,课程设计对通
2、信工程和电子信息工程专业的学生是一个非常重要的实践教学环节。 通过课程设计,使学生综合运用DSP技术课程和其他有关先修课程的理论和生产实际知识去分析和解决具体问题的能力得到提高,并使其所学知识得到进一步稳固、深化和开展。通过课程设计初步培养学生对工程设计的独立工作能力,学习设计的一般方法。通过课程设计树立正确的设计思想,提高学生分析问题、解决问题的能力。通过课程设计训练学生的设计根本技能,如计算、绘图、查阅设计资料和手册,熟悉标准与规等。要求:1按时参加课程设计指导,定期汇报课程设计进展情况。2广泛收集相关技术资料。3独立思考,刻苦钻研,严禁抄袭。4按时完成课程设计任务,认真、正确地书写课程设
3、计报告。5培养实事、严谨的工作态度和认真的工作作风。主要容:1熟悉DSP处理器及其构造性能,掌握DSP芯片配套开发工具的使用方法。2按要求设计出硬件电路。3画出硬件连接原理图,并对硬件工作原理进展说明。4给出软件流程图及编写程序,每一条指令的后面附上相应的注释。5进展软、硬件调试,检查是否到达相关的功能。6写出调试方法。7设计报告结尾附上心得体会。指导教师签字:批准日期: 年 月 日目 录摘要4一、实验目的4二、实验设备4三、实验容4四、实验原理4五、FFT算法的DSP实现过程5六、设计步骤7七、编译程序9八、实验过程10九、实验结果13十、问题与思考13十一、心得体会14十二、参考文献14摘
4、要随着计算机和微电子技术的飞速开展,基于数字信号处理的频谱分析已经应用到各个领域并且发挥着重要作用。信号处理方法是当前机械设备故障诊断中重要的技术根底之一,分析结果的准确程度是诊断成功与否的关键因素。研究频谱分析是当前主要的开展方向之一。数字信号处理根本上从两个方面来解决信号的处理问题:一个是时域方法,即数字滤波;另一个是频域方法,即频谱分析.本文主要介绍了离散傅里叶变换以及快速傅里叶变换,通过对DFT以及FFT算法进展研究,从根底深入研究和学习,掌握FFT算法的关键。通过对DSP芯片工作原理以及开发环境的学习,掌握CCS的简单调试和软件仿真,在DSP芯片上实现对信号的实时频谱分析。关键字:D
5、SP FFT算法 频谱分析一、实验目的加深对DFT算法原理和根本性质的理解;熟悉FFT的算法原理和FFT子程序的算法流程和应用;学习DSP中FFT的设计和编程思想;学习使用CCS的波形观察器观察波形和频谱情况;熟悉FFT在实际中应用的效果;熟悉正弦、三角、方波信号的FFT变换;二、实验设备.一台装有CCS软件的计算机;.DSP实验箱;.DSP硬件仿真器;.网络穿插线。三、实验容用DSP汇编语言及C语言进展编程,实现FFT运算、对输入信号进展频谱分析。四、实验原理信号发生器模块可以产生20 Hz 20 kHz 的 函数信号。信号波形有正弦波、三角波、方波;信号输出幅度 Vpp 在 0 3.3V
6、围可调;输出阻抗约600左右。信号发生器模块的主要函数信号发生电路及缓冲放大电路如下列图所示。首先简单介绍函数信号发生电路的构成,该电路的核心器件是ICL8038,它是单片多波形振荡集成电路,可以用很少的外围元件产生高精度正弦波、三角波和方波。其电路功能框图如下:其工作波形如下列图,五、FFT算法的DSP实现过程:DSP芯片的出现使FFT的实现方法变得更为方便。由于大多数DSP芯片都具有在单指令周期完成乘法累加操作,并且提供了专门的FFT指令,使得FFT算法在DSP芯片实现的速度更快。FFT算法可以分为按时间抽取FFT和按频率抽取FFT两大类,输入也有实数和复数之分,一般情况下,都假定输入序列
7、为复数。一FFT运算序列的存储分配FFT运算时间是衡量DSP芯片性能的一个重要指标,因此提高FFT的运算速度是非常重要的。在用DSP芯片实现FFT算法时,应允许利用DSP芯片所提供的各种软、硬件资源。如何利用DSP芯片的有限资源,合理地安排好所使用的存储空间是十分重要的。(二)FFT运算的实现用汇编程序实现FFT算法主要分为四步:1.实现输入数据的比特反转输入数据的比特反转实际上就是将输入数据进展码位倒置,以便在整个运算后的输出序列是一个自然序列。在用汇编指令进展码位倒置时,使用码位倒置可以大大提高程序执行速度和使用存储器的效率。在这种寻址方式下,AR0存放的整数N是FFT点的一半,一个辅助存
8、放器指向一个数据存放的单元。当使用位码倒置寻址将AR0加到辅助存放器时,地址将以位码倒置的方式产生。2.实现N点复数FFTN点复数FFT算法的实现可分为三个功能块,即第一级蝶形运算、第二级蝶形运算、第三级至级蝶形运算。对于任何一个2的整数幂,总可以通过M次分解最后成为2点的DFT计算。通过这样的M次分解,可构成M即级迭代计算,每级由N/2个蝶形运算组成。3.功率谱的计算用FFT计算想*(n)的频谱,即计算*k=*(k)一般是由实部(k)和虚部(k)组成的复数,即*k=(k)+j(k)因此,计算功率谱时只需将FFT变换好的数据,按照实部实部(k)和虚部(k)求它们的平方和,然后对平方和进展开平方
9、运算。但是考虑到编程的难度,对于求FFT变换后数据的最大值,不开平方也可以找到最大值,并对功率谱的结果没有影响,所以在实际的DSP编程中省去了开方运算。4.输出FFT结果(三)汇编语言程序程序主体由rfft-task、bit-rev、fft和power四个子程序组成。rfft-task:主调用子程序,用来调用其他子程序,实现统一的接口。bit-rev:位码倒置子程序,用来实现输入数据的比特反转。fft:FFT算法子程序,用来完成N点FFT运算。在运算过程中,为防止运算结果的溢出,对每个蝶形的运算结果右移一位。fft子程序分为三个功能块:第一级蝶形运算、第二级蝶形运算、第三级至至级蝶形运算。(四
10、正弦系数表和余弦系数表:正弦系数表和余弦系数表可以由数据文件coeff.inc给出,主程序通过.copy汇编命令将正弦和余弦系数表与程序代码汇编在一起。在本例中,数据文件coeff.inc给出1024复数点FFT的正弦、余弦系数各512个。利用此系数表可完成81024点FFT的运算。五FFT算法的模拟信号输入:FFT算法的模拟信号输入可以采用C语言编程来生成一个文本文件sindata,然后在rfft-task汇编程序中,通过.copy汇编命令将生成的数据文件复制到数据存储器中,作为FFT算法的输入数据参与FFT运算。这种方法的优点是程序的可读性强,缺点是当输入数据修改后,必须重新编译、汇编和。
11、六、设计步骤:1.启动CCS,在CCS中建立一个C源文件和一个命令文件,并将这两个文件添加到工程,再编译并装载程序:阅读Dsp原理及应用中fft 用dsp实现的有关程序。2.双击,启动CCS的仿真平台的配着选项。选择C5502 Simulator。3.启动ccs2后建立工程文件FFT.pjt4.建立源文件FFT.c与文件FFT d5.将这两个文件加到FFT.pjt这个工程中。创立out文件加载out文件七、编译程序int INPUTSAMPLENUMBER,DATASAMPLENUMBER;float fWaveRSAMPLENUMBER,fWaveISAMPLENUMBER,wSAMPLEN
12、UMBER;float sin_tabSAMPLENUMBER,cos_tabSAMPLENUMBER;void InitForFFT()int i;for ( i=0;iSAMPLENUMBER;i+ )sin_tabi=sin(PI*2*i/SAMPLENUMBER);cos_tabi=cos(PI*2*i/SAMPLENUMBER);void MakeWave()int i;for ( i=0;iSAMPLENUMBER;i+ )INPUTi=sin(PI*2*i/SAMPLENUMBER*3)*1024;main()int i;InitForFFT();MakeWave();for (
13、 i=0;iSAMPLENUMBER;i+ )fWaveRi=INPUTi;fWaveIi=0.0f;wi=0.0f;FFT(fWaveR,fWaveI);for ( i=0;iSAMPLENUMBER;i+ )DATAi=wi;while ( 1 );/ break pointvoid FFT(float dataRSAMPLENUMBER,float dataISAMPLENUMBER)int *0,*1,*2,*3,*4,*5,*6,*;int i,j,k,b,p,L;float TR,TI,temp;/* following code invert sequence */for ( i
14、=0;iSAMPLENUMBER;i+ )*0=*1=*2=*3=*4=*5=*6=0;*0=i&0*01; *1=(i/2)&0*01; *2=(i/4)&0*01; *3=(i/8)&0*01;*4=(i/16)&0*01; *5=(i/32)&0*01; *6=(i/64)&0*01;*=*0*64+*1*32+*2*16+*3*8+*4*4+*5*2+*6;dataI*=dataRi;for ( i=0;iSAMPLENUMBER;i+ )dataRi=dataIi; dataIi=0; for ( L=1;L0 ) b=b*2; i-; /* b= 2(L-1) */for ( j=
15、0;j0 ) /* p=pow(2,7-L)*j; */p=p*2; i-;p=p*j;for ( k=j;k128;k=k+2*b ) /* for (3) */TR=dataRk; TI=dataIk; temp=dataRk+b;dataRk=dataRk+dataRk+b*cos_tabp+dataIk+b*sin_tabp;dataIk=dataIk-dataRk+b*sin_tabp+dataIk+b*cos_tabp;dataRk+b=TR-dataRk+b*cos_tabp-dataIk+b*sin_tabp;dataIk+b=TI+temp*sin_tabp-dataIk+b
16、*cos_tabp; /* END for (3) */ /* END for (2) */ /* END for (1) */for ( i=0;iGraph-Time/Frequency进展如下列图所示设置。6设置断点:在程序FFT.c 中有注释“break point的语句上设置软件断点。7运行并观察结果。选择“Debug菜单的“Animate项,或按Alt+F5 键运行程序。观察“Test Wave窗口中时域图形;在“Test Wave窗口中点击右键,选择属性,更改图形显示为FFT。观察频域图形。观察“FFT窗口中的由CCS 计算出的正弦波的FFT。(5) 改变输入信号三角或者方波,观察上下端波形的变化和相互关系以及改变tms320.h中N*的数值64、128、256、512、1024即FFT的点数,重复以上实验,观察变化。INPUTi=(sin(PI*2*i/SAMPLENUMBER*3)+sin(PI*2*i/SAMPLENUMBER*4+sin(PI*2*i/SAMPLENUMBER*8)*1024;(5)改变输入函数INPUTi=(sin(PI*2*i/SAMPLENUMBER*3)+sin(PI*2*i/SAMPLENUMBER*10)+sin(PI*2*i/SAMPLENUMBER*20)*1024;九、实验结果通过观察频域和时域图,程序计算出了测
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- T/SXJP 066-2023冷鲜猪肉
- T/SZBX 106-2022农家乐餐饮服务规范
- T/EPIAJL 3-2019 T/LEPA 1-2019超期服役火电机组寿命评估技术细则
- T/CI 1259-2025填料硫酸钙 (MR硫酸钙)
- T/CAAM 0004-2025频谱热疗房
- T/COEMA 25-2026激光安全员岗位规范
- 2025~2026学年河南省安阳市滑县人教版六年级上册12月月考数学试卷【附答案】
- 2025~2026学年安徽合肥市庐江县苏教版第二册四年级数册末质量检测试卷(A卷)【附答案】
- 2025-2026学年湖北省宜都市初中历史九年级期末下册通关重点试题(附答案)
- 2025-2026学年四川省攀枝花市初中历史九年级期末下册自我评估黑金试卷(附答案)
- 2026“外研社·国才杯”“理解当代中国”外语能力国际传播综合能力赛项真题及答案解析(10月11日上午场次)
- 2026年七年级数学竞赛试题及答案
- 河南2027届高三年级过程性作业评价(青桐鸣)联考数学+答案
- 九年级上册英语完形填空100篇(含答案解析)
- 2026全国《安全生产法及重大事故隐患判定》竞赛知识考试题库与答案
- 教育评价学教学课件
- 老年患者呼吸困难护理
- 建筑工程竣工验收报告贵州版
- 学堂在线 批判性思维-方法和实践 章节测试答案
- 文明丧葬规则解读
- 电机学教案本
评论
0/150
提交评论