王文海
摘要:本文通過對該微控制器數(shù)字轉(zhuǎn)換器(ADC)的精度的基本原理進行研究,并對STM32微控制器內(nèi)核進行可行性分析,同時通過研究數(shù)據(jù)來對過采樣技術(shù)能否通過STM32微控制器技術(shù)實驗,從而得出,過采樣技術(shù)的使用能夠有效地減少STM32微控制器中處理器的負擔,大大提高其自帶模擬數(shù)字轉(zhuǎn)換器的精度。
關(guān)鍵詞:STM32微控制器;過采樣技術(shù);模擬數(shù)字轉(zhuǎn)換器(ADC)
中圖分類號:TP335 文獻標識碼:A 文章編號:1007-9416(2017)10-0005-01
1 過采樣技術(shù)的原理分析
1.1 量化噪聲探究
模擬數(shù)字轉(zhuǎn)換器的采樣過程就是通過吧連續(xù)的模擬信號通過轉(zhuǎn)換成為有限的數(shù)字,在這個過程中每一個數(shù)字代表了以此采樣所獲取的信息。在進行量化的過程中,要根據(jù)數(shù)據(jù)的位置劃定合適的量化分析,比如12位數(shù)據(jù)就代表212個量化級,如果是14位數(shù)據(jù)就代表214個量化級,可以將同一級別的樣本的值歸為一種類型,同時給定一種量化值。轉(zhuǎn)換器的模擬信號是連續(xù)不間斷的,其量化的結(jié)果和實際模擬量之間的差值叫做誤差(eq),或者稱為量化噪聲。
1.2 過采樣率與精度的關(guān)系
假設(shè)量化噪聲為白噪聲,就能夠同歸對量化誤差的計算獲得平均噪聲的功率。
E(e)=σ2de=Δ2/12
1.3 過采樣數(shù)據(jù)的計算
通過4p的過采樣率得來的采樣值再通過求和運算、平均計算等方法進行處理,但是卻不能簡單的把4p的采樣值進行簡單的加法和除法的運算,這種運算方法的濾波作用很低,比如R位的采樣值通過精度的平均后仍然是R位,并不能提高過采樣的精度。在進行過采樣數(shù)據(jù)的提取時可以將4p個采樣數(shù)據(jù)值進行相加得到R+2p位的數(shù)值,通過數(shù)值右移p個單位,就能夠得到R+P位的數(shù)值,此時的數(shù)字是提高了p位后精度的采樣最后結(jié)果。
1.4 過采樣能夠進行的前提
過采樣技術(shù)的順利施行是有前提條件的,并不能在隨時的情況下就能發(fā)生很好的作用,一般利用過采樣技術(shù)來提高采樣的精度通常是要滿足下面的兩個條件:一是控制器輸入的信號必須存在一些白噪音,而功率的平均分配要在采樣技術(shù)有用的頻率帶內(nèi);二是白噪音的幅度要能夠?qū)斎氲脑胍艋蛘咝盘柈a(chǎn)生足夠的影響范圍,讓ADC的轉(zhuǎn)換信號能夠隨機的轉(zhuǎn)換以為,如果不能則輸入的信號轉(zhuǎn)出的值就會相同,這樣的抽取結(jié)果不能提高過采樣的數(shù)據(jù)精度。如果不能反轉(zhuǎn)1位就需要人為在傳入的信號中輸入一定的噪聲,噪聲的頻率不能和輸入的信號有線性相關(guān)的關(guān)系,同時還要保證自帶ADC的轉(zhuǎn)換結(jié)果能夠在杏林的量化值之間進行隨機的翻轉(zhuǎn)。
2 基于STM321微控制器的過采樣技術(shù)
2.1 STM32微控制器自帶ADC的特征
STM32微控制器的內(nèi)部自帶著有十二位的ADC,這種ADC具有十六位的輸入信號的通道,通過采樣序列寄存器的存在,ADC的這些通道能夠通過任何的順序進行采樣。自帶ADC通常完成每一次的采樣就能又一次DMA的請求,若是相對應(yīng)的DMA通道已被占用,過采樣值能夠直接通過DMA傳送大SRAM,同時不用經(jīng)過CPU的干擾就能夠到達。STM32微控制器內(nèi)部鑲嵌了具有八個十六位的定時器,這些定時器具有以下模式:獲得比較、輸入與輸出的比較、PWN或者是單脈沖等的工作方式。在進行定時器的安排時可以將其設(shè)置為與CPU相同的時鐘大小,從而能夠準確的進行定時。
2.2 基于STM32微控制器過采樣的條件檢查
為了過采樣技術(shù)能夠順利得進行使用,要對其STM32微控制器系統(tǒng)進行設(shè)計軟件代碼的監(jiān)測,觀察該系統(tǒng)是否符合過采樣條件的需要。在進行條件檢驗的過程中,要輸入頻率為五十赫茲的信號,同時根據(jù)Nyquist定律將采樣率控制到至少為一百赫茲。在這樣的采樣頻率下向微控制器的自帶ADC0.0000V、1.7000V、3.4000V的輸入信號,同時降采樣值直接輸送到計算機上不用經(jīng)過處理,再用Excel軟件之間觀察得到的數(shù)據(jù),系統(tǒng)中的噪聲傳入信號若能翻轉(zhuǎn)一到兩位,將噪聲的分布看作是隨機的,也可以將其任作為白噪聲,這個結(jié)果已經(jīng)滿足了過采樣技術(shù)所需的條件,不用人為的創(chuàng)造信號進行輸送,進而引起白噪聲。
2.3 STM32微控制器的軟件設(shè)計
STM32微控制器的軟件系統(tǒng)設(shè)計主要包括系統(tǒng)功能的初始化和中斷處理兩個方面。在進行系統(tǒng)初始化方面的設(shè)計時主要是針對STM32的ADC、CPU時鐘、DMA定時器等進行初始化管理,為了將它們的精度提高到四位,就要經(jīng)傳入的信號至少控制在25.6kHz的過采樣頻率。將STM32微控制器的CPU時鐘設(shè)定為56M Hz、ADC的時鐘要設(shè)置為系數(shù)為八的的地方,同時還要經(jīng)時間的轉(zhuǎn)換設(shè)置為242個ADC時鐘周期,以ADC的采樣率能夠達到29kHz,一個能夠滿足過采樣技術(shù)頻率的要求,有效避免了占用微控制器CPU的時間。將微控制器的定時器設(shè)置為每個10ms產(chǎn)生以此中斷,在中斷的同時能夠啟動DMA傳輸,將傳輸?shù)脑丛O(shè)備設(shè)置為模擬數(shù)字轉(zhuǎn)換器的寄存器。在代碼的傳輸完成后,通過中斷處理程序?qū)υ撨^程中的256采樣值進行求和的運算,將得到的和進行右移八位的處理,就能夠得到一個12的過采樣值,過采樣值是經(jīng)過均值濾波后得到的結(jié)果,該值用于過采樣結(jié)果的參照。若是右移4位,能夠得到一個16位的過采樣值,這個采樣值是采樣的最終結(jié)果,可以將這兩種數(shù)據(jù)通過計算機進行顯示。
3 結(jié)語
基于STM32的過采樣技術(shù)能夠有效地解決STM32微控制器自帶ADC精度低的問題,提高過采樣結(jié)果的精度,減少了外部昂貴ADC控制器的使用,提高了工作效率。但是這種過采樣技術(shù)的進行是有一定的條件限制的,對CPU也有一定的影響,但是總的效果卻很理想。
參考文獻
[1]劉鵬飛.基于過采樣的軌道移頻信號檢測算法設(shè)計與實現(xiàn)[J].自動化與儀器儀表,2016,(12):236-238.
[2]趙君鑫,孫樹文. 基于過采樣技術(shù)的高精度次聲信號采集系統(tǒng)[J].中北大學學報(自然科學版),2014,(05):605-609.
[3]郝雯,沈金鑫,梅成.基于STM32單片機的存儲式數(shù)據(jù)采集系統(tǒng)設(shè)計[J].電子設(shè)計工程,2013,(17):80-82.
[4]楊偉明,劉全璽,劉成臣,劉玉良.基于STM32微控制器的數(shù)控穩(wěn)壓穩(wěn)流電源設(shè)計[J].天津科技大學學報,2012,(05):56-60.endprint