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

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

利用單片機(jī)片內(nèi)ADC實(shí)現(xiàn)較高分辨率采樣

GReq_mcu168 ? 來(lái)源:玩轉(zhuǎn)單片機(jī) ? 作者:玩轉(zhuǎn)單片機(jī) ? 2020-10-19 17:15 ? 次閱讀

[導(dǎo)讀] 相信ADC的應(yīng)用或多或少都會(huì)用到,在很多場(chǎng)合都有分辨率要求,要實(shí)現(xiàn)較高分辨率時(shí),第一時(shí)間會(huì)想到采用一個(gè)較高位數(shù)的外置ADC去實(shí)現(xiàn)。可是高分辨率外置ADC往往價(jià)格都不便宜,這就帶來(lái)一對(duì)矛盾:高指標(biāo)與低成本。其實(shí)利用單片機(jī)片上的ADC利用過(guò)采樣技術(shù)就能很好的解決這樣一對(duì)矛盾體,本文來(lái)聊聊這個(gè)話題

什么是過(guò)采樣?

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

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

其中:

為輸入待采樣信號(hào)最高頻率

為奈奎斯特頻率。

如果實(shí)際采樣頻率高于奈奎斯特頻率,即為過(guò)采樣。那么低于奈奎斯特采樣頻率進(jìn)行采樣就稱為欠采樣,如下圖:

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

過(guò)采樣提高分辨率

如果對(duì)一模擬信號(hào),采用過(guò)采樣,然后再進(jìn)行一定的軟件后處理,理論上是可以得到更高分辨率的:

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

其中:

為過(guò)采樣頻率

產(chǎn)品所需實(shí)際采樣頻率

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

假設(shè)系統(tǒng)使用12位ADC每100 ms輸出一次采樣值也即(10 Hz)。

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

具體怎么做呢?

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

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

在類似進(jìn)行下一次16位樣本處理

注意:用于累積過(guò)采樣數(shù)據(jù)并執(zhí)行除法抽取數(shù)據(jù)類型必須具有足夠的字節(jié)寬度,以防止溢出和截?cái)噱e(cuò)誤。比如這里累積和可以采樣32位無(wú)符號(hào)整型。

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

過(guò)采樣提高ADC的信噪比

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

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

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

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

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

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

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

總結(jié)一下

在成本受限的情況下,可以通過(guò)單片機(jī)片內(nèi)ADC過(guò)采樣以及累積抽取的技術(shù)來(lái)提升采樣分辨率,這種技術(shù)的特點(diǎn):

可以使用過(guò)采樣和平均來(lái)提高測(cè)量分辨率,而無(wú)需增加昂貴的片外ADC。

過(guò)采樣和加和抽取將以提高CPU利用率和降低吞吐量為代價(jià)來(lái)提高SNR和測(cè)量分辨率。

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

責(zé)任編輯PSY

原文標(biāo)題:太秀了!單片機(jī)內(nèi)置ADC實(shí)現(xiàn)高分辨率采樣?

文章出處:【微信公眾號(hào):玩轉(zhuǎn)單片機(jī)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 奈奎斯特
    +關(guān)注

    關(guān)注

    0

    文章

    9

    瀏覽量

    9223
  • adc
    adc
    +關(guān)注

    關(guān)注

    98

    文章

    6391

    瀏覽量

    543774
  • 單機(jī)片
    +關(guān)注

    關(guān)注

    0

    文章

    50

    瀏覽量

    11720

原文標(biāo)題:太秀了!單片機(jī)內(nèi)置ADC實(shí)現(xiàn)高分辨率采樣?

文章出處:【微信號(hào):mcu168,微信公眾號(hào):硬件攻城獅】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    過(guò)采樣ADC12以獲得更高分辨率

    電子發(fā)燒友網(wǎng)站提供《過(guò)采樣ADC12以獲得更高分辨率.pdf》資料免費(fèi)下載
    發(fā)表于 10-22 10:16 ?0次下載
    過(guò)<b class='flag-5'>采樣</b><b class='flag-5'>ADC</b>12以獲得更<b class='flag-5'>高分辨率</b>

    高分辨率風(fēng)速計(jì)

    電子發(fā)燒友網(wǎng)站提供《高分辨率風(fēng)速計(jì).pdf》資料免費(fèi)下載
    發(fā)表于 09-24 11:30 ?0次下載
    <b class='flag-5'>高分辨率</b>風(fēng)速計(jì)

    利用可編程可變電阻濾波器提高分辨率的ADS7138

    電子發(fā)燒友網(wǎng)站提供《利用可編程可變電阻濾波器提高分辨率的ADS7138.pdf》資料免費(fèi)下載
    發(fā)表于 09-23 11:38 ?0次下載
    <b class='flag-5'>利用</b>可編程可變電阻濾波器提<b class='flag-5'>高分辨率</b>的ADS7138

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

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

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

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

    鼎陽(yáng)科技|高分辨率產(chǎn)品增長(zhǎng)39.42%,引領(lǐng)高端市場(chǎng)新浪潮!

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

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

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

    Moritex 5X 高分辨率遠(yuǎn)心鏡頭 助力晶圓檢測(cè)

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

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

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

    車載顯示屏:如何利用現(xiàn)有資產(chǎn)快速實(shí)現(xiàn)高分辨率顯示系統(tǒng)

    復(fù)雜,娛樂(lè)空間越來(lái)越大,車廂內(nèi)的顯示屏,如儀表顯示屏、中央信息顯示屏、乘客顯示屏、平視顯示屏等,都在向更大尺寸和更高分辨率發(fā)展。一般來(lái)說(shuō),需要高端 SoC 才能實(shí)現(xiàn)
    發(fā)表于 04-09 14:16 ?0次下載

    高管洞察:高分辨率音樂(lè)需要高分辨率揚(yáng)聲器

    希望創(chuàng)建一個(gè)平臺(tái),可以播放無(wú)損高分辨率(Hi-Res)的音樂(lè),忠實(shí)于原始錄音。他不僅支持高分辨率的數(shù)字內(nèi)
    發(fā)表于 03-21 14:57 ?824次閱讀
    高管洞察:<b class='flag-5'>高分辨率</b>音樂(lè)需要<b class='flag-5'>高分辨率</b>揚(yáng)聲器

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

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

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

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

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

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

    使用傅里葉疊層成像對(duì)運(yùn)動(dòng)物體進(jìn)行高分辨率成像

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