0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

利用單片機內置ADC實現(xiàn)高分辨率采樣

Q4MP_gh_c472c21 ? 來源:嵌入式客棧 ? 作者:逸珺 ? 2020-11-03 09:40 ? 次閱讀

[導讀] 相信ADC的應用或多或少都會用到,在很多場合都有分辨率要求,要實現(xiàn)較高分辨率時,第一時間會想到采用一個較高位數(shù)的外置ADC去實現(xiàn)??墒歉叻直媛释庵肁DC往往價格都不便宜,這就帶來一對矛盾:高指標與低成本。其實利用單片機片上的ADC利用過采樣技術就能很好的解決這樣一對矛盾體,本文來聊聊這個話題。

什么是過采樣?

信號處理中,過采樣是指以明顯高于奈奎斯特速率的采樣頻率對信號進行采樣。從理論上講,如果以奈奎斯特速率或更高的速率進行采樣,則可以完美地重建帶寬受限的信號。奈奎斯特頻率定義為信號帶寬的兩倍。過采樣能夠提高分辨率和信噪比SNR,并且通過放寬抗混疊濾波器的性能要求,有助于避免混疊和相位失真。

在很多項目應用中,需要測量信號的動態(tài)范圍較大,且需要參數(shù)的微小變化。例如,ADC需要測量很大的溫度范圍(比如工業(yè)中甚至要求從-200℃~500℃),但仍要求系統(tǒng)對小于1度的變化做出響應。常見的單片機片上ADC位數(shù)為12位,如要實現(xiàn)高于12位分辨率要怎么做呢?我們知道奈奎斯特-香農采樣定理可知:

其中:

為輸入待采樣信號最高頻率

為奈奎斯特頻率。

如果實際采樣頻率高于奈奎斯特頻率,即為過采樣。那么低于奈奎斯特采樣頻率進行采樣就稱為欠采樣,如下圖:

或許你會問,常規(guī)的應用都是過采樣,怎么也沒見分辨率提高了呀?如果僅僅過采樣,要實現(xiàn)更高分辨率顯然是不夠的,那么要怎么利用過采樣實現(xiàn)更高的分辨率呢?要知道所采用的ADC硬件核分辨率是固定的,難道還會變不成?

過采樣提高分辨率

如果對一模擬信號,采用過采樣,然后再進行一定的軟件后處理,理論上是可以得到更高分辨率的:

為增加有效位數(shù)(ENOB :effective number of bits),對信號進行過采樣,所需的過采樣率可以由下面公式確定(省略理論推導,過于枯燥):

其中:

為過采樣頻率

產品所需實際采樣頻率

W為額外所需增加的分辨率位數(shù)

假設系統(tǒng)使用12位ADC每100 ms輸出一次采樣值也即(10 Hz)。為了將測量的分辨率提高到16位,我們按上述公式計算過采樣頻率:

因此,如果我們以f對信號進行過采樣,然后在所需的采樣周期內收集足夠的樣本以對它們進行平均,現(xiàn)在可以將16位輸出數(shù)據(jù)用于16位測量。

具體怎么做呢?

首先將256個連續(xù)采樣累加

然后將總數(shù)除以16(或將總數(shù)右移4位)。該過程通常稱為抽取,也即將速率采樣。

在類似進行下一次16位樣本處理

注意:用于累積過采樣數(shù)據(jù)并執(zhí)行除法抽取數(shù)據(jù)類型必須具有足夠的字節(jié)寬度,以防止溢出和截斷錯誤。比如這里累積和可以采樣32位無符號整型。

由上面公式可得出一個重要結論:每提高W位分辨率,需要提高采樣率倍。

過采樣提高ADC的信噪比

ADC測量的SNR理論極限基于量化噪聲,這是基于在沒有過采樣和平滑濾波情況下模數(shù)轉換過程中固有的量化誤差所致。而量化誤差取決于ADC分辨率的位數(shù),其中N為ADC的位數(shù),為參考電壓。

SNR理論情況下極限值的計算方式是數(shù)據(jù)轉換的有效位數(shù),如下所示:

這個公式沒必要去記,用到的時候參考計算一下即可。從公式中可看出,要提升一個模數(shù)轉換器的理論SNR的一種可行方案可以通過提升采樣位數(shù),但是需要注意的是這里的信噪比是度量模數(shù)轉換器本身的,就一個真實系統(tǒng)的信噪比還與整個信號鏈相關!

從上式中不難算出,12位ADC的理論SNR極限值為74dB,而通過過采樣提升4位分辨率后,其SNR理論極限提高至96 dB!

到底怎么實現(xiàn)呢?

這里以偽代碼的方式給出編程思路:

