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)不再提示

ADC高速采樣電路設(shè)計(jì)詳解之STM32踩坑

張飛電子實(shí)戰(zhàn)營(yíng) ? 來(lái)源:張飛電子實(shí)戰(zhàn)營(yíng) ? 2024-12-02 09:27 ? 次閱讀

一、踩坑過(guò)程

最近用STM32F334做數(shù)字電源,用到了高速ADC采集電壓電流。設(shè)計(jì)的參考電壓VREF為3.3V,輸入信號(hào)經(jīng)運(yùn)放跟隨后直接接入單片機(jī)的采樣通道。一開(kāi)始測(cè)試一切正常,但隨著輸入信號(hào)增加到2.5V左右,采集到的電壓值突然嚴(yán)重偏大(比如實(shí)際2.5V,ADC采集到的電壓為2.6V)。
首先排除軟件問(wèn)題,因?yàn)殡妷狠^低時(shí)采集到的數(shù)據(jù)一切正常。然后檢查硬件問(wèn)題,確認(rèn)輸入信號(hào)正常,確認(rèn)參考電壓正常,甚至排除了通道間相互干擾的可能性,最終問(wèn)題依舊。也懷疑過(guò)單片機(jī)自身的缺陷,但根據(jù)多年的踩坑經(jīng)驗(yàn),大概率還是自己的硬件設(shè)計(jì)或者軟件有不完善的地方。

對(duì)比以往的經(jīng)驗(yàn),所用到的ADC的采樣率都很低(基本上小于1kHz),而這次采樣率很高(達(dá)到300kHz)。因此初步懷疑,這次和以往的不同應(yīng)該有什么沒(méi)注意到的問(wèn)題。由于需要快速采樣,本次的ADC時(shí)鐘到達(dá)72MHz,采樣時(shí)間設(shè)為了最小1.5個(gè)周期,單次采樣時(shí)間0.149us左右。配置代碼如下

ADC_StructInit(&ADC_InitStructure); ADC_InitStructure.ADC_ContinuousConvMode = ADC_ContinuousConvMode_Disable; //單次觸發(fā)模式 ADC_InitStructure.ADC_Resolution = ADC_Resolution_12b; ADC_InitStructure.ADC_ExternalTrigConvEvent = ADC_ExternalTrigConvEvent_7; //HRTIM_ADCTRG1 event ADC_InitStructure.ADC_ExternalTrigEventEdge = ADC_ExternalTrigEventEdge_RisingEdge; ADC_InitStructure.ADC_DataAlign = ADC_DataAlign_Right; ADC_InitStructure.ADC_OverrunMode = ADC_OverrunMode_Disable; ADC_InitStructure.ADC_AutoInjMode = ADC_AutoInjec_Disable; ADC_InitStructure.ADC_NbrOfRegChannel = 4; ADC_Init(ADC1, &ADC_InitStructure); /* ADC1 regular channel configuration */ ADC_RegularChannelConfig(ADC1, ADC_Channel_1, 1, ADC_SampleTime_1Cycles5); //VISENS ADC_RegularChannelConfig(ADC1, ADC_Channel_2, 2, ADC_SampleTime_1Cycles5); //IOSENS ADC_RegularChannelConfig(ADC1, ADC_Channel_3, 3, ADC_SampleTime_1Cycles5); //VOSENS1 ADC_RegularChannelConfig(ADC1, ADC_Channel_4, 4, ADC_SampleTime_1Cycles5); //VOSENS2

懷疑采樣時(shí)間太快,導(dǎo)致采集出錯(cuò),因此將采樣時(shí)間設(shè)大。設(shè)大后有明顯效果,采集到的值誤差變小,基本判定此處有玄機(jī)。于是仔細(xì)看了下手冊(cè)關(guān)于采樣時(shí)間的的描述

fb73ec04-ae41-11ef-93f3-92fbcf53809c.png

