這其實是我的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的正弦波信號如下,
可以預見,如果把這兩個頻率分量的正弦波信號合成,它的頻域是什么樣子的,如下
就是這樣,時域和頻域之間還是有很多很有趣的聯系的,有興趣的可以關心一下,基本來說,傅里葉變換是很強大很有用處的,寫這個更多是由於看了前面第一篇博文有感而寫,至今從網上博文受益良多,有時候自己動手做做,雖然簡單,但看到預期結果是還是很開心。