voidinit_adc(void) { /*配置ADC的采樣率為過采樣率連續(xù)中斷模式*/ } voidstart_adc(void) { /*控制ADC啟動采樣*/ } /*不同的開發(fā)平臺中斷函數(shù)寫法略有差異,比如51需要指定向量*/ /*OVERSAMPLE_FACTOR=4^RSHIFT_BITS下面兩個宏一起修改*/ #defineRSHIFT_BITS(4) #defineOVERSAMPLE_FACTOR(256) staticunsignedshortadc_result=0U; voidadc_isr(void) { staticunsignedshortadc_index=OVERSAMPLE_FACTOR; staticunsignedintaccumulator=0U; /*ADC_REGADC轉換結果寄存器,不同平臺名稱不同*/ accumulator+=ADC_REG; adc_index--; if(adc_index==0) { /*加和按因子抽取*/ adc_result=accumulator>>RSHIFT_BITS; accumulator=0; adc_index=OVERSAMPLE_FACTOR; } }

該方案有一個缺陷,就是每次ADC中斷都需要CPU參與,在過采樣率很高的情況下,上述方案消耗很多CPU資源,那么如果單片機內存資源足夠的情況下可以考慮采用DMA模式,采集很多數(shù)據(jù)并將數(shù)據(jù)暫存下來,然后再做累加平均抽取。這是空間換時間的策略的體現(xiàn)。這個編代碼也很容易,只需要申請一片內存區(qū),內存區(qū)的大小可以定為256的倍數(shù),這是因為在提升4位分辨率情況下,一個16位的輸出樣本需要256個12位樣本。

總結一下

在成本受限的情況下,可以通過單片機片內ADC過采樣以及累積抽取的技術來提升采樣分辨率,這種技術的特點:

可以使用過采樣和平均來提高測量分辨率,而無需增加昂貴的片外ADC。

過采樣和加和抽取將以提高CPU利用率和降低吞吐量為代價來提高SNR和測量分辨率。

過采樣和加和抽取可以改善白噪聲的信噪比。

-END-

來源 | 嵌入式客棧

作者 | 逸珺

原文標題:太秀了!單片機內置ADC實現(xiàn)高分辨率采樣?

文章出處:【微信公眾號:嵌入式ARM】歡迎添加關注!文章轉載請注明出處。

責任編輯:haq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 單片機
    +關注

    關注

    6023

    文章

    44376

    瀏覽量

    628349
  • cpu
    cpu
    +關注

    關注

    68

    文章

    10702

    瀏覽量

    209355
  • adc
    adc
    +關注

    關注

    97

    文章

    6300

    瀏覽量

    542426

原文標題:太秀了!單片機內置ADC實現(xiàn)高分辨率采樣?

