RM新时代网站-首页

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

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

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

STM32的12位ADC過(guò)采樣實(shí)現(xiàn)16位分辨率

冬至子 ? 來(lái)源:嵌入式技術(shù)開(kāi)發(fā) ? 作者:Mr張工 ? 2023-10-12 10:19 ? 次閱讀

1.什么是過(guò)采樣

過(guò)采樣技術(shù)是一種以犧牲采樣速度來(lái)提高ADC分辨率的技術(shù)。部分STM32單片機(jī)是支持硬件過(guò)采樣的,如STM32G0系列。通過(guò)過(guò)采樣,可以將12位的ADC提升到16位,非常實(shí)用。

圖片

根據(jù)過(guò)采樣技術(shù),每提高1位ADC分辨率,需要增加4倍的采樣率。也就是說(shuō)1次采樣是12Bit,4次是13Bit,16次是14Bit,64次是15Bit,256次是16Bit,如果要更高分辨率,那么STM32的硬件過(guò)采樣就無(wú)能為力了。

過(guò)采樣主要通過(guò)配置ADC_SMPR寄存器的下面幾位即可實(shí)現(xiàn),配置移位位數(shù)、過(guò)采樣倍數(shù)以及使能位。如下:

圖片

最大可配置為256倍過(guò)采樣,實(shí)現(xiàn)16位分辨率。當(dāng)采用256倍過(guò)采樣時(shí),得到的結(jié)果是20位的,但ADC_DR寄存器是16位的,所以此時(shí)必須右移4位才行。如下圖:

圖片

2.STM32CubeMX配置

ADC配置如下,使能了一個(gè)通道,打開(kāi)DMA和連續(xù)采樣。使能過(guò)采樣,右移4位,256倍過(guò)采樣。這樣就可以直接當(dāng)作16位ADC來(lái)用了。

圖片

生成代碼后,輸入2.5V的電壓,進(jìn)行采樣測(cè)試,程序如下:

HAL_ADCEx_Calibration_Start(&hadc1);
HAL_Delay(200);
HAL_ADC_Start_DMA(&hadc1,(uint32_t*)ADC_Buf,100);

采樣結(jié)果如下,可以看到,有最大4個(gè)字的跳動(dòng)。當(dāng)然這也跟硬件的布局布線等設(shè)計(jì)有關(guān)系。測(cè)試使用的開(kāi)發(fā)板,效果不是特別好,但過(guò)采樣對(duì)于提升分辨率還是有用的。

圖片

