这其实是我的dsp课程的课程设计,老实说,一个学期的dsp课程并没有使我对dsp芯片增加了多少了解,更多的收获是终于知道之前看如天书的数字信号处理是用来干嘛的了,然而,这也并没有什么卵用,也丝毫没有减少我对傅里叶的恨意,哈哈,说说笑。
设计一个低通滤波器,这其实是一个很简单很简单的课程设计,甚至,还称不上课程设计,叫实验也不为过。我之所以想把它写出来,一是临近毕业,想把这之前做的一些有意思的东西分享一下,否则他们只能静静的躺在硬盘里慢慢被遗忘,被删掉。二,当然是造福各位还“挣扎”在天堂里的“莘莘学子”啦。插一句,最近在实习,才发现,学校才真的是最接近天堂的地方,还在天堂里的请好好珍惜。其实我只是想让后来的师弟师妹们初步了解一下像傅里叶变换是怎么在实际中应用的,而不只是背几个不知何解的公式,想当初我就是背一下频域相乘等同于时域卷积就去考信号与系统了。。。。,第一次尝试去写东西,写不好莫怪。
首先,奉上大神杰作http://zhuanlan.zhihu.com/wille/19763358,好了,看完还不懂就去打死作者吧,与我无关,拜拜。。。。
老实说,要是早一点看到大神的杰作,可能就不用云里雾里的就去考试了,总的来说,我们之所以要用傅里叶变换,一般信号在时域里面都是由几个不同频率和幅度的正弦波合成的,波形杂乱无章,我们并不能对它进行直接的处理,而经过傅里叶变换转到频域里面就能直观地看到每个正弦波的频率,在频域里面对各个频率成分进行处理,如删减某个频率,在经过反傅里叶变换就会得到我们想要的信号。要说一句的是,时域到频域,再由频域到时域只是人理解的一个过程,并不是说在dsp芯片中运行的程序就是先进行傅里叶变换,处理完再反变换的过程。频域和时域是两个不同的空间,反映的是同一个物体,在一个空间对这个物体进行处理自然在另一个空间也会看到它的变化,举个不恰当的例子,时域和频域就如一个人的身前和身后,在这个人身后胡一巴掌,你在前面看到 的不是胡一巴掌,对,你看到的是这个人吐了一口血。。。。。。而傅里叶变换就是这一巴掌和这一口血之间的联系。这样就可以很好的解释“频域相乘等同于时域卷积”这句话了,时域里面进行卷积运算要经过翻转,移位,相乘等,然而这一切在频域中就相当只进行了相乘运算。
废话不多说,上图,上图之前还是先奉上高手作品,http://www.cnblogs.com/BitArt/archive/2012/11/24/2786390.html ,这里面提到了数字信号处理的第一步,抽样,抽样的具体原理推导原谅我也说不清,只能说抽样在实际中就是常说的模/数转换,就是通过一块A/D芯片将模拟信号转化为一系列的数字量让DSP去处理,下图中的黄圈圈住的就是本实验用的A/D芯片TLC320AD50,
前面说过,傅里叶表明的是任何信号都是由不同频率和幅度的正弦波合成的,下面就来合成两个不同频率的正弦波信号,原谅我matlab临时学的,手痒用用。。。。
可以看到,频域图明确的表明我们的信号只有1000Hz频率分量,同样,一个4kHz的正弦波信号如下,
可以预见,如果把这两个频率分量的正弦波信号合成,它的频域是什么样子的,如下
就是这样,时域和频域之间还是有很多很有趣的联系的,有兴趣的可以关心一下,基本来说,傅里叶变换是很强大很有用处的,写这个更多是由于看了前面第一篇博文有感而写,至今从网上博文受益良多,有时候自己动手做做,虽然简单,但看到预期结果是还是很开心。