文章出處:【微信號:gh_c472c2199c88,微信公眾號:嵌入式微處理器】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    利用高分辨率捕獲(HRCAP)進行單線數(shù)據(jù)傳輸

    電子發(fā)燒友網站提供《利用高分辨率捕獲(HRCAP)進行單線數(shù)據(jù)傳輸.pdf》資料免費下載
    發(fā)表于 09-14 09:56 ?0次下載
    <b class='flag-5'>利用</b><b class='flag-5'>高分辨率</b>捕獲(HRCAP)進行單線數(shù)據(jù)傳輸

    高分辨率音頻和傳統(tǒng)音頻區(qū)別

    高分辨率音頻通過更高的采樣率和比特深度,提供了更高的音質和更豐富的聽覺體驗,而傳統(tǒng)音頻則可能在音質和細節(jié)上有所妥協(xié)。
    的頭像 發(fā)表于 09-04 16:20 ?176次閱讀
    <b class='flag-5'>高分辨率</b>音頻和傳統(tǒng)音頻區(qū)別

    鼎陽科技|高分辨率產品增長39.42%,引領高端市場新浪潮!

    20%以上,高端化進程再加速;高分辨率數(shù)字示波器產品境內收入同比增長39.42%,競爭優(yōu)勢明顯。 ? 一、高分辨率示波器增長39.42%,核心產品優(yōu)勢突出 當前,示波器高分辨率化已成趨勢。報告期內,鼎陽科技共發(fā)布了4款新產品,其
    發(fā)表于 08-30 16:46 ?203次閱讀
    鼎陽科技|<b class='flag-5'>高分辨率</b>產品增長39.42%,引領高端市場新浪潮!

    什么是高分辨率示波器?它有哪些優(yōu)勢?

    高分辨率示波器是一種在信息與系統(tǒng)科學相關工程與技術領域中廣泛應用的科學儀器,其設計旨在提供更高的信號分辨率和更精細的信號分析能力。以下是對高分辨率示波器的詳細解析,包括其定義、優(yōu)勢以及可能涉及的多個方面。
    的頭像 發(fā)表于 08-08 11:49 ?372次閱讀

    Moritex 5X 高分辨率遠心鏡頭 助力晶圓檢測

    5X高分辨率遠心鏡頭工業(yè)鏡頭相當于機器視覺系統(tǒng)中的眼睛,它能將目標成像在圖像傳感器的光敏面上,對視覺圖像成像發(fā)揮著重要作用。今天我們來看看Moritex的5X高分辨率遠心鏡頭
    的頭像 發(fā)表于 07-27 10:00 ?176次閱讀
    Moritex 5X <b class='flag-5'>高分辨率</b>遠心鏡頭 助力晶圓檢測

    ADS1283高分辨率模數(shù)轉換器數(shù)據(jù)表

    電子發(fā)燒友網站提供《ADS1283高分辨率模數(shù)轉換器數(shù)據(jù)表.pdf》資料免費下載
    發(fā)表于 07-16 10:38 ?0次下載
    ADS1283<b class='flag-5'>高分辨率</b>模數(shù)轉換器數(shù)據(jù)表

    ADS1282-SP抗輻射加固保障高分辨率Δ-ΣADC數(shù)據(jù)表

    電子發(fā)燒友網站提供《ADS1282-SP抗輻射加固保障高分辨率Δ-ΣADC數(shù)據(jù)表.pdf》資料免費下載
    發(fā)表于 07-16 09:20 ?0次下載
    ADS1282-SP抗輻射加固保障<b class='flag-5'>高分辨率</b>Δ-Σ<b class='flag-5'>ADC</b>數(shù)據(jù)表

    高管洞察:高分辨率音樂需要高分辨率揚聲器

    所有關于高分辨率音樂傳輸和無損音頻或空間音頻格式的討論都為時過早。很少有人能分辨出其中的區(qū)別——除非他們通過高分辨率、固態(tài)揚聲器聆聽。 作者: MIKE HOUSHOLDER,xMEMS 營銷和業(yè)務
    發(fā)表于 03-21 14:57 ?771次閱讀
    高管洞察:<b class='flag-5'>高分辨率</b>音樂需要<b class='flag-5'>高分辨率</b>揚聲器

    高分辨率音頻和普通音頻之間的區(qū)別

    為了滿足數(shù)字媒體對質量的要求,行業(yè)已經開始采用高分辨率音頻,數(shù)字內容以更高的頻率采樣以保持保真度,并以更大的位深捕捉更多細節(jié)。
    發(fā)表于 03-21 12:35 ?717次閱讀
    <b class='flag-5'>高分辨率</b>音頻和普通音頻之間的區(qū)別

    如何使用SPU實現(xiàn)MUSIC或ESPRIT算法以獲得超高分辨率

    如何使用SPU實現(xiàn)MUSIC或ESPRIT算法以獲得超高分辨率? 謝謝。
    發(fā)表于 01-23 07:59

    鼎陽科技發(fā)布SDS800X HD高分辨率數(shù)字示波器

    高分辨率示波器具有極佳的信號檢測和顯示能力
    的頭像 發(fā)表于 12-12 13:46 ?909次閱讀
    鼎陽科技發(fā)布SDS800X HD<b class='flag-5'>高分辨率</b>數(shù)字示波器

    使用傅里葉疊層成像對運動物體進行高分辨率成像

    傅里葉疊層成像技術將相位恢復算法與合成孔徑技術相結合,實現(xiàn)物體的高分辨率成像,可應用于微觀和宏觀成像領域。然而,其應用主要集中在靜止物體上,在實際場景中對運動物體的高分辨率成像留下了空白。
    的頭像 發(fā)表于 12-10 10:05 ?740次閱讀
    使用傅里葉疊層成像對運動物體進行<b class='flag-5'>高分辨率</b>成像

    用于高分辨率制造的低成本顯微投影光刻系統(tǒng)

    集成光信號分配、處理和傳感網絡需要小型化基本光學元件,如波導、分光器、光柵和光開關。為了實現(xiàn)這一目標,需要能夠實現(xiàn)高分辨率制造的方法。
    的頭像 發(fā)表于 12-04 09:23 ?400次閱讀
    用于<b class='flag-5'>高分辨率</b>制造的低成本顯微投影光刻系統(tǒng)

    高分辨率分流放大器AD8219應用筆記

    電子發(fā)燒友網站提供《高分辨率分流放大器AD8219應用筆記.pdf》資料免費下載
    發(fā)表于 11-29 10:49 ?0次下載
    <b class='flag-5'>高分辨率</b>分流放大器AD8219應用筆記

    STM32的12位ADC采樣實現(xiàn)16位分辨率

    采樣技術是一種以犧牲采樣速度來提高ADC分辨率的技術。部分STM32單片機是支持硬件過采樣的,
    的頭像 發(fā)表于 10-12 10:19 ?7288次閱讀
    STM32的12位<b class='flag-5'>ADC</b>過<b class='flag-5'>采樣</b><b class='flag-5'>實現(xiàn)</b>16位<b class='flag-5'>分辨率</b>