999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種基于STM32F103C8T6單片機DSP庫的音樂頻譜

2020-05-16 09:15:56謝志平
軟件 2020年4期
關鍵詞:單片機信號

謝志平

(廣東省技師學院,廣東 惠州 516100)

0 引言

任何周期函數,都可以看作是不同振幅,不同相位正弦波的疊加。利用C語言編程的FFT算法[2]可以把對波形采樣回來的數據進行轉換,一個模擬信號,假設對其以某個采樣率采樣了N個數據,經過FFT換算以后,就可以獲得這段波形里面含有的不同頻率的特征,這就是頻譜。

對于音頻信號的采集轉換,傳統(tǒng)的51單片機的ADC轉換速度雖然可以滿足要求,C語言編程的FFT算法比較容易編寫,但帶來的缺點就是執(zhí)行效率低。而且同時要滿足ADC轉換、FFT運算及LED屏幕的數據刷新顯示和其他附加功能時會非常困難了。使用 STM32F103單片機官方的 DSP庫[2],采用里面的256位FFT變換,用匯編語言編寫,代碼執(zhí)行效率高,使用時只要調用接口函數即可,能同時滿足多種任務運行功能。

整個系統(tǒng)分為音頻采集與信號處理,紅外按鍵和顯示輸出部分,系統(tǒng)結構如圖1所示。

圖1 系統(tǒng)結構框圖Fig. 1 System structure diagram

1 硬件電路

1.1 音頻選擇與音頻處理

通過選擇開關可以對外置麥克風和外部輸入音源進行采集放大。外部話筒信號采集到聲音后,經過三極管放大后,經過選擇開關可進入集成運放進行 10倍的反相放大。經過放大后輸入到單片機的A/D轉換端口。外部音頻輸入J1同樣可以經過選擇開關接入到10倍的反相放大電路進行放大。該反相放大采用的是軌至軌運算放大器[3]GS8551。該芯片是一種微功率,低零點漂移的CMOS運算放大器,放大器有著1.8 MHz的帶寬,軌對軌輸入和輸出,單電源提電從1.8 V到5.5 V。靜態(tài)電流低至180 μA,電路見圖2。

圖2 音頻選擇與音頻處理電路Fig.2 Audio selection and audio processing circuits

1.2 單片機外圍與顯示屏接口電路

外部輸入電源經過穩(wěn)壓芯片進行穩(wěn)壓,得到3.3 V電壓給單片機、紅外接收頭、ISP程序下載供電。采集到的音頻信號通過PA0口輸入到單片機內部進行轉換。一體化紅外接收頭采用普通的通用接收頭,用來接收來自遙控器的信號,方便對頻譜顯示效果進行切換。全彩點陣屏采用的是HUB-75B接口的室內全彩屏。

圖3 單片機外圍與顯示屏接口電路Fig.3 MCU peripheral interface with the display circuit

該類型顯示屏接口定義如下:

表1 全彩HUB-75B接口定義Tab.1 Full color hub-75b interface definition

2 編程算法

如果要進行256點的轉換。首先使用定時器進行定時(設置40 KHZ采樣率,最高能捕捉20 KHZ的信號),設置每次定時器溢出的時候自動觸發(fā)一次ADC轉換。轉換完成后的數據由 DMA[4]自動搬運到內存指定位置,這個采樣過程無需CPU干預,提高了效率。在完成256次頻率的轉換后,等256點全部傳輸完才會進入到 DMA的中斷,這樣保證了每個采樣點的間隔時間一致。在中斷里面將處理完成標志置為1后再繼續(xù)轉換。

每次轉換完成的數據用 DSP進行 FFT換算,DSP換算成的FFT輸出結果相當于一個復數,將該復數進行求模/2處理后,就代表了該頻率點對應上的幅度值了,然后分別送入兩個數組,一個用來做柱形效果,一個用來做漂浮點效果。

2.1 ADC采集

單片機通過ADC接口讀取音頻信號的電壓值,音樂信號的頻率范圍為 20-20 KHz。由采樣定理:為采樣頻率,為頻率分辨率,N為采樣點,所以一般情況給定了和F0時也就限制了N范圍:,信號的最高頻率為20 KHz。則FS= 4 0 KHz。為如果對信號進行128點的采樣,分辯率為312 Hz。如果采樣點改為256,則F0= 1 56 Hz。即設置定時器溢出為0.025 ms,采樣點N通過宏定義即可在 DSP庫函數里 cr4_fft_256_stm32(FFT_OUT,F(xiàn)FT_IN,NPT)來實現(xiàn)。使用stm32cubemx[5]去配置這些硬件,生成基礎代碼即可完成相應的功能。

圖4 ADC轉換流程圖Fig.4 ADC conversion flow chart

2.2 FFT算法

ADC采集到的數據產生中斷后,就可以直接轉換了,通過單片機內部的DSP進行運算處理,運行DSP庫里的FFT算法函數[6]即可完成轉換。DSP官方庫里的FFT算法有三個函數庫分別為:

cr4_fft_64_stm32.s/cr4_fft_256_stm32.s/cr4_fft_1024_stm32.s。

以256點為例,F(xiàn)FT算法的過程為:首先STM32庫中給出的FFT函數格式如下:

Void cr4_fft_1024_stm32(FFT_OUT, FFT_IN, NPT);

