第26章ARM官方DSP库 FFT的示波器应用
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
安富莱S T M32-V5开发板
数字信号处理教程
文档版本:V1.0
安富莱电子
W W W.A R M F L Y.C O M
声明
本文档的版权归武汉安富莱电子有限公司所有。任何公司或者个人未经许可,不得将本文档用于商业目的。
⏹本文档由安富莱电子原创,非我们原创的资料已经在章节的开头进
行申明(特别是F F T部分)。
⏹教程中使用的D S P库是来自A R M公司。
⏹教程参考资料如下:
◆C o r t e x-M4权威指南。
◆数字信号处理理论、算法与实现第二版(作者:胡广书)。
◆信号与系统第二版(作者:奥本海姆)。
◆M a t l a b的h e l p文档。
◆力科示波器基础应用系列文档。
◆百度百科,w i k i百科。
◆网络资源。
◆S T官方相关文档。
第26章F F T的示波器应用
特别声明:本章节内容整理自力科示波器基础应用系列文档,原名《FFT的前世今生》。
FFT(Fast Fourier Transform,快速傅立叶变换)是离散傅立叶变换的快速算法,也是我们在数字信号处理技术中经常会提到的一个概念。在大学的理工科课程中,在完成高等数学的课程后,数字信号处理一般会作为通信电子类专业的专业基础课程进行学习, 原因是其中涉及了大量的高等数学的理论推导,同时又是各类应用技术的理论基础。关于傅立叶变换的经典著作和文章非常多,但是看到满篇的复杂公式推导和罗列,我们还是很难从直观上去理解这一复杂的概念,我想对于普通的测试工程师来说,掌握 FFT 的概念首先应该搞清楚这样几个问题(在这篇文章中我尝试用更加浅显的讲解,尽量不使用公式推导来说一说 FFT 的那些事儿):
26.1 为什么需要 FFT
26.2 变换究竟是如何进行的
26.3 变换前后信号有何种对应关系
26.4 在使用测试工具(示波器或者其它软件平台)进行 FFT 的方法和需要注意的问题
26.5 力科示波器与泰克示波器的 FFT 计算方法的比较
26.6 珊栏现象
26.7 窗函数对于FFT结果的影响
26.8 窗函数选择指南
26.1为什么需要F F T
首先 FFT(快速傅立叶变换)是离散傅立叶变换的快速算法,那么说到 FFT,我们自然要先讲清楚傅立叶变换。先来看看傅立叶变换是从哪里来的?
傅立叶是一位法国数学家和物理学家的名字,英语原名是 Jean Baptiste Joseph Fourie(1768-1830), Fourier 对热传递很感兴趣,于 1807 年在法国科学学会上发表了一篇论文,运用正弦曲线来描述温度分布,论文里有个在当时颇具争议性的命题:任何连 续周期信号可以由一组适当的正弦曲线组合而成。当时审查这个论文的人,其中有两位是历史上著名的数学家拉格朗日(Joseph Louis Lagrange, 1736-1813)和拉普拉斯(Pierre Simon de Laplace,1749-1827),当拉普拉斯和其他审查者投票通过并要发表这个论文时,拉格朗日坚决反对,在近 50 年的时间里, 拉格朗日坚持认为傅立叶的方法无法表示带有棱角的信号, 如在方波中出现非连续变化斜率。法国科学学会屈服于拉格朗日的权威,拒绝了傅立叶的工作,幸运的是,傅立叶还有其它事情可忙,他参加了 政治运动,随拿破仑远征埃及,法国大革命后因为怕被推上断头台而一直在逃难。直到拉格朗日死后 15 年这个论文才被发表出来。
谁是对的呢?拉格朗日是对的:正弦曲线无法组合成一个带有棱角的信号。但是,我们可以用正弦曲线来非常逼近地表示它,逼近到两种表示方法不存在能量差别,基于此,傅立叶是对的。
为什么我们要用正弦曲线来代替原来的曲线呢?如我们也还可以用方波或三角波来代替,分解信号 的方法是无穷的, 但分解信号的目的是为了更加简单地处理原来 的信号。用正余弦来表示原信号会更加简单, 因为正余弦拥有其他信号所不具备的性质: 正弦曲线保真度。一个正弦曲线信号输入后,输出的仍是正弦曲线,只有幅 度和相位可能发生变化,但是频率和波的形状仍是一样的, 且只有正弦曲线才拥有这样的性质,正因如此我们才不用方波或三角波来表示。
26.1.1傅里叶变换的物理意义
傅立叶原理表明:任何连续测量的时序或信号,都可以表示为不同频率的正弦波信号的无限叠加。而根据该原理创立的傅立叶变换算法利用直接测量到的原始信号,以累加方式来计算该信号中不同正弦波信号的频率、振幅和相位。当然这是从数学的角度去看傅立叶变换。
那么从物理的角度去看待傅立叶变换,它其实是帮助我们改变传统的时间域分析信号的方法转到从频率域分析问题的思维,下面的一幅立体图形可以帮助我们更好得理解这种角度的转换:
所以,最前面的时域信号在经过傅立叶变换的分解之后,变为了不同正弦波信号的叠加,我们再去分析这些正弦波的频率,可以将一个信号变换到频域。有些信号在时域上是很难看出什么特征的,但是如果变换到频域之后,就很容易看出特征了。这就是很多信号分析采用FFT变换的原因。另外,FFT可以将一个信号的频谱提取出来,这在频谱分析方面也是经常用的。
傅立叶变换提供给我们这种换一个角度看问题的工具,看问题的角度不同了,问题也许就迎刃而解!
26.2F F T变换是如何进行的
首先,按照被变换的输入信号类型不同,傅立叶变换可以分为 4 种类型:
1、 非周期性连续信号傅立叶变换(Fourier Transform)
2、 周期性连续信号傅立叶级数(Fourier Series)
3、 非周期性离散信号离散时域傅立叶变换(Discrete Time Fourier Transform)
4、 周期性离散信号离散傅立叶变换(Discrete Fourier Transform)
下面是四种原信号图例:
这里我们要讨论是离散信号, 对于连续信号我们不作讨论, 因为计算机只能处理离散的数值信号,我们的最终目的是运用计算机来处理信号的。所以对于离散信号的 变换只有离散傅立叶变换(DFT)才能被适用,对于计算机来说只有离散的和有限长度的数据才能被处理,对于其它的变换类型只有在数学演算中才能用到,在计 算机面前我们只能用 DFT方法,我们要讨论的 FFT 也只不过是 DFT 的一种快速的算法。DFT 的运算过程是这样的:
X(k)=DFT[x(n)]=1
N
x(n)e ⁄
X(k)—频域值
X(n)—时域采样点
n—时域采样点的序列索引 k—频域值的索引