當(dāng)經(jīng)過運(yùn)算放大器隔離之后的信號(hào)輸入到STM32處理器的模擬輸入口時(shí),
我們需要串聯(lián)一個(gè)電阻,根據(jù)規(guī)格書的A/D轉(zhuǎn)換電路框圖所示,
圖1.A/D轉(zhuǎn)換電路框圖閃
圖中RAIN為外部輸入電阻,最大值為50KΩ;
RADC為內(nèi)部采樣開關(guān)電阻,最大值為1KΩ;
CADC為內(nèi)部采樣和保持電容,最大值為8pF.
而外部輸入電阻的取值與采樣時(shí)間、采樣保持電容有關(guān),如下圖:
圖3. 外部電容最大取值與采樣時(shí)間關(guān)系
這些取值背后有什么深層的邏輯,外部輸入電阻RAIN起到什么作用,應(yīng)當(dāng)如何取值?
外部輸入電阻的作用
一、限流作用
根據(jù)圖1所示的框圖,處理器的模擬輸入口內(nèi)置了上、下拉的保護(hù)二極管。
我們所說的輸入口阻抗高,是指輸入電壓在VSS以及VDDA之間時(shí)的一種情況。
有些人不求甚解,了解到這一特性,就盲目把外部輸入電壓或者運(yùn)放輸出的電壓不經(jīng)過任何電阻,直接連接至輸入端口。
殊不知,這樣會(huì)導(dǎo)致嚴(yán)重的后果,當(dāng)輸入電壓超過處理器模擬電路電源VDDA與二極管導(dǎo)通電壓之和時(shí),內(nèi)部的上拉二極管導(dǎo)通,假設(shè)輸入電壓為Vin, 外部輸入電阻為Rin,
此時(shí)流過IO口的電流為:
當(dāng)沒有串聯(lián)限流電阻時(shí),Rin=0,此時(shí)流過IO的電流非常大。
會(huì)造成IO口的損壞,甚至導(dǎo)致VDDA的電源無法穩(wěn)壓,其輸出電壓被抬升,造成由其供電的其它器件損壞。
當(dāng)電壓低于0減去二極管導(dǎo)通電壓時(shí),下拉二極管可能出現(xiàn)同樣的情況。
這種超出輸入范圍的電壓,可能是外界的干擾導(dǎo)致,還有一種可能是用于調(diào)整信號(hào)的運(yùn)放跟處理器的VDDA不是由同一個(gè)電源供電,而是有不同的上下電順序。
比如運(yùn)放先于VDDA供電,此時(shí)運(yùn)放可能輸出高電壓,而VDDA還沒有電壓,運(yùn)放輸出通過內(nèi)部二極管流入VDDA,出現(xiàn)上述分析的情況。
在規(guī)格書的最大規(guī)格參數(shù)中提到,輸入到模擬輸入口這些非5V兼容的端口的電壓不能超過4.0V,另外還有注釋說明,在任何情況下,端口的注入電流不得高于5mA,總的注入電流不得高于25mA。
IO口注入電流要求
根據(jù)這一要求,考慮當(dāng)外部輸入電壓通過12V的TVS管最高鉗位至19V。
則外部輸入電阻
二、低通濾波
電阻和電容可以組成一階濾波器,如下圖所示在A/D輸入端口加上電阻、電容組成的低通濾波電路,并將電容和電阻靠近端口放置。
可以有效濾除輸入信號(hào)的干擾,包括運(yùn)放輸出的干擾以及從運(yùn)放到端口的導(dǎo)線從空間耦合的干擾。
圖4.R3、C6組成的低通濾波網(wǎng)絡(luò)
我們知道,R、C低通濾波網(wǎng)絡(luò)的-6dB截止頻率為:
截止頻率由R、C的乘積決定,當(dāng)C固定時(shí),R越小,截止頻率越高,對(duì)高頻干擾的過波效果越差。
因此,需要根據(jù)有效信號(hào),選擇合適的電阻R以達(dá)到最佳的濾波效果。
電阻越大越好?
從輸入限流的角度來看,輸入電容越大越好。
但是我們還需要考慮對(duì)A/D轉(zhuǎn)換的影響。
A/D轉(zhuǎn)換器的每一個(gè)通道都有模擬開關(guān),分為以下步驟完成一次轉(zhuǎn)換:
1)選通模擬開關(guān),此時(shí)外部電壓通過外部輸入電阻以及模擬開關(guān)的電阻向采樣保持電容充電(輸入端口與地之間沒有并聯(lián)電容);
2) 選通一段時(shí)間后,斷開模擬開關(guān),由于采樣保持電容兩端的電壓不能突變,所以電容能保持輸入電壓;
3) 轉(zhuǎn)換器對(duì)采樣保持電容上的電壓與參考電壓進(jìn)行逐次比較,將模擬量轉(zhuǎn)為數(shù)字量。
在STM32處理器中,模擬開關(guān)的選通時(shí)間可以通過寄存器設(shè)置,如下圖:
圖5.采樣時(shí)間的設(shè)置
當(dāng)圖4的電路中,當(dāng)不存在C6時(shí),在步驟1的采樣內(nèi),其等效電路為:
圖6.充電電路
此時(shí),VADC的充電方程表示為:
在步驟1結(jié)束時(shí),時(shí)間t=ts,得到采樣保存電容上的電壓為:
其與輸入電壓VIN的誤差值為:
對(duì)應(yīng)的A/D值為:
式中N為A/D轉(zhuǎn)換器的位數(shù),
ADC的分辨率為1/2LSB,誤差必須比分率更小,考慮小于1/4LSB,得到:
當(dāng)VIN=VDDA時(shí),所產(chǎn)生的誤差最大,所以有:
化簡得到:
而ts=Ts*1/fADC,最終得到:
在前幾天分享的代碼中,fADC=14MHz, Ts=28.5cycles ,N=12,則可以算出:
RIN< 25.2kΩ。
另外還需要考慮到端口的輸入漏電流對(duì)A/D采樣精度的影響;
從圖1中可以看到漏電流為1uA,等效于下拉3MΩ的漏電阻。
簡單估算為了達(dá)到0.1%的精度,
RIN+RADC<3kΩ, RIN<2kΩ。
總結(jié)
當(dāng)輸入電壓超過端口允許電壓范圍時(shí),流過端口電流必須小于5mA,要求電阻必須大于5kΩ。
為了濾除高頻干擾,在輸入端增加R、C低通濾波網(wǎng)絡(luò),電阻R的阻值應(yīng)盡量大,以增強(qiáng)濾波效果,但是需要根據(jù)有效信號(hào)的頻率選擇合適的R、C。
為了在采樣時(shí)間內(nèi),采樣保持電容上的電壓與實(shí)際輸入電壓的誤差可以被忽略,由采樣保持時(shí)間,采樣頻率,ADC的位數(shù)計(jì)算出最大輸入電阻阻值。
為了降低ADC轉(zhuǎn)換器的漏電流對(duì)測量精度的影響,根據(jù)精度要求估算出最大輸出電阻。
在ADC輸入口并聯(lián)電容,可以再實(shí)現(xiàn)一級(jí)ADC的充放電的緩沖,使得外部輸入電阻增大的情況下,采樣保持電容由并聯(lián)電容充電,仍然可以滿足分辨率要求。
-
處理器
+關(guān)注
關(guān)注
68文章
19032瀏覽量
228449 -
運(yùn)算放大器
+關(guān)注
關(guān)注
214文章
4852瀏覽量
172130 -
STM32
+關(guān)注
關(guān)注
2263文章
10846瀏覽量
353701 -
采樣時(shí)間
+關(guān)注
關(guān)注
0文章
3瀏覽量
5782 -
輸入電阻
+關(guān)注
關(guān)注
0文章
43瀏覽量
8163
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論