如果再對(duì)結(jié)果進(jìn)去求平均值,可以進(jìn)一步提升分辨率,結(jié)果如下,基本上只有1個(gè)字的跳動(dò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)注

    31

    文章

    5336

    瀏覽量

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

    關(guān)注

    59

    文章

    549

    瀏覽量

    58701
  • ADC采樣
    +關(guān)注

    關(guān)注

    0

    文章

    134

    瀏覽量

    12840
  • stm32cubemx
    +關(guān)注

    關(guān)注

    5

    文章

    283

    瀏覽量

    14791
  • 過(guò)采樣技術(shù)

    關(guān)注

    0

    文章

    6

    瀏覽量

    2213
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    ADC分辨率可以通過(guò)采樣的方式提高嗎?

    ADC分辨率16,用過(guò)采樣的方式將分辨率提高到20
    發(fā)表于 11-30 10:33

    請(qǐng)問(wèn)有采樣率250MHz, 分辨率8/12ADC推薦嗎?

    您好, 請(qǐng)問(wèn)有采樣率250MHz左右 分辨率12,管腳兼容8分辨率
    發(fā)表于 02-22 11:53

    如何在Δ∑ADC上達(dá)到20分辨率

    我有一些關(guān)于CY8C58系列PSoC和模擬性能的問(wèn)題。數(shù)據(jù)表要求在Δ∑ADC上達(dá)到20分辨率。有沒(méi)有真實(shí)世界的測(cè)試來(lái)驗(yàn)證這一水平的準(zhǔn)確性實(shí)際上是可以實(shí)現(xiàn)的??jī)?nèi)部參考為1.024V,在
    發(fā)表于 07-19 14:58

    如何實(shí)現(xiàn)STM32 MCU的16ADC分辨率

    STM32 MCU 具有 12 ADC 分辨率,但一些 MCU 聲稱“高達(dá) 16
    發(fā)表于 12-01 06:11

    S32K344 14ADC分辨率12分辨率之間有什么區(qū)別?

    我正在使用 S32K344s ADC。網(wǎng)站上的數(shù)據(jù)表和規(guī)范聲明了 12 分辨率,但 ADC 外設(shè)可以在 CALBISTREG 寄存器中設(shè)置
    發(fā)表于 06-06 09:10

    請(qǐng)問(wèn)有采樣率250MHz左右、分辨率12,管腳兼容8分辨率adc嗎?

    您好, 請(qǐng)問(wèn)有采樣率250MHz左右 分辨率12,管腳兼容8分辨率
    發(fā)表于 11-21 06:46

    電壓范圍為正負(fù)10V、具有12分辨率的自動(dòng)調(diào)零電路

    電壓范圍為正負(fù)10V、具有12分辨率的自動(dòng)調(diào)零電路 電路的功能
    發(fā)表于 05-07 14:21 ?4184次閱讀
    電壓范圍為正負(fù)10V、具有<b class='flag-5'>12</b><b class='flag-5'>位</b><b class='flag-5'>分辨率</b>的自動(dòng)調(diào)零電路

    VCNL4020 16分辨率能為你做什么

    VCNL4020 16分辨率能為你做什么
    發(fā)表于 02-07 16:15 ?40次下載

    14分辨率的模塊和16分辨率的模塊之間的區(qū)別

    14分辨率的模塊(mo kuai)和16分辨率的模塊有什么不同的地方? 14的模塊最高位是
    發(fā)表于 10-09 14:00 ?3969次閱讀

    DAC如何達(dá)到32分辨率

    DAC的32分辨率的基礎(chǔ)是模擬開(kāi)關(guān)S 1 和S 2 以及精密電阻網(wǎng)絡(luò)R 2 至R 6對(duì)兩個(gè)16PWM信號(hào)求和。
    的頭像 發(fā)表于 05-13 07:47 ?4448次閱讀
    DAC如何達(dá)到32<b class='flag-5'>位</b><b class='flag-5'>分辨率</b>

    AD9260:2.5 MHz輸出字16分辨率的高速過(guò)采樣CMOS ADC數(shù)據(jù)表

    AD9260:2.5 MHz輸出字16分辨率的高速過(guò)采樣CMOS
    發(fā)表于 04-17 17:07 ?14次下載
    AD9260:2.5 MHz輸出字<b class='flag-5'>率</b>下<b class='flag-5'>16</b><b class='flag-5'>位</b><b class='flag-5'>分辨率</b>的高速<b class='flag-5'>過(guò)</b><b class='flag-5'>采樣</b>CMOS <b class='flag-5'>ADC</b>數(shù)據(jù)表

    AD9281:雙通道8分辨率CMOS ADC數(shù)據(jù)表

    AD9281:雙通道8分辨率CMOS ADC數(shù)據(jù)表
    發(fā)表于 04-27 12:57 ?2次下載
    AD9281:雙通道8<b class='flag-5'>位</b><b class='flag-5'>分辨率</b>CMOS <b class='flag-5'>ADC</b>數(shù)據(jù)表

    如何通過(guò)過(guò)采樣的方式提高有效分辨率

    (比特)分辨率采樣率是模數(shù)轉(zhuǎn)換器(ADC)最重要的兩個(gè)參數(shù)。高位分辨率ADC可以有效地減少
    的頭像 發(fā)表于 01-21 14:20 ?6443次閱讀
    如何通過(guò)過(guò)<b class='flag-5'>采樣</b>的方式提高有效<b class='flag-5'>位</b><b class='flag-5'>分辨率</b>

    過(guò)采樣ADC,實(shí)現(xiàn)16分辨率

    )。AD7723具有19.2 MHz時(shí)鐘,采用16過(guò)采樣,能夠以16.460 MHz輸出字速率為1 kHz輸入提供2性能。
    的頭像 發(fā)表于 06-17 14:38 ?3481次閱讀
    <b class='flag-5'>過(guò)</b><b class='flag-5'>采樣</b><b class='flag-5'>ADC</b>,<b class='flag-5'>實(shí)現(xiàn)</b><b class='flag-5'>16</b><b class='flag-5'>位</b><b class='flag-5'>分辨率</b>

    RA6T2的16模數(shù)轉(zhuǎn)換器操作 [9] 配置RA6T2 ADC模塊 (6)

    2?配置RA6T2 ADC模塊 2.2 以16深度操作ADC RA6T2 MCU上的ADC外設(shè)的獨(dú)特之處在于,它能夠利用過(guò)
    的頭像 發(fā)表于 08-04 12:10 ?631次閱讀
    RA6T2的<b class='flag-5'>16</b><b class='flag-5'>位</b>模數(shù)轉(zhuǎn)換器操作 [9] 配置RA6T2 <b class='flag-5'>ADC</b>模塊 (6)
    RM新时代网站-首页