描述中明確提到,需要有足夠的采樣時(shí)間,確保輸入信號(hào)對(duì)內(nèi)嵌的保持電容充電并達(dá)到穩(wěn)定狀態(tài)。之后把采樣時(shí)間設(shè)置到最大,采樣的結(jié)果好了很多,但卻沒(méi)有完全解決問(wèn)題。明顯這已經(jīng)不能真正解決問(wèn)題了,因?yàn)椴蓸訒r(shí)間已經(jīng)超出我能接受的范圍。同時(shí)還有一個(gè)疑惑,如果充電時(shí)間太短導(dǎo)致電壓未達(dá)到實(shí)際值,采樣結(jié)果應(yīng)該偏小才對(duì),為啥會(huì)偏大呢?看來(lái)是有必要把ADC的相關(guān)問(wèn)題系統(tǒng)徹底的研究一下了。首先應(yīng)該深入了解下單片機(jī)內(nèi)ADC的基本原理,在網(wǎng)上找到了一篇文章https://blog.csdn.net/Zhuo3364/article/details/142112282,看完后才真正解開(kāi)了我的疑惑。問(wèn)題就出在輸入信號(hào)的處理上。由于我直接運(yùn)放跟隨后接入ADC,在低速采樣時(shí)有足夠時(shí)間來(lái)穩(wěn)定電壓,所以不會(huì)有問(wèn)題。但在高速時(shí),采樣開(kāi)關(guān)開(kāi)啟的瞬間,放大器會(huì)產(chǎn)生尖峰。又由于采集時(shí)間很短,尖峰還未消除,采集開(kāi)關(guān)已經(jīng)關(guān)閉,因此實(shí)際采樣到的值會(huì)偏大。至此問(wèn)題算是真的找到了,下面將ADC采樣電路的設(shè)計(jì)要點(diǎn)總結(jié)一下。

二、ADC設(shè)計(jì)要點(diǎn)總結(jié)

1、基準(zhǔn)源的設(shè)計(jì)

首先基準(zhǔn)電壓肯定要穩(wěn),而且應(yīng)該要有一定的驅(qū)動(dòng)能力。有一篇關(guān)于基準(zhǔn)的文章https://www.bilibili.com/read/cv35121342/值得仔細(xì)研讀。

2、輸入信號(hào)的設(shè)計(jì)

輸入信號(hào)為什么要處理

關(guān)于輸入信號(hào),很多新手都會(huì)犯一個(gè)錯(cuò)誤,就是直接把電阻分壓的信號(hào)接入ADC采樣,如下圖示意。為什么說(shuō)這是個(gè)錯(cuò)誤呢,經(jīng)歷過(guò)的人就知道這樣采樣得到的值也會(huì)有偏差,嚴(yán)重時(shí)跟設(shè)計(jì)完全不符。

fb9dae72-ae41-11ef-93f3-92fbcf53809c.png

這個(gè)問(wèn)題在于,ADC本身有一定的輸入阻抗,但阻抗并不高,有些甚至只有幾kΩ。這樣直接接入信號(hào),ADC的輸入阻抗就會(huì)起到分壓的作用。如下圖,ADC的輸入阻抗Rz和R2并聯(lián)后再和R1分壓,因此實(shí)際分壓比就和設(shè)計(jì)的完全不同了,采樣到的值自然會(huì)和設(shè)計(jì)值差別很大。所以輸入信號(hào)應(yīng)該要做適當(dāng)?shù)奶幚怼?/p>

fbac9c52-ae41-11ef-93f3-92fbcf53809c.png

常規(guī)的處理,就是輸入信號(hào)加個(gè)跟隨器,因?yàn)榉糯笃鞯妮斎胱杩箍梢哉J(rèn)為是無(wú)窮大的,所以不存在上述分壓的問(wèn)題。這基本上可以滿(mǎn)足絕大部分低速采樣的需求,但對(duì)于高速采樣,只跟隨不濾波也會(huì)有問(wèn)題,這也是本次踩坑的點(diǎn)所在。

找了一個(gè)專(zhuān)用的ADC手測(cè)仔細(xì)研究了下,里面重點(diǎn)就強(qiáng)調(diào)了輸入信號(hào)抗混疊的處理。其實(shí)就是對(duì)輸入信號(hào)進(jìn)行低通濾波。

fbbd1352-ae41-11ef-93f3-92fbcf53809c.png

下面這張圖片也很好的顯示了輸入信號(hào)加RC濾波和不加的區(qū)別,這也是為什么我這次踩坑的原因。從不加RC的曲線可以看到,采樣瞬間放大器輸出信號(hào)產(chǎn)生了一個(gè)尖峰,如果采樣周期很短,尖峰還未消除,就完成了采樣,那么采樣到的值肯定偏大。而加了RC的曲線則是平穩(wěn)上升到實(shí)際的值。

fbd87f5c-ae41-11ef-93f3-92fbcf53809c.png

