GD32 MCU全系列產(chǎn)品均內(nèi)置溫度傳感器,內(nèi)部溫度傳感器可以用于測(cè)量器件周圍溫度及變化,傳感器的輸出電壓連接到ADC的第16通道,可被ADC轉(zhuǎn)換成數(shù)字量。
溫度傳感器輸出電壓隨溫度線性變化,由于生產(chǎn)過程中的多樣化,溫度變化曲線的偏移在不同的芯片上會(huì)存在不同,但斜率基本一致,因而內(nèi)部溫度傳感器更適合測(cè)量溫度變化,即相對(duì)溫度,而不太適合測(cè)量絕對(duì)溫度。如果需要測(cè)量絕對(duì)溫度,且對(duì)溫度的精度要求并不是很高的情況下,可以使用外置溫度傳感器來校準(zhǔn)不同芯片出廠的偏移誤差,這樣就可以用于環(huán)境溫度的測(cè)量。
下面為大家介紹內(nèi)置溫度傳感器參數(shù)以及如何使用。
內(nèi)置溫度傳感器參數(shù)如下圖所示,其中TL為溫度線性誤差,Avg_Slope為斜率,V25為25度下的溫度傳感器輸出典型電壓,tstart為啟動(dòng)時(shí)間,ts_temp為ADC讀取溫度傳感器的采樣時(shí)間。

溫度傳感器可通過ADC的IN16通道進(jìn)行采樣獲取,獲取的采樣值可通過以下公式進(jìn)行換算溫度值:

代碼中計(jì)算公式如下可參考,其中temperature 為轉(zhuǎn)換的溫度變量, ADC_DATA0(ADC0)為溫度傳感器采樣值。
temperature = (1.45 - ADC_DATA0(ADC0)*3.3/4096) * 1000 / 4.1 + 25;