摘 要:模數(shù)轉(zhuǎn)換的分辨率與器件的數(shù)字位數(shù)有關(guān),位數(shù)越多分辨率越高,分辨率越高器件的成本也越高。C8051F020的片內(nèi)ADC是12位的,為了既降低系統(tǒng)成本又獲得較高的分辨率,介紹了過采樣和求均值方法的實現(xiàn)原理。該方法有效提高轉(zhuǎn)換的分辨率和信噪比,但增加CPU處理時間并降低了數(shù)據(jù)吞吐率。
關(guān)鍵詞:ADC;過采樣;C8051F020;分辨率
在SOC中,模數(shù)轉(zhuǎn)換器是模擬與數(shù)字信號之間的有源接口器件,作用是將模擬信號轉(zhuǎn)換為數(shù)字信號。ADC的關(guān)鍵特性是精度,精度越高,則ADC器件的成本也越高。為了既降低系統(tǒng)成本而又獲得較高的精度,可采用過采樣和求均值技術(shù)增加ADC精度的位數(shù),從而提高ADC的精度。
1 工作原理
根據(jù)奈奎斯特定理所要求的采樣頻率為奈奎斯特頻率fn:
fn=2fm 式中fm是輸入信號的最高頻率
過采樣是使用遠大于奈奎斯特采樣頻率的頻率對輸入信號進行采樣,即采樣頻率fs>>fn。過采樣能提高測量分辨率,每增加一位分辨率,信號必須被以4倍的速率過采樣。過采樣頻率與分辨率及采樣頻率之間的關(guān)系如下:
fos=4wfs
式中:w是所希望增加的分辨率位數(shù)fs是初始采樣頻率要求fos是過采樣頻率。
2 理論分析
以C8051F020芯片使用12位的ADC采集溫度值為例,若每秒輸出一個溫度值(1Hz),為了將測量分辨率增加到16位,按過采樣原理計算過采樣頻率fos=44×1(Hz),即以fos=256Hz的采樣頻率對溫度傳感器進行過采樣,在所要求的采樣周期內(nèi)收集到足夠的樣本,對這些樣本求均值便可得到16位的輸出數(shù)據(jù)。 將256個連續(xù)樣本加在一起然后將總和除以16或?qū)⒖偤陀乙?位,這樣得到的結(jié)果是16位的有用數(shù)據(jù)。每采樣256個樣本計算得到一個結(jié)果,對數(shù)據(jù)進行保存或處理,然后開始下一個數(shù)據(jù)的采集。
用C8051F020片內(nèi)100ksps12位ADC對片內(nèi)溫度傳感器進行16位過采樣和求均值,并將16位精度的測量值從硬件UART輸出。過采樣率為256,將256個連續(xù)的ADC樣本累加到變量accumulator中,在完成累加后再將accumulator右移4位并將結(jié)果存入變量result中,在得到計算結(jié)果后accumulator被清0,準備進行下一次計算。程序中對ADC樣本的累加是在完成ADC轉(zhuǎn)換的中斷服務程序ADC_isr中進行的。
使用過采樣和求均值技術(shù)將對溫度傳感器的測量精度從12位提高到16位,對溫度測量中的分辨率提高進行一下比較,片內(nèi)溫度傳感器的滿度輸出略小于1伏,假設使用2.43V的參考電壓Vref,可以計算對于12位和16位測量的代碼寬度和溫度分辨率(可測量的最小溫度變化)。
溫度每變化一個攝氏度片內(nèi)溫度傳感器的電壓將變化2.86mV,在使用2.43V的Vref、且PGA增益為2時12位測量的電壓分辨率是:
12位測量的溫度分辨率(每個ADC碼所代表的攝氏度數(shù))是:
用過采樣和求均值技術(shù)使有效位數(shù)增加到16位時,新的分辨率計算如下:
16位測量的溫度分辨率(每個ADC碼所代表的攝氏度數(shù))是:
在采用過采樣和求均值技術(shù)的情況下用同一個片內(nèi)12位ADC可以測量的最小溫度變化是0.007攝氏度。
3 過采樣速率分析
如果一個ADC的最大采樣速率是100ksps,在不采用過采樣和求均值技術(shù)的情況下,可以得到100ksps的輸出字速率。
采用過采樣和求均值技術(shù)數(shù)據(jù)吞吐率將降低到初始值除以4w(w為增加的分辨位數(shù))。
在上面所提供的例子中4w為256,輸出字速率將是100ksps/256=390個樣本/秒(390Hz)。
增加分辨率需要增加采樣速率和計算時間,在每個采樣周期(1/fs)內(nèi)CPU的帶寬將降低。是以犧牲吞吐率和降低CPU帶寬為代價的。
4 過采樣與噪聲、分辨率的關(guān)系
量化誤差是由相鄰ADC碼的間距所決定,因此相鄰ADC碼之間的距離為:
式(1)中,N為ADC碼的位數(shù);Vr為基準電壓。
則量化誤差ed,即
奈奎斯特定理指出,如果被測信號的頻帶寬度小于采樣頻率的1/2,那么可以重建此信號。現(xiàn)用白噪聲近似描繪實際信號中的噪聲,在信號頻帶中的噪聲能量譜密度為:
式(3)中,e(f)為帶內(nèi)能量譜密度;ea為平均噪聲功率;fs為采樣頻率。
ADC量化噪聲的功率關(guān)系為:
由于量化噪聲會引發(fā)固定噪聲功率,因此針對增加的有效位數(shù)能夠計算過采樣比:
式(5)中P為過采樣比;fs為采樣頻率;fm為輸入信號最高頻率。
低通濾波器輸出端的帶內(nèi)噪聲功率見下式:
由此可見,過采樣能減少噪聲功率卻又對信號功率不產(chǎn)生影響,在減小量化誤差的同時,能夠獲得與高分辨率ADC相同的信噪比,從而增加被測數(shù)據(jù)的有效位數(shù)。通過提高采樣頻率或過采樣比可提高ADC有效分辨率。
5 結(jié)語
經(jīng)理論分析,實驗結(jié)果表明,當ADC噪聲近似為白噪聲時,可以使用過采樣技術(shù)減少ADC輸出噪聲,提高ADC的信噪比及分辨率。過采樣方法受A/D轉(zhuǎn)換器采樣速度,輸入信號頻率及輸入信號上噪聲等因素的影響。當A/D轉(zhuǎn)換器采樣速率過低或信號頻率過高時,不適宜采用過采樣來提高ADC的精度;當輸入噪聲功率小于量化噪聲功率時,過采樣也不能提高ADC的精度。模擬到數(shù)字的數(shù)據(jù)轉(zhuǎn)換過程產(chǎn)生了噪聲,過采樣和求均值方法能夠減少一些固定類型的噪聲,增加了數(shù)據(jù)轉(zhuǎn)換的SNR以及有效位數(shù)。
過采樣和求均值來提高ADC分辨率技術(shù)使用C8051F020片內(nèi)ADC進行的溫度測量獲得了更高的測量分辨率,這樣不僅可以降低成本,簡化外圍電路,進一步提高系統(tǒng)的可靠性和精度,而且對于其他領域的參數(shù)測量,具有一定的實用和推廣價值。
[參考文獻]
[1]鮑可進.SOC單片機原理與應用[M].北京:清華大學出版社,2011.
[2]史建華.提高ADC分辨率的方法研究[J].山西:山西大同大學學報,2009.
[3]栗紅霞.一種提高ADC0809分辨率的新方案[J].山東:山東輕工業(yè)學院學報,2012.
[4]于光平,張昕.過采樣方法與提高ADC分辨率的研究[J].遼寧:沈陽工業(yè)大學學報,2006.