DS1620數(shù)字溫度計和恒溫器提供9位溫度讀數(shù),指示器件溫度。該溫度以 0.5°C 為增量表示,提供 0.5°C 分辨率。在0°C至+70°C范圍內(nèi),該器件的精度也高達(dá)0.5°C。在-40°C至0°C范圍以及+70°C至+85°C范圍內(nèi),DS1620的精度在1°C以內(nèi)。 該器件將溫度范圍進(jìn)一步擴(kuò)展至-55°C至-40°C和+85°C至+125°C,精度在2°C以內(nèi)。
就溫度傳感器而言,這些精度非常好,但在某些情況下,0.5°C的分辨率是不夠的。在絕對溫度不如溫度趨勢那么重要的比例控制系統(tǒng)中,可能需要更高的分辨率。
對DS1620使用一些未記錄的測試模式,用戶可以在DS1620和一些架空軟件上提供0.1°C的分辨率。雖然這不會提高器件的精度,但它可以通過具有更精細(xì)的溫度分辨率來更好地控制某些系統(tǒng)。
操作測量溫度
DS1620通過使用板載專有的溫度測量技術(shù)來測量溫度。溫度測量電路的框圖如圖1所示。
DS1620通過計算低溫度系數(shù)振蕩器在由高溫度系數(shù)振蕩器確定的柵極周期內(nèi)經(jīng)過的時鐘周期數(shù)來測量溫度。計數(shù)器預(yù)設(shè)了對應(yīng)于-55°C的基數(shù)。 如果計數(shù)器在柵極周期結(jié)束前達(dá)到零,則溫度寄存器(也預(yù)設(shè)為-55°C值)將遞增,表示溫度高于-55°C。
同時,計數(shù)器被預(yù)設(shè)為由斜率累加器電路確定的值。需要該電路來補償振蕩器在整個溫度范圍內(nèi)的拋物線行為。然后再次計時計數(shù)器,直到它達(dá)到零。如果門期仍未完成,則重復(fù)此過程。
斜率累加器用于補償振蕩器隨溫度變化的非線性行為,從而產(chǎn)生高分辨率的溫度測量值。這是通過更改計數(shù)器在溫度中每個增量度數(shù)所需的計數(shù)數(shù)來完成的。因此,為了獲得所需的分辨率,必須知道計數(shù)器的值和給定溫度下每攝氏度的計數(shù)數(shù)(斜率累加器的值)。
在內(nèi)部,該計算在DS1620內(nèi)部完成,以提供0.5°C分辨率。注意,DS1620的溫度以1/2°C LSB表示,9位格式如下:
通過讀取溫度并從讀取值截斷0.5°C位(LSB)可以獲得更高的分辨率。此值為 TEMP_READ。然后可以讀取計數(shù)器中留下的值。此值是門期結(jié)束后剩余的計數(shù) (COUNT_REMAIN)。通過將斜率累加器的值加載到計數(shù)寄存器中,可以讀取該值,從而在該溫度下產(chǎn)生每攝氏度(COUNT_PER_C)的計數(shù)數(shù)。然后,用戶可以使用以下內(nèi)容計算實際溫度:
圖1.溫度測量電路
使用DS1620獲得0.1°C分辨率
以下步驟描述了從DS1620獲得0.1°C分辨率所需的過程。如果DS1620尚未處于ONESHOT模式,則發(fā)送帶有適當(dāng)寫入數(shù)據(jù)的WRITE CONFIG協(xié)議。有關(guān)該協(xié)議和模式設(shè)置的更多信息,請參見DS1620數(shù)據(jù)資料。
設(shè)置ONESHOT和CPU模式的協(xié)議:
0C 03(十六進(jìn)制)
僅設(shè)置單脈沖模式的協(xié)議:
0C 01(十六進(jìn)制)
上面列出的第一種協(xié)議通常是使用計算機(jī)控制DS1620時所需的模式設(shè)置。
向零件發(fā)出“開始轉(zhuǎn)換”命令(EE 十六進(jìn)制)。
發(fā)出READ CONFIG命令(交流十六進(jìn)制)從DS1620讀取配置寄存器數(shù)據(jù)。重復(fù)此命令,直到寄存器的最高有效位(即 DONE 位)為“1”。這意味著溫度轉(zhuǎn)換已完成。使用 C 語言命名法對該條件的邏輯描述是:
(config & 0x80) = = 0x80
發(fā)出讀取溫度命令,如數(shù)據(jù)手冊中所述,該命令為 AA 十六進(jìn)制。從讀取值中截斷 1/2 度位,并將其轉(zhuǎn)換為有符號整數(shù)。修改后的值TEMP_READ。
發(fā)出讀取計數(shù)器命令,該命令未記錄在數(shù)據(jù)手冊中。該協(xié)議的工作方式與讀取恒溫器設(shè)置的協(xié)議相同。首先,發(fā)送協(xié)議,即 A0 十六進(jìn)制。然后從部件中讀回一個 9 位值。此值為 COUNT_REMAIN。
發(fā)出負(fù)載斜率命令,該命令也沒有記錄在數(shù)據(jù)手冊中。該協(xié)議為 41 十六進(jìn)制,不需要讀取或?qū)懭霐?shù)據(jù)。此命令將斜率值加載到計數(shù)器中。
再次發(fā)出讀取計數(shù)器命令,如上面的步驟 5 中所述。讀取的值為 COUNT_PER_C。
使用以下公式計算實際溫度,再次使用 C 命名法:
溫度=TEMP_READ - 0.25
+ (COUNT_PER_C - COUNT_REMAIN) /
COUNT_PER_C
根據(jù)需要重復(fù)步驟 2 到 8。
審核編輯:郭婷
-
傳感器
+關(guān)注
關(guān)注
2551文章
51099瀏覽量
753606 -
振蕩器
+關(guān)注
關(guān)注
28文章
3832瀏覽量
139094 -
計數(shù)器
+關(guān)注
關(guān)注
32文章
2256瀏覽量
94575
發(fā)布評論請先 登錄
相關(guān)推薦
評論