64腳和小于64腳的STM32進行AD時注意,參照電源處理方法
所以橫線以下的理解不對,如果將其做為參考,則其電壓假定按1.2V計算,實際測量的數(shù)字量是1271~1275,按此推算:
1.2/1275=VDD/4095, 所以VDD=3.85V,很明顯供電壓換算出來的值與實際3.3V不符,所以不有用其做為參考。
實際上,可以通用ADC_IN1采集某參考源的電壓,其它通道按此進行比例換算。
----------------------------------------------------------------
ADC_IN17是內(nèi)部參照電壓,不是基準電壓;它僅僅相當于一個標準電壓參照。
----------------------------------------------------------------
ADC_IN17是內(nèi)部參照電壓,不是基準電壓;它僅僅相當于一個標準電壓參照。
內(nèi)部參照電壓VREFINT與參考電壓不是一回事。ADC的參考電壓都是通過Vref+提供的并作為ADC轉(zhuǎn)換器的基準電壓。 當我們使用的Vref+是直接取自用VCC電壓時,當VCC電壓波動比較大時或穩(wěn)壓性能比較差時,可以借用STM32的內(nèi)部參照電壓VREFINT校正測量精度。 以測量1通道的電壓值為例,先讀出參照電壓的ADC測量結果,記為ADre;再讀出要測量通道1的ADC轉(zhuǎn)換結果,記為ADch1;則要測量的電壓為: Vch1 = VREFINT* (((ADch1*(VREF/4096))/(ADre*(VREF/4096))) 注:VREFINT=1.2V,VREF為參考電壓值=3.3V 公式簡化: Vch1 = VREFINT*(ADch1/ADre) 這種方法等于變相將內(nèi)部參照電壓VREFINT當成是ADC參考電壓,也就是說,此時Vref參考電壓的準確度已在此已對結果影響不大了,ADC的轉(zhuǎn)換結果基本由VREFINT的精度決定。 注:一般情況下,這種辦法只適合于當Vref+參考電壓(其實也就是VCC電壓)離散性實在太差的情況下使用。 我們知道,STM32中64腳和小于64腳的型號,Vref+在芯片內(nèi)部與VCC信號線相連,沒有引到片外,這樣AD的參考電壓就是VCC上的電壓,那么我們可以使用一個高精度的外部參照電壓,然后用上面的方法,也許可以解決因VCC電源電壓精度不高帶來的ADC測量不準確的問題。 |
評論