stm32 adc过采样_产生ADC误差的外部原因有哪些?
01
前言
上篇文章中介紹了ADC自身轉換產生的誤差,本篇文章來介紹下外部原因導致的ADC誤差。
02
?ADC環境導致的誤差
參考電壓噪聲
由于ADC輸出為模擬信號電壓與參考電壓之比,因此模擬參考上的任何噪聲都會導致轉換后 數字值的變化。在某些封裝中,VDDA模擬電源被用作參考電壓(VREF+),因此VDDA電源的質量會影響ADC誤差。
例如,當模擬參考為3.3 V(VREF+ = VDDA)且信號輸入為1 V時,轉換后的結果為:?
(1/3.3)× 4095 = 0x4D9?
但是,當模擬參考中的峰間波動為40 mV時,轉換值變為:(1/3.34)× 4095 = 0x4CA(VREF+在其峰值處)。?
?誤差 = 0x4D9 – 0x4CA = 15 LSB?
SMPS(開關模式電源)通常內置快速切換功率晶體管。這會在輸出中產生高頻噪聲。此切換噪聲介于15 kHz至1 MHz之間。
參考電壓/電源調節
電源調節對于ADC精度十分重要,因為轉換結果是模擬輸入電壓與VREF+值之比。當連接到VDDA或VREF+時,如果這些輸入上的負載及其輸出阻抗導致電源輸出下降,將在轉換結果中產生誤差。
其中N是ADC分辨率(在本例中,N = 12)。如果參考電壓變化,數字結果也將發生變化。
例如:?如果所用電源的參考電壓為3.3 V且VAIN = 1 V,則數字輸出為:
如果電源提供的電壓等于3.292 V(在其輸出連接到VREF+后),則:
壓降產生的誤差為:0x4DC – 0x4D9 = 3 LSB。
外部參考電壓參數
當使用外部參考電壓源(VREF+引腳上)時,該外部參考源有一些重要參數。必須考慮三個 參考電壓規格:溫度漂移、電壓噪聲和長期穩定性。
模擬輸入信號噪聲
在采樣時間內,小而高頻率的信號變化可導致較大轉換誤差。此噪聲由電氣設備(例如電 機、發動機點火、電源線)生成。它增加了不需要的信號,因此會影響源信號(例如傳感 器)。這樣一來,導致ADC轉換結果不準確。
最大輸入信號幅度的ADC動態范圍匹配不佳
為獲得最高ADC轉換精度,ADC動態范圍必須與待轉換信號的最大幅度相匹配。我們假設待轉換信號在0 V與2.5 V之間變化,并且VREF+等于3.3 V。ADC轉換的最大信號值為3102 (2.5 V),如下圖所示。在本例中,有993個未使用轉換(4095 – 3102 = 993)。這意味著轉換后信號精度下降。
模擬信號源電阻的影響
在源和引腳之間的模擬信號源的阻抗或串聯電阻(RAIN),可能會因為流入引腳的電流而導致其上的電壓降。通過電阻為RADC的開關控制內部采樣電容(CADC)的充電。添加了源電阻(RADC)后,保持電容充滿電所需的時間延長。下圖所示為模擬信號源電阻的影響
CADC的有效充電受RADC+RAIN控制,因此,充電時間常量為tc =(RADC+RAIN)× CADC。如果采樣時間短于通過RADC + RAIN將CADC充滿電所需的時間(ts < tc),則ADC轉換的數字值小于實際值。
PCB源電容和寄生電容的影響
在轉換模擬信號時,必須考慮源電容和模擬輸入引腳上的寄生電容。源電阻和電容構成RC網絡。此外,ADC轉換結果可能不準確,除非將外部電容(CAIN + Cp)完全充滿至輸入電壓值。(CAIN + Cp)值越大,源頻率越有限。外部源電容和寄生電容分別用CAIN和Cp表示。
注入電流的影響
任何模擬引腳(或緊鄰的數字輸入引腳)上的負注入電流都可能在ADC輸入中產生泄漏電流。最壞情況是相鄰模擬通道。當VAIN < VSS時,產生負注入電流,導致電流從I/O引腳流出。
溫度影響
溫度對ADC精度有重要影響。它主要產生兩種重要誤差:偏移誤差漂移和增益誤差漂移。這些誤差可以在微控制器固件中得到補償。
I/O引腳串擾
由于I/O之間的電容耦合,切換I/O可能會在ADC的模擬輸入中產生一些噪聲。彼此距離很近或交叉的PCB走線可能會產生串擾。?
內部切換數字信號和I/O會產生高頻噪聲。由于電流浪涌,切換高灌電流I/O可能導致電源 電壓小幅下降。PCB上與模擬輸入走線交叉的數字走線可能影響模擬信號。
EMI產生的噪聲
鄰近電路產生的電磁輻射可能在模擬信號中產生高頻噪聲,此時PCB走線相當于天線。
/ The End /
文檔來源:how-to-get-the-best-adc-accuracy-in-stm32-microcontrollers-stmicroelectronics.pdf
1.芯師爺|2020硬核中國芯 重磅啟動!
2.【直播福利+預告】第三期“嵌入式與物聯網開發技術”線上分享即將開始啦~
3.使用ZYNQ實現復雜嵌入式系統,真的好用!
4.工業互聯網:嵌入式系統的機遇和挑戰
5.余承東簽發內部文件:華為要造屏幕芯片!
6.RTOS是如何實現多任務的?
免責聲明:本文系網絡轉載,版權歸原作者所有。如涉及作品版權問題,請與我們聯系,我們將根據您提供的版權證明材料確認版權并支付稿酬或者刪除內容。
總結
以上是生活随笔為你收集整理的stm32 adc过采样_产生ADC误差的外部原因有哪些?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: string 中的offset_Kafk
- 下一篇: producer send源码_Kafk