<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 牛人業(yè)話(huà) > 千算萬(wàn)算,不如FFT變換

千算萬(wàn)算,不如FFT變換

作者:小么哥 時(shí)間:2019-12-20 來(lái)源:電子產(chǎn)品世界 收藏

前段時(shí)間,小外甥女家里出了一件大事。

本文引用地址:http://dyxdggzs.com/article/201912/408433.htm

不知道是不是要進(jìn)入青春期的緣故,本來(lái)成績(jì)挺好的小外甥女成績(jì)開(kāi)始不明所以地直線(xiàn)下降,大姐和大姐夫很是著(zhù)急,幾番談心下來(lái),卻也覺(jué)察不出十二歲的小家伙有啥異常。

是自己借口平時(shí)工作太忙,從來(lái)不輔導孩子做作業(yè)的緣故嗎?大姐心虛地捫心自問(wèn),可是轉念一想,之前也不曾輔導過(guò)的呀。是大姐夫成天不著(zhù)家,四十來(lái)歲了還整天玩心不退,絲毫不管女兒的原因?應該也不是,這么多年不都這么過(guò)來(lái)了嗎?于是,大姐更是丈二和尚摸不著(zhù)頭腦了。

直到有一天,大姐夫偷偷看了女兒的手機,上了她的QQ,才算是破了案。原來(lái),有一個(gè)混賬小屁孩對自己的乖乖女發(fā)起了凌厲的愛(ài)情攻勢,這個(gè)十來(lái)歲的臭小子是女兒的同班同學(xué),不知道從哪里學(xué)來(lái)的花言巧語(yǔ),在QQ上面添油加醋加表情地向女兒表白,從女兒的回復來(lái)看,兩人似乎確立了“戀愛(ài)關(guān)系”。

看了不大會(huì )兒,大姐夫就血氣上涌,難以自持了,“他竟敢。。?!?。憤懣不已的大姐夫叫來(lái)大姐商量了一通之后,兩人一致認為:

問(wèn)題出在這萬(wàn)惡的手機上!

然后他們拿出了針?shù)h相對的解決方案:跟那個(gè)小男孩家長(cháng)談一談,嚴令他停止騷擾自己的女兒,同時(shí)最重要的,沒(méi)收女兒的手機!

不瞞各位,我聽(tīng)說(shuō)了這件雷人的事情之后,很是為外甥女感到悲哀。這兩口子的思路真的是很奇葩,出了這么大的事,不從根上找問(wèn)題(父母是孩子的根),不怪自己嫌麻煩以及成天不著(zhù)家不管孩子,反而怪罪“無(wú)善亦無(wú)惡,自性本無(wú)體”的手機!明明是自己不愿意付出時(shí)間和精力去關(guān)心孩子,卻把罪魁禍首栽在手機頭上。但是,手機何罪之有哉?

沒(méi)收手機當然很容易,但是,這樣就撲滅了女兒愛(ài)情的小火苗了嗎?解決方案固然簡(jiǎn)單易行,但是能真正解決問(wèn)題嗎?說(shuō)白了,這是典型的避重就輕,為了回避繁難,故意對真相視而不見(jiàn),是一種赤裸裸的自我欺騙!

但是且慢,我們這些工程師在日常的工作中好像也是這么一個(gè)毛病。面對一個(gè)難題,明明知道病根在哪里,正確的解決方案應該是怎么樣的,但是因為害怕繁難,總是妄想著(zhù)從枝節上縫縫補補,企圖通過(guò)簡(jiǎn)單的方法蒙混過(guò)關(guān)。但是,萬(wàn)法皆空因果不空,或遲或早,還是得跳進(jìn)躲不掉的坑。

灑家就曾經(jīng)歷過(guò)類(lèi)似的事情。

1

說(shuō)起來(lái),這也是好幾年前的事情了。

當時(shí)的灑家三十出頭,意氣風(fēng)發(fā),一邊懷著(zhù)熱騰騰的赤子之心報效國家,一邊帶著(zhù)繞指的柔情掙錢(qián)養家。在公司任勞任怨的灑家,領(lǐng)導不給發(fā)錢(qián)只是一個(gè)勁兒地猛夸,還把大把的工作向我的肩上壓。這不,一個(gè)藍牙音頻設備的活就向我砸過(guò)來(lái)了呀!

