<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于 STM32U5 片內溫度傳感器正確測算溫度

基于 STM32U5 片內溫度傳感器正確測算溫度

作者: 時(shí)間:2024-02-06 來(lái)源:意法半導體中國 收藏

1.    引言

本文引用地址:http://dyxdggzs.com/article/202402/455404.htm

STM32 在內部都帶有一個(gè), 也不例外。這個(gè)位于晶圓上的溫度 傳感器雖然不太適合用來(lái)測量外部環(huán)境的溫度,但是用于監控一下晶圓上的溫度也是挺好 的,可以防止芯片過(guò)溫運行。

2.    問(wèn)題

2.1.   問(wèn)題詳情

某客戶(hù)在使用 75ZIT6Q 時(shí),使用 ADC4 對內部 VSENSE 進(jìn)行采樣 計算,但是總是覺(jué)得得到的溫度值不對。那么,應該如何對內部的 ADC 采樣 進(jìn)行計算以得到正確溫度值呢?

2.2.   問(wèn)題分析

首先,應該先來(lái)看一下參考手冊中,如何描述內部溫度傳感器的。參考手冊說(shuō)明了, 未經(jīng)校準的內部溫度傳感器更適用于對溫度變量而非絕對溫度進(jìn)行測量的應用。為了提高 溫度傳感器測量的準確性,ST 在生產(chǎn)過(guò)程中將校準值存儲在每個(gè)器件的系統存儲器中。用 戶(hù)在軟件開(kāi)發(fā)中,可以在應用中去讀取這些數據,用于提高溫度傳感器的準確性。

這個(gè)校準值是寫(xiě)在數據手冊的,如圖 1 所示。

圖1. 內部溫度傳感器

圖片.png

這張表格告訴我們,校準值 TS_CAL1 的數值位于存儲器地址 0x0BFA0710 和 0x0BFA0711,也就是它是一個(gè) 16-bit 的數據;同理,校準值 TS_CAL2 的數值位于存儲器地 址 0x0BFA0742 和 0x0BFA0743。

再回過(guò)頭來(lái)看一下參考手冊是如何描述怎么讀取內部溫度傳感器的溫度的,如圖 2 所示。

圖2. 讀取溫度傳感器

圖片.png

這里描述的是如何讀取內部溫度傳感器的溫度,前面主要介紹 ADC 的配置和對溫度傳 感器的采樣,最后根據得到的數據使用公式進(jìn)行計算,得到溫度值。前面的 ADC 的配置 和采樣就不說(shuō)了,我們主要來(lái)看一下公式的使用。

圖片.png

其中,

Temperature (in ℃) 就是內部傳感器的當前溫度;

TS_DATA 為內部傳感器當前溫度對應的采樣值;

TS_CAL2_TEMP 為校準值 2 的溫度值,TS_CAL2 為對應的采樣值,對于 來(lái)說(shuō),TS_CAL2_TEMP 為 130℃,對應的采樣值存儲在 0x0BFA0742 和 0x0BFA0743; TS_CAL1_TEMP 為校準值 1 的溫度值,TS_CAL1 為對應的采樣值,對于 STM32U5來(lái)說(shuō),TS_CAL1_TEMP 為 30℃,對應的采樣值存儲在 0x0BFA0710 和 0x0BFA0711; 對于 STM32U5 來(lái)說(shuō),公式可簡(jiǎn)化為:

圖片.png

那么,是不是直接讀取了 TS_CAL2 和 TS_CAL1,放到公式里,然后通過(guò) ADC 得到TS_DATA,就可以直接算溫度了呢?接著(zhù)往下看。

2.3.   問(wèn)題解決

在室溫下使用 NUCLEO-U575ZI-Q 做個(gè)實(shí)驗:

讀取 0x0BFA0742 和 0x0BFA0743 得到 TS_CAL2 為 0x155D,也就是 0d5469;讀 取 0x0BFA0710 和 0x0BFA0711 得到 TS_CAL1 的值為 0x102F,也就是 0d4143。

