本發(fā)明屬于無線通信技術(shù)領(lǐng)域。具體涉及一種基于stm32f4的高速信號頻譜分析方法。
背景技術(shù):
stm32f4是arm最新的嵌入式處理器cortexm4,常用于控制和信號處理功能混合的數(shù)字控制市場。該控制器提高了運行速度,增加了信號處理功能,同時增加了浮點運算單元、自適應(yīng)實時加速器、32位多重ahb總線矩陣和多通道dma控制器、數(shù)字信號控制器等多個新特性。其集成度較高,功耗較低,內(nèi)置最高1mb片上flash,192kbsram,正常工作頻率為168mhz,因此得到了廣泛的應(yīng)用。
名稱為《基于stm32f4的高速信號頻譜分析儀》的論文,是以stm32f407為核心,主要采用fifo來做高速緩存。高速信號先通過ad采樣,然后先將采樣后的數(shù)據(jù)給fifo先緩存處理,然后再通過stm32f407進(jìn)行blackman預(yù)處理,再做1024個點fft進(jìn)行頻譜分析,最后將數(shù)據(jù)顯示在lcd12864上,以便進(jìn)行人機(jī)交互!該系統(tǒng)可實現(xiàn)任意波形信號的頻譜顯示,以及可以自動尋找各諧波分量的幅值,頻率以及相位并進(jìn)行8位有效數(shù)據(jù)顯示。stm32f407雖然芯片資料說明端口可以忍受+5v的電壓,但這不代表其可以識別+5的高電平,因此在讀+5v的輸入端口電平,需要用電平轉(zhuǎn)換芯片將+5v轉(zhuǎn)換成+3.3v的,否則讀出的數(shù)據(jù)時一個錯的。但是3.3v屬于高電平,因此其可以驅(qū)動+5v工作的芯片。但是,名稱為《基于stm32f4的高速信號頻譜分析儀》的論文,結(jié)構(gòu)復(fù)雜,故障率太高,給高速信號頻譜分析帶來了不便性。
技術(shù)實現(xiàn)要素:
本發(fā)明的目的是為了克服上述不足提供一種基于stm32f4的高速信號頻譜分析方法。
一種基于stm32f4的高速信號頻譜分析方法,包括步驟:
采集需分析的高速信號的模擬信號,并對采集的模擬信號進(jìn)行預(yù)處理濾波;
對預(yù)處理濾波后的模擬信號進(jìn)行模數(shù)轉(zhuǎn)換,得到采樣數(shù)據(jù);
對得到的采樣數(shù)據(jù)進(jìn)行fft處理,得到高速信號頻譜信息;
對得到的高速信號頻譜信息進(jìn)行峰值搜索,得到峰值信號;
對采樣數(shù)據(jù)進(jìn)行正交數(shù)字下變頻處理產(chǎn)生正交信號;
將所述正交信號與所述峰值信號進(jìn)行混頻,得到寬帶復(fù)基帶高速信號;
對寬帶復(fù)基帶高速信號進(jìn)行頻譜校正處理,分別得到信號的頻率、幅值及初相信息。
進(jìn)一步,所述采集需分析的高速信號的模擬信號,并對采集的模擬信號進(jìn)行預(yù)處理濾波的具體步驟為:
輸入模擬信號;
接收所述模擬信號的輸入,并建立符號索引;
根據(jù)所述符號索引建立查找表格;
在數(shù)據(jù)庫中根據(jù)查找表格查找數(shù)據(jù)庫中的最高速率,然后進(jìn)行輸出;
以最高速率對所述采樣輸出執(zhí)行數(shù)模轉(zhuǎn)換以將其轉(zhuǎn)換為模擬信號;并且通過低通模擬濾波器處理所述模擬信號以將其傳送給stm32f4。
進(jìn)一步,所述對得到的采樣數(shù)據(jù)進(jìn)行fft處理,得到高速信號頻譜信息的具體步驟為:
對采樣數(shù)據(jù)進(jìn)行抽取
接收抽取后的數(shù)據(jù);
將接收的抽取數(shù)據(jù)復(fù)制為2份,并存儲在兩個不同的地址上;
進(jìn)行數(shù)據(jù)存儲;
對存儲的數(shù)據(jù)進(jìn)行fft變換;
輸出fft變換結(jié)果;
根據(jù)fft輸出數(shù)據(jù)順序進(jìn)行最終結(jié)果輸出。
進(jìn)一步,所述對得到的高速信號頻譜信息進(jìn)行峰值搜索,得到峰值信號的具體步驟為:
系統(tǒng)開始上電;
設(shè)置通道增益;
檢測得到的高速信號頻譜信息是否超限,若超限,則將通道增益切換;若不超限,則轉(zhuǎn)下一步;
檢測得到的高速信號信號正常,進(jìn)行下一步數(shù)模轉(zhuǎn)換;
向stm32f4輸出正常數(shù)據(jù);
檢測采集信號峰值。
進(jìn)一步,所述檢測得到的高速信號頻譜信息是否超限,若超限,則將通道增益切換的步驟中:
再次檢測得到的高速信號頻譜信息是否超限,若超限,則轉(zhuǎn)下一步;
將通道增益切換仍然超限,因此判斷為超量程,檢測結(jié)束。
本發(fā)明通過采集需分析的高速信號的模擬信號,并對采集的模擬信號進(jìn)行預(yù)處理濾波,對預(yù)處理濾波后的模擬信號進(jìn)行模數(shù)轉(zhuǎn)換,得到采樣數(shù)據(jù),對得到的采樣數(shù)據(jù)進(jìn)行fft處理,得到高速信號頻譜信息,對得到的高速信號頻譜信息進(jìn)行峰值搜索,得到峰值信號,對采樣數(shù)據(jù)進(jìn)行正交數(shù)字下變頻處理產(chǎn)生正交信號,將所述正交信號與所述峰值信號進(jìn)行混頻,得到寬帶復(fù)基帶高速信號,對寬帶復(fù)基帶高速信號進(jìn)行頻譜校正處理,分別得到信號的頻率、幅值及初相信息。從而實現(xiàn)了高速信號頻譜分析,解決了高速信號頻譜分析的不便性。
附圖說明
圖1為本發(fā)明方法流程示意圖。
具體實施方式
以下結(jié)合具體實施例對本發(fā)明作進(jìn)一步的說明:
采集需分析的高速信號的模擬信號,并對采集的模擬信號進(jìn)行預(yù)處理濾波;
對預(yù)處理濾波后的模擬信號進(jìn)行模數(shù)轉(zhuǎn)換,得到采樣數(shù)據(jù);
對得到的采樣數(shù)據(jù)進(jìn)行fft處理,得到高速信號頻譜信息;
對得到的高速信號頻譜信息進(jìn)行峰值搜索,得到峰值信號;
對采樣數(shù)據(jù)進(jìn)行正交數(shù)字下變頻處理產(chǎn)生正交信號;
將所述正交信號與所述峰值信號進(jìn)行混頻,得到寬帶復(fù)基帶高速信號;
對寬帶復(fù)基帶高速信號進(jìn)行頻譜校正處理,分別得到信號的頻率、幅值及初相信息。
所述采集需分析的高速信號的模擬信號,并對采集的模擬信號進(jìn)行預(yù)處理濾波的具體步驟為:
輸入模擬信號;
接收所述模擬信號的輸入,并建立符號索引;
根據(jù)所述符號索引建立查找表格;
在數(shù)據(jù)庫中根據(jù)查找表格查找數(shù)據(jù)庫中的最高速率,然后進(jìn)行輸出;
以最高速率對所述采樣輸出執(zhí)行數(shù)模轉(zhuǎn)換以將其轉(zhuǎn)換為模擬信號;并且通過低通模擬濾波器處理所述模擬信號以將其傳送給stm32f4。
所述對得到的采樣數(shù)據(jù)進(jìn)行fft處理,得到高速信號頻譜信息的具體步驟為:
對采樣數(shù)據(jù)進(jìn)行抽取
接收抽取后的數(shù)據(jù);
將接收的抽取數(shù)據(jù)復(fù)制為2份,并存儲在兩個不同的地址上;
進(jìn)行數(shù)據(jù)存儲;
對存儲的數(shù)據(jù)進(jìn)行fft變換;
輸出fft變換結(jié)果;
根據(jù)fft輸出數(shù)據(jù)順序進(jìn)行最終結(jié)果輸出。
所述對得到的高速信號頻譜信息進(jìn)行峰值搜索,得到峰值信號的具體步驟為:
系統(tǒng)開始上電;
設(shè)置通道增益;
檢測得到的高速信號頻譜信息是否超限,若超限,則將通道增益切換;若不超限,則轉(zhuǎn)下一步;
檢測得到的高速信號信號正常,進(jìn)行下一步數(shù)模轉(zhuǎn)換;
向stm32f4輸出正常數(shù)據(jù);
檢測采集信號峰值。
所述檢測得到的高速信號頻譜信息是否超限,若超限,則將通道增益切換的步驟中:
再次檢測得到的高速信號頻譜信息是否超限,若超限,則轉(zhuǎn)下一步;
將通道增益切換仍然超限,因此判斷為超量程,檢測結(jié)束。