STM32溫度傳感器的使用和計(jì)算
Temperature (in ℃) = {(V25 - VSENSE) / Avg_Slope} + 25
公式中的Vsense就是在ADC_IN16讀到的數(shù)值。Avg_Slope就是溫度與ADC數(shù)值轉(zhuǎn)換的斜率。
設(shè)想一個(gè)XY坐標(biāo),X軸為ADC的電壓讀數(shù),Y軸為溫度,兩軸之間有一條直線代表了溫度與轉(zhuǎn)換電壓的關(guān)系;在這條直線上如果X軸電壓為V25時(shí),Y軸即為25℃;當(dāng)讀出的電壓是其它數(shù)值時(shí),即讀出的電壓是Vsense時(shí),使用這個(gè)公式就可以得到溫度的數(shù)值。
在STM32F103xx的數(shù)據(jù)手冊(cè)中分別給出了V25和Avg_Slope的值:
V25 最小=1.34V 典型=1.43V 最大=1.52V
Avg_Slope 最小=4.0 典型=4.3 最大=4.6 單位是 mV/℃
例如讀到Vsense = 1.30V。分別取V25和Avg_Slope的典型值,計(jì)算得到:
(1.43 - 1.30)/0.0043 + 25 = 55.23
所以溫度大約為 55℃
評(píng)論