大家在使用MCU內(nèi)部adc進行信號采樣一個靜態(tài)電壓時可能在IO口上看到過這樣的波形:

這個時候大家一般會以為是信號源有問題,但仔細觀察會發(fā)現(xiàn)這個毛刺的頻率是和ADC觸發(fā)頻率一樣的!
那么為什么MCU ADC采樣時IO口會出現(xiàn)毛刺,這個毛刺會影響采樣結(jié)果嗎,讓我們來一起研究一下。
首先我們來看下GD32 MCU ADC內(nèi)部采樣電路的原理示意圖:

是的,你沒看錯就是這么簡單,mcu采樣保持電路可以等效為一個開關(guān)、一個采樣電阻和采樣電容;當然后面還有逐次逼近式的轉(zhuǎn)換電路。
所以當開關(guān)閉合時,外部的信號會通過開關(guān)經(jīng)過采樣電阻對采樣電容充電或放電,此時會導致外部電壓瞬間變化,這個過程內(nèi)部電壓和外部電壓的變化可以等效成下圖:

剛才的波形圖里我們看到是一個向下的毛刺,當然如果ADC在掃描模式采樣多個信號時,也可能出現(xiàn)電容對外放電,則會出現(xiàn)向上的毛刺,比如這個波形:

那么這個毛刺會影響我們ADC的最終結(jié)果嗎?
這個我們就需要根據(jù)這個ADC通道所配置的采樣保持時間來判斷了;我們可以用程序配置的采樣保持周期和ADC時鐘計算出ADC采樣開啟的時間,如果從毛刺產(chǎn)生時刻開始經(jīng)過采樣開啟時間后電壓已經(jīng)恢復到平穩(wěn),那么此時這個平穩(wěn)的電壓和ADC采樣電容上的電壓一致,接下來的ADC轉(zhuǎn)換也就能得到正確的結(jié)果。
如果采樣時間結(jié)束時信號還在毛刺階段則采樣結(jié)果就會出現(xiàn)偏大或偏小。
那么如何從軟硬件方面優(yōu)化MCU的ADC性能,期待我們后續(xù)分享。
-
單片機
+關(guān)注
關(guān)注
6076文章
45500瀏覽量
670707 -
mcu
+關(guān)注
關(guān)注
147文章
18941瀏覽量
398694 -
adc
+關(guān)注
關(guān)注
100文章
7516瀏覽量
556098 -
GD32
+關(guān)注
關(guān)注
7文章
432瀏覽量
27374
發(fā)布評論請先 登錄
ADC實現(xiàn)一個IO上掛多個按鍵
ADC108S102采樣時,輸入信號有毛刺怎么解決?
ADC08200采樣速率高的情況下,波形出現(xiàn)毛刺的原因?
使用MCU內(nèi)部ADC采樣,如何保護和隔離????
請問DSP 28335 AD采樣毛刺太大怎么解決?
STM32F030 ADC采樣有毛刺
FPGA的IO口輸出20M頻率方波信號,上升沿和下降沿有毛刺怎么解決
確認MCU的IO口在RESET時的狀態(tài)
STM32的IO口保護以及FT兼容IO口
MCU中的IO口輸入輸出狀態(tài)詳解
MPC82系列MCU的ADC(模數(shù)轉(zhuǎn)換)采樣代碼
為什么MCU ADC采樣時IO口有毛刺?
評論