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

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

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

謝志平

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

0 引言

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

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

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

圖1 系統結構框圖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。靜態電流低至180 μA,電路見圖2。

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

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

外部輸入電源經過穩壓芯片進行穩壓,得到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的信號),設置每次定時器溢出的時候自動觸發一次ADC轉換。轉換完成后的數據由 DMA[4]自動搬運到內存指定位置,這個采樣過程無需CPU干預,提高了效率。在完成256次頻率的轉換后,等256點全部傳輸完才會進入到 DMA的中斷,這樣保證了每個采樣點的間隔時間一致。在中斷里面將處理完成標志置為1后再繼續轉換。

每次轉換完成的數據用 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,FFT_IN,NPT)來實現。使用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點為例,FFT算法的過程為:首先STM32庫中給出的FFT函數格式如下:

Void cr4_fft_1024_stm32(FFT_OUT, FFT_IN, NPT);

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

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

2.3 LED數據刷新顯示

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

3 系統測試

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

4 結語

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

猜你喜歡
單片機信號
信號
鴨綠江(2021年35期)2021-04-19 12:24:18
完形填空二則
基于單片機的SPWM控制逆變器的設計與實現
電子制作(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
基于單片機的平衡控制系統設計
電子制作(2017年19期)2017-02-02 07:08:27
基于LabVIEW的力加載信號采集與PID控制
一種基于極大似然估計的信號盲抽取算法
主站蜘蛛池模板: 午夜啪啪福利| 久久99国产综合精品女同| 日韩中文欧美| 2020国产精品视频| 婷婷综合在线观看丁香| 99国产精品免费观看视频| 欧美激情网址| 亚洲欧美另类日本| 午夜一级做a爰片久久毛片| 这里只有精品在线播放| 91精品在线视频观看| 国产不卡国语在线| 亚洲欧美国产五月天综合| 99久视频| 国产成人午夜福利免费无码r| 9cao视频精品| 91综合色区亚洲熟妇p| 国产人前露出系列视频| 国精品91人妻无码一区二区三区| 97精品伊人久久大香线蕉| 国产网站免费| 国产成人区在线观看视频| 欧美国产日韩在线观看| 国产欧美日韩另类精彩视频| 狠狠色成人综合首页| 亚洲专区一区二区在线观看| 国产免费久久精品99re不卡 | 国产乱视频网站| 福利姬国产精品一区在线| 亚洲美女AV免费一区| 成人字幕网视频在线观看| 国产一区二区三区在线观看免费| 日本一区二区三区精品视频| www.亚洲天堂| 婷婷色狠狠干| 久久久久无码精品| 亚洲无码A视频在线| 国产91透明丝袜美腿在线| 91丝袜美腿高跟国产极品老师| 国产成人凹凸视频在线| 国产视频欧美| www.国产福利| 国产一级二级三级毛片| 色综合日本| 欧美日韩在线成人| 国产白浆一区二区三区视频在线| 波多野结衣在线se| 欧洲成人免费视频| 国产一区二区人大臿蕉香蕉| 九九久久99精品| jizz国产视频| 国产呦视频免费视频在线观看| 青青草原国产| 亚洲69视频| 欧美成人综合视频| 亚洲av综合网| 亚洲国产高清精品线久久| 亚洲一级毛片| 丁香婷婷久久| 午夜欧美理论2019理论| 99久久精品久久久久久婷婷| 精品久久久久无码| 97成人在线视频| 一级黄色网站在线免费看| 国产欧美日韩综合在线第一| 自偷自拍三级全三级视频| 午夜小视频在线| 国产亚洲高清在线精品99| 99国产精品国产| 日韩一级二级三级| 欧美中文字幕无线码视频| 国产区福利小视频在线观看尤物| 色妺妺在线视频喷水| 一区二区三区国产精品视频| 国产91视频免费观看| 成年人国产网站| 国产精品观看视频免费完整版| 国产人碰人摸人爱免费视频| 人妻21p大胆| 国产免费a级片| 蜜臀AV在线播放| 欧美成人综合在线|