其中,NPT為采樣點,通過修改宏定義來修改NPT代表的值,此處為256;FFT_OUT和FFT_IN均是長度為NPT的32位長整型的數組,高16位為實部,低 16位為虛部,F(xiàn)FT_OUT [NPT]用于保存FFT之后的輸出值;FFT_IN[NPT]用于保存輸入的數值。

對原始數據進行FFT之后,需要對輸出數據進行處理。設置一個循環(huán)語句,將要采集的頻率范圍包含在里面,去掉直流分量。將FFT_OUT [NPT]32位的值分別賦予兩個變量,一個是實部,一個是虛部。再將其求均方根后除以2就是該頻率點對應的信號幅度值。

2.3 LED數據刷新顯示

得到了信號的幅度值后,再將這個幅度值進行轉換成LED適合的顯示方式就形成了頻譜效果。點陣的分辨率比較高時,為了提高系統(tǒng)的運行效率,采用定時器中斷掃描顯示的方法來完成頻譜的刷新顯示。

3 系統(tǒng)測試

利用函數信號發(fā)生器,輸出接上揚聲器,將函數信號發(fā)生器產生正弦波,幅度調到合適的值,從0 Hz到20 KHz開始測試,利用MIC輸入采集聲音,調節(jié)音量電位器,達到合適的靈敏度,顯示屏頻譜顯示基本可以做到準確地跟蹤,在 LED顯示模式上,改變顯示刷新方式,通過紅外遙控器上的功能按鍵做相應的設置,可以進行不同的顯示方式,增加多種效果。

4 結語

通過使用 STC8系列單片機單周期指令的速度優(yōu)勢和內部強大的ADC轉換功能并結合FFT算法。完成對音樂信號的頻譜采集并通過 LED全彩顯示屏進行顯示,能對普通的聲音信號進行簡單的頻譜分析。同時,對日常生活音影設備增加了美感。

猜你喜歡
單片機信號
信號
鴨綠江(2021年35期)2021-04-19 12:24:18
完形填空二則
基于單片機的SPWM控制逆變器的設計與實現(xiàn)
電子制作(2019年13期)2020-01-14 03:15:28
基于單片機的層次漸變暖燈的研究
電子制作(2019年15期)2019-08-27 01:12:10
基于單片機的便捷式LCF測量儀
電子制作(2019年9期)2019-05-30 09:42:02
孩子停止長個的信號
小議PLC與單片機之間的串行通信及應用
電子制作(2018年12期)2018-08-01 00:48:04
基于單片機的平衡控制系統(tǒng)設計
電子制作(2017年19期)2017-02-02 07:08:27
基于LabVIEW的力加載信號采集與PID控制
一種基于極大似然估計的信號盲抽取算法
主站蜘蛛池模板: 久久精品娱乐亚洲领先| 久久永久免费人妻精品| 91精品人妻互换| 国产精品综合久久久| 在线免费a视频| 国产91九色在线播放| 尤物精品国产福利网站| 亚洲精品午夜天堂网页| 中国国产一级毛片| 久久综合结合久久狠狠狠97色| 国产在线精品人成导航| 欧美v在线| 成人夜夜嗨| 亚洲欧美精品日韩欧美| 成AV人片一区二区三区久久| 中文字幕乱码中文乱码51精品| 在线观看无码a∨| 亚洲AV无码精品无码久久蜜桃| 亚洲欧洲一区二区三区| 亚洲天堂精品视频| 亚洲一欧洲中文字幕在线| 丁香婷婷久久| 亚洲人成网站色7799在线播放| 99精品伊人久久久大香线蕉| 国产精品久线在线观看| 91小视频在线观看| 久久人人爽人人爽人人片aV东京热 | 激情综合网址| 精品国产成人高清在线| 夜夜拍夜夜爽| 97国产在线观看| 精品视频在线观看你懂的一区| 亚洲日韩AV无码一区二区三区人| 色男人的天堂久久综合| 99999久久久久久亚洲| 欧美精品综合视频一区二区| 人人爽人人爽人人片| 日韩欧美国产综合| 国产在线98福利播放视频免费| 欧美成人精品一级在线观看| 香蕉久久国产超碰青草| 国产呦视频免费视频在线观看| 女人18毛片水真多国产| 欧美在线伊人| 国产精品专区第一页在线观看| 99精品这里只有精品高清视频| 日韩欧美中文字幕在线韩免费| 国产成人禁片在线观看| 久精品色妇丰满人妻| 伊人天堂网| 毛片网站在线播放| 理论片一区| 欧美国产视频| 激情国产精品一区| 日本五区在线不卡精品| 高清色本在线www| a级毛片毛片免费观看久潮| 亚洲色欲色欲www网| 福利国产在线| 成人在线观看一区| 久操线在视频在线观看| 青青操国产| 新SSS无码手机在线观看| 久久精品人妻中文系列| 91视频精品| 99精品久久精品| 中日韩欧亚无码视频| 波多野结衣视频网站| 青青青国产视频手机| 四虎成人免费毛片| 国产毛片不卡| 亚洲成网站| 国产男女免费视频| 日本三级黄在线观看| 无码'专区第一页| 日本国产一区在线观看| 精品一区国产精品| hezyo加勒比一区二区三区| 日本精品影院| 欧美a在线| 毛片大全免费观看| 国产精品99一区不卡|