此時(shí),由 ADC1 對內部溫度傳感器進(jìn)行采樣轉換,得到 TS_DATA 為 0xEAA,也就是 0d3754。

那么,如果直接放進(jìn)去算:

圖片.png

室溫下,這個(gè) 0.66℃顯然不對。

2.3.1.  使用 ADC1 測量?jì)炔繙囟葌鞲衅鞯臏囟戎?/strong>

再來(lái)看數據手冊里對校準值的描述,如圖 3 所示。

圖3. 溫度傳感器校準值重要參數

圖片.png

這個(gè)表格有一個(gè)非常重要的參數,就是 ADC1 的參考電壓,它是 3.0V,而 NUCLEO-U575ZI-Q 板子的 ADC 參考電壓為 3.3V。所以,這兩個(gè) TS_CAL1 和 TS_CAL2 對于 NUCLEO-U575ZI-Q 中的 STM32U575ZIT6Q 的內部溫度傳感器肯定是不能直接用的, 需要先換算為 3.3V 參考電壓的值才行。

所以,新的值計算如下:

TS_CAL2 = 5469 × 3 / 3.3 = 4972

TS_CAL1 = 4143 × 3 / 3.3 = 3766

再回到剛才的實(shí)驗中,計算的公式如下:

圖片.png

這次算出來(lái)的結果為 29℃就對了。

2.3.2.  使用 ADC4 測量?jì)炔繙囟葌鞲衅鞯臏囟戎?/strong>

那對于 ADC4 是否也是一樣的呢?

首先,要知道在 STM32U5 中,ADC1 為 14-bit SAR ADC,而 ADC4 為 12-bit SAR ADC。同樣的這塊板子,同樣的室溫下,由 ADC4 對內部溫度傳感器進(jìn)行采樣轉換得到的 值是 0x3AA,也就是 0d938。

要使用 0d938 計算溫度值,TS_CAL1 和 TS_CAL2 也要相應轉為 12 位的數據才行。 將它們由 14 位數據轉為 12 位的數據,相當于就是右移 2 位,也相當于除以 4。

由于參考電壓仍然是 3.3V,所以針對 ADC4 的 TS_CAL2 和 TS_CAL1 應該計算如下:

TS_CAL2 :由讀取到的 0x155D 右移 2 位,得到 0x557,也就是 0d1367,再換算成 3.3V 的 。

TS_CAL2 = 1367 × 3 / 3.3 = 1243

也可以直接使用上面 ADC1 例子的值來(lái)計算。

TS_CAL2 = 4972 / 4 = 1243

TS_CAL1 :由讀取到的 0x102F 右移 2 位,得到 0x40B,也就是 0d1035,再換算成 3.3V 的 。

TS_CAL2 = 1035 × 3 / 3.3 = 941

也可以直接使用上面 ADC1 例子的值來(lái)計算。

TS_CAL2 = 3766 / 4 = 941

計算的公式如下:

圖片.png

算出來(lái)的結果也是 29℃。

3.    小結

當我們使用芯片的內部溫度傳感器計算內部溫度時(shí),需注意校準值是使用哪個(gè) ADC、 在什么參考電壓下得到的。當實(shí)際應用與內部溫度傳感器校準時(shí)所使用 ADC 及條件不一 樣時(shí),應該對存儲單元里的校準值先做計算轉化,然后才可以使用參考手冊所提供的公式 進(jìn)行計算,否則將會(huì )得到錯誤值。

更多相關(guān)信息請見(jiàn):基于 STM32U5 片內溫度傳感器正確測算溫度  https://share.eepw.com.cn/share/download/id/391491



關(guān)鍵詞: STM32U5 溫度傳感器 監測

評論


相關(guān)推薦

技術(shù)專(zhuān)區

国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>