在這個(gè)變化無(wú)窮的無(wú)情世界中,有情的人類(lèi)通過(guò)發(fā)現規律、掌握規律指導自己征服世界、改造世界的實(shí)踐。其中有一條“二八定律”,特別反映了人類(lèi)社會(huì )的運行規則。

比如說(shuō),這個(gè)世界上80%的財富都掌握在20%的人手中,再比如,大部分人類(lèi)組織中,都是20%的高手承擔著(zhù)80%的實(shí)質(zhì)性工作,大多數工作也是先花20%的時(shí)間完成其中的80%,然后再用80%的時(shí)間完成剩下20%的工作。

灑家這次也是這樣,不管它五五二十五,一頓操作猛如虎,不管它三七二十一,早點(diǎn)干完早休息,一個(gè)來(lái)月下來(lái),這個(gè)藍牙音頻設備貌似就要快完工了。

直到我卡在了剩下20%的工作里。

2

光陰消漲,一身風(fēng)霜,任誰(shuí)來(lái)到這世上,都要跌跌撞撞。鮮衣怒馬,仗劍天涯,有時(shí)候一塊豆腐也會(huì )撞得你頭暈眼花。

灑家撞上的這塊豆腐,是對聲音信號的采集與分析。

簡(jiǎn)單來(lái)說(shuō)吧,灑家這個(gè)音頻設備上有麥克風(fēng)和喇叭,出廠(chǎng)前要對麥克風(fēng)進(jìn)行診斷,以確保它能正確地拾取聲音。大家都知道,人耳能聽(tīng)到的聲音頻率區間是[20,20k]Hz,灑家就設計了一個(gè)方案,來(lái)判斷麥克風(fēng)的有效性。

具體過(guò)程為:產(chǎn)生一個(gè)1kHz的正弦信號,通過(guò)喇叭播放出來(lái),麥克風(fēng)拾取了聲音后,在芯片內部以一定的采樣頻率進(jìn)行ADC轉換,然后,通過(guò)這些ADC數據判斷麥克風(fēng)能不能正確地拾取聲音。

熟悉信號與系統分析的同學(xué)們都知道,判斷一個(gè)固定頻率的正弦信號,最好的方式就是對時(shí)間域的信號進(jìn)行傅里葉變換,然后在頻率域里做判斷,找出最大的頻率分量是不是1kHz,而且遠遠超過(guò)其它頻率分量就可以了。

但是,人又是一個(gè)無(wú)比感性的動(dòng)物,之于一往無(wú)前永不回頭的時(shí)間,我們愛(ài)恨交織,時(shí)而發(fā)出逝者如斯夫的慨嘆,時(shí)而感受著(zhù)它的溫柔和歲月靜好的恬淡。

所以,即便到了工程應用中,一開(kāi)始也是寧可在熟悉的時(shí)間域里頭打轉轉。當然,更重要的一點(diǎn)是:信號與系統分析掌握起來(lái)比較難,上班多年,灑家早已經(jīng)把相關(guān)的知識還給老師了:)

3

其實(shí)無(wú)論是在時(shí)間域里還是在頻率域里做分析,面臨的第一個(gè)問(wèn)題便是聲音信號采集的問(wèn)題。這部分倒也簡(jiǎn)單,所選處理器支持聲音信號的采樣,采它!

至于采樣率的選擇,學(xué)過(guò)香農定理的同學(xué)肯定會(huì )搶答出來(lái):聲音最高頻率20kHz,采樣率要大于最高頻率的兩倍,選擇44.1kHz準沒(méi)錯。

但是,藝高人膽大的灑家卻沒(méi)有這樣選,原因也很簡(jiǎn)單,咱輸出的聲音信號是1kHz,選擇那么高的采樣率太消耗RAM資源了,灑家一拍腦門(mén),選擇了8kHz。

采樣之后的信號就是數字信號了,怎么處理呢?灑家帶著(zhù)模糊的記憶想了想傅里葉變換,有些摸不著(zhù)頭腦,于是便從時(shí)域下手了。

灑家是這樣想的:8kHz采樣率,每采八個(gè)點(diǎn),便是一個(gè)周期了。每隔八個(gè)點(diǎn)判斷一下數據是否大致相等就可以了唄。

但是這么試了若干個(gè)周期,發(fā)現判斷結果時(shí)靈時(shí)不靈。灑家沉思片刻,便找到了答案。

在這個(gè)五濁的世界中,沒(méi)有任何一件事物是盡善盡美的,聲音信號也是如此。