三、反思 很多時(shí)候我們以為自己懂了,其實(shí)沒(méi)懂,只是湊巧沒(méi)出問(wèn)題而已。知其然后還是應(yīng)該要知其所以然,面對(duì)問(wèn)題方能處變不驚,游刃有余。

聲明:本文內(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)投訴
  • adc
    adc
    +關(guān)注

    關(guān)注

    98

    文章

    6495

    瀏覽量

    544448
  • STM32
    +關(guān)注

    關(guān)注

    2270

    文章

    10895

    瀏覽量

    355717

原文標(biāo)題:ADC高速采樣電路設(shè)計(jì)詳解:STM32 踩坑?

文章出處:【微信號(hào):zfdzszy,微信公眾號(hào):張飛電子實(shí)戰(zhàn)營(yíng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    又給項(xiàng)目埋雷,RS485自動(dòng)收發(fā)電路設(shè)計(jì)

    前言 這個(gè)文章的題目有點(diǎn)騙眼球的感覺(jué),其實(shí)是自己過(guò)大坑,很是痛恨這個(gè)電路,希望大家以后不要了。工程師要畫(huà)這個(gè)電路時(shí),網(wǎng)上一搜,不經(jīng)深入分析就拿來(lái)用,給項(xiàng)目埋了炸彈。 RS485自動(dòng)
    的頭像 發(fā)表于 12-06 09:59 ?258次閱讀
    <b class='flag-5'>踩</b><b class='flag-5'>坑</b>又給項(xiàng)目埋雷,RS485自動(dòng)收發(fā)<b class='flag-5'>電路設(shè)計(jì)</b>

    高速adc與低功耗adc的區(qū)別

    ADC則在能效方面具有優(yōu)勢(shì),適合于電池供電或?qū)δ苄б筝^高的場(chǎng)合。 高速ADC的特點(diǎn) 高采樣率 :高速A
    的頭像 發(fā)表于 11-19 16:10 ?364次閱讀

    高速ADC設(shè)計(jì)中采樣時(shí)鐘影響的考量

    ? 在使用高速模數(shù)轉(zhuǎn)換器 (ADC) 進(jìn)行設(shè)計(jì)時(shí),需要考慮很多因素,其中 ADC 采樣時(shí)鐘的影響對(duì)于滿(mǎn)足特定設(shè)計(jì)要求至關(guān)重要。關(guān)于 ADC
    的頭像 發(fā)表于 11-13 09:49 ?470次閱讀
    <b class='flag-5'>高速</b><b class='flag-5'>ADC</b>設(shè)計(jì)中<b class='flag-5'>采樣</b>時(shí)鐘影響的考量

    在學(xué)習(xí)go語(yǔ)言的過(guò)程過(guò)的

    作為一個(gè)5年的phper,這兩年公司和個(gè)人都在順應(yīng)技術(shù)趨勢(shì),新項(xiàng)目慢慢從php轉(zhuǎn)向了go語(yǔ)言,從2021年到現(xiàn)在,筆者手上也先后開(kāi)發(fā)了兩個(gè)go項(xiàng)目。在學(xué)習(xí)go語(yǔ)言的過(guò)程中也學(xué)習(xí)并總結(jié)了一些相關(guān)的東西,這篇文章就分享下自己過(guò)的一些吧。
    的頭像 發(fā)表于 11-11 09:22 ?158次閱讀

    STM32ADC采樣及各式濾波算法實(shí)現(xiàn)

    本文為手把手教學(xué)ADC采樣及各式濾波算法的教程,本教程的MCU采用STM32F103ZET6。以HAL庫(kù)的ADC采樣函數(shù)為基礎(chǔ)進(jìn)行教學(xué),通過(guò)
    的頭像 發(fā)表于 10-28 10:51 ?1925次閱讀
    <b class='flag-5'>STM32</b>的<b class='flag-5'>ADC</b><b class='flag-5'>采樣</b>及各式濾波算法實(shí)現(xiàn)

    ADC采樣保持電路的工作原理和技術(shù)指標(biāo)

    ADC(Analog-to-Digital Converter,模數(shù)轉(zhuǎn)換器)采樣保持電路ADC轉(zhuǎn)換過(guò)程中的一個(gè)重要組成部分,其工作原理和技術(shù)指標(biāo)對(duì)于確保
    的頭像 發(fā)表于 10-05 14:33 ?1179次閱讀
    <b class='flag-5'>ADC</b><b class='flag-5'>采樣</b>保持<b class='flag-5'>電路</b>的工作原理和技術(shù)指標(biāo)

    高速電路設(shè)計(jì)實(shí)踐—王劍宇.rar

    高速電路設(shè)計(jì)實(shí)踐—王劍宇.rar
    發(fā)表于 09-24 17:26 ?5次下載

    ADS8578S 14位、高速8通道同步采樣ADC數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《ADS8578S 14位、高速8通道同步采樣ADC數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 07-30 13:50 ?0次下載
    ADS8578S 14位、<b class='flag-5'>高速</b>8通道同步<b class='flag-5'>采樣</b><b class='flag-5'>ADC</b>數(shù)據(jù)表

    ADS8588S 16位、高速4通道、同步采樣ADC數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《ADS8588S 16位、高速4通道、同步采樣ADC數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 07-24 11:36 ?0次下載
    ADS8588S 16位、<b class='flag-5'>高速</b>4通道、同步<b class='flag-5'>采樣</b><b class='flag-5'>ADC</b>數(shù)據(jù)表

    ADS8588S 16位、高速8通道、同步采樣ADC數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《ADS8588S 16位、高速8通道、同步采樣ADC數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 07-24 11:35 ?0次下載
    ADS8588S 16位、<b class='flag-5'>高速</b>8通道、同步<b class='flag-5'>采樣</b><b class='flag-5'>ADC</b>數(shù)據(jù)表

    ADS8588S 16位、高速6通道、同步采樣ADC數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《ADS8588S 16位、高速6通道、同步采樣ADC數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 07-24 11:33 ?0次下載
    ADS8588S 16位、<b class='flag-5'>高速</b>6通道、同步<b class='flag-5'>采樣</b><b class='flag-5'>ADC</b>數(shù)據(jù)表

    ADC采樣定理 ADC采樣過(guò)程詳解

    想要保證ADC的性能能夠發(fā)揮出來(lái),在做ADC硬件設(shè)計(jì)的時(shí)候,需要注意一些事項(xiàng)。
    的頭像 發(fā)表于 05-13 18:05 ?6947次閱讀
    <b class='flag-5'>ADC</b>的<b class='flag-5'>采樣</b>定理 <b class='flag-5'>ADC</b>的<b class='flag-5'>采樣</b>過(guò)程<b class='flag-5'>詳解</b>

    硬件篇---電路設(shè)計(jì)ADC采樣

    硬件篇---電路設(shè)計(jì)ADC采樣 在現(xiàn)代電子領(lǐng)域中,模擬數(shù)字轉(zhuǎn)換器(ADC)扮演著關(guān)鍵的角色,作為將模擬信號(hào)轉(zhuǎn)換為數(shù)字形式的核心技術(shù)。
    的頭像 發(fā)表于 05-10 15:42 ?7289次閱讀
    硬件篇---<b class='flag-5'>電路設(shè)計(jì)</b><b class='flag-5'>之</b><b class='flag-5'>ADC</b><b class='flag-5'>采樣</b>

    家庭路由器如何選?實(shí)用技巧讓你不再

    家庭路由器選購(gòu)需考慮需求、預(yù)算、性能指標(biāo)、硬件配置、軟件功能、認(rèn)證與測(cè)試及售后服務(wù)。明確需求,選擇適合的型號(hào)和品牌,確保網(wǎng)絡(luò)穩(wěn)定、高速。遵循這些技巧,避免,享受網(wǎng)絡(luò)便利。
    的頭像 發(fā)表于 04-29 11:38 ?652次閱讀

    痛苦“電池電壓偵測(cè)電路”,含淚總結(jié)設(shè)計(jì)要點(diǎn)

    和大家分享這個(gè)電路的設(shè)計(jì)要點(diǎn),以及當(dāng)時(shí)的設(shè)計(jì)失誤,幫助大家積累經(jīng)驗(yàn),以后不要這種。 設(shè)計(jì)要點(diǎn)一:設(shè)定分壓電阻的大小 這種便攜式掌上閱讀器,當(dāng)然是內(nèi)置鋰電池的:
    的頭像 發(fā)表于 04-07 14:31 ?3164次閱讀
    痛苦<b class='flag-5'>踩</b><b class='flag-5'>坑</b>“電池電壓偵測(cè)<b class='flag-5'>電路</b>”,含淚總結(jié)設(shè)計(jì)要點(diǎn)
    RM新时代网站-首页