從喇叭輸出到空氣中的傳播,到麥克風(fēng)的拾取,再到電路板上ADC采集電路中的干擾,本來(lái)純潔無(wú)瑕的聲音已經(jīng)背負了太多的噪聲!

咋辦?灑家再度沉思片刻,又找到了取巧的辦法。

將采樣率提高,進(jìn)行過(guò)采樣,比如提高到48kHz,然后每6個(gè)點(diǎn)進(jìn)行平均值濾波,把噪聲濾除掉,然后將這6個(gè)點(diǎn)求出的平均值視為一個(gè)點(diǎn),再按照上面的方法判斷。

這么試了好多個(gè)周期,雖然有時(shí)還是判斷失敗,但是效果確實(shí)好多了!

4

過(guò)采樣+平均值濾波確實(shí)有效,但還不是足夠有效,咋辦?

通過(guò)傅里葉變換,在頻率域內分析當然是最有效的方案,但是這些知識都忘光了,又學(xué)不動(dòng)咋辦?當我調侃著(zhù)向領(lǐng)導匯報困難時(shí),領(lǐng)導也帶著(zhù)令人捉摸不定的微笑對我調侃道:干不出來(lái),不給你發(fā)工作,到時(shí)你咋辦?

咋辦,咋辦,領(lǐng)導的一句話(huà)把我逼上了梁山!

笨拙的人啊跌跌撞撞,總想投機取巧?;?zhuān)瑓s不曾想,誰(shuí)的罪誰(shuí)受誰(shuí)的福誰(shuí)享,不從根上解決問(wèn)題,你能逃過(guò)“因果”的劍拔弩張?

當我真的把目光轉向傅里葉變換時(shí),才發(fā)現問(wèn)題比我想得要簡(jiǎn)單。因為,在MCU中進(jìn)行離散傅里葉變換,有快速運算算法,就是半個(gè)世紀前就問(wèn)世的,而這部分已經(jīng)有了很成熟的代碼實(shí)現,匯編版本的,C版本的,C++版本的不一而足。

這些代碼看不懂也沒(méi)關(guān)系,您可以先去測個(gè)智商,看看是不是沒(méi)到180:)

實(shí)際上,灑家也沒(méi)大看懂,把之前采集到的數據輸入到已有的算法庫里就行了。

在這里唯一要注意的一點(diǎn)是,進(jìn)行的是占位運算,即輸入時(shí)間域信號,輸出頻率域信號,輸出數據直接存在了輸入數據的地址空間上。作判斷時(shí),也很簡(jiǎn)單,只需要知道哪個(gè)數據對應著(zhù)1kHz的頻率分量就可以了。

就以我這個(gè)應用為例,8kHz采樣率,采了128個(gè)點(diǎn)做運算,經(jīng)過(guò)FFT運算之后,第一個(gè)數據便是8kHz/128,第二個(gè)數據是16kHz/128,。。。相應地,第16個(gè)數據便是1kHz頻率分量的幅值。

就這樣,搞清楚了DFT和FFT的原理之后,問(wèn)題輕松解決了!

后記

根據灑家多年的觀(guān)察,國內的電子工程師普遍動(dòng)手能力強,但是理論基礎差。本該掌握電子電路、電磁場(chǎng)、信號處理這三大類(lèi)課程的電子信息類(lèi)專(zhuān)業(yè)工程師,在日常的實(shí)踐中,只會(huì )拿著(zhù)電子電路這一板斧揮舞,大家伙都把后兩部分尤其是信號處理自覺(jué)地屏蔽掉了。

究其原因,還是因為從難度上來(lái)比較,電子電路更容易掌握一些而已。電磁場(chǎng)和信號處理都涉及到數學(xué)物理這些比較燒腦的學(xué)科,大部分工程師為了挽救自己不斷后移的發(fā)際線(xiàn),都自動(dòng)自覺(jué)地把它們忘卻了。

但是,問(wèn)題就在那里,不來(lái)也不去,沒(méi)有多方位全面的知識點(diǎn)以及對待問(wèn)題的多個(gè)視角,你就很難從根上把問(wèn)題解決掉。

再者,從本質(zhì)上看,知識沒(méi)有難易之分,難不難存乎一心,只要下心學(xué),還有學(xué)不會(huì )的?



關(guān)鍵詞: FFT 信號分析

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>