新聞中心

EEPW首頁 > 測試測量 > 設計應用 > 數(shù)字溫度測控芯片DS1620的應用

數(shù)字溫度測控芯片DS1620的應用

作者: 時間:2004-12-07 來源:網(wǎng)絡 收藏

摘要:是一種半導體溫度測控,9位溫度數(shù)據(jù)值,測溫范圍-55~+125℃,0.5℃分辨率。通過三線串行接口與CPU連接,可作為熱傳感器使用;用三個溫控觸發(fā)端控制加熱或制冷裝置,可用作熱繼電器。本文介紹它的功能和使用方法,并給出C51的源程序。

關鍵詞: 溫度傳感器 三線串行接口 熱繼電器

引 言

1 概 述

  是Dallas公司推出的器件。 2.7~ 5.0V供電電壓,測量溫度范圍為-55~+125℃,9位數(shù)字量表示溫度值,分辨率為0.5℃。在0~+70℃精確度為0.5℃, -40~0℃和+70~+85℃精確度為1℃,-55~-40℃和+85~ +125℃精確度為2℃。TH和TL寄存器中的溫度報警限設定值存放在非易失性存儲器中,掉電后不會丟失。通過三線串行接口,完成溫度值的讀取和TH、TL的設定。

2 引腳功能說明

  DS1620采用8腳DIP封裝或8腳SOIC封裝。引腳排列如圖1所示,引腳功能說明如表1所列。

表1 DS1620引腳功能說明

引 腳名 稱

功 能

1DQ三線制的數(shù)據(jù)輸入/輸出
2CLK/CONV三線制的時鐘輸入和標準轉換輸入
3RST三線制的復位輸入
4GND
5TCOM溫度高/低限觸發(fā)輸出
6TLOW溫度低限觸發(fā)輸出
7THIGH溫度高限觸發(fā)輸出
8VDD3~5V電源

3 溫度值數(shù)據(jù)格式

  DS1620的溫度值為9位數(shù)字量,數(shù)據(jù)用補碼表示,最低位表示0.5℃。幾個典型溫度的數(shù)字量如表2所列。通過三線傳送數(shù)據(jù)時,低位在前,高位在后。DS1620讀出或寫入的溫度數(shù)據(jù)值可以是9位的字(在第9位后將置為低電平),也可以作為兩個8位字節(jié)的16位字。這時高7位為無關位。這種方式在8位單片機中處理是比較方便的。

4 操作和控制

  控制/狀態(tài)寄存器用于決定DS1620在不同場合的操作方式,也指示溫度轉換時的狀態(tài)。控制/狀態(tài)寄存器的定義如下。

DONETHFTLFNVB10CPU1SHOT

DONE:溫度轉換完標志?!?”轉換完成,“0”轉換進行中。

THF:溫度過高標志。溫度高于或等于TH寄存器中的設定值時變?yōu)椤?”。當THF為“1”后,即使溫度降到TH以下,THF值也仍為“1”。可以通過寫入“0”或斷開電源來清除這個標志。

TLF:溫度過低標志。溫度低于或等于TL寄存器中的設定值時變?yōu)椤?”。當TLF為“1”后,即使溫度升高到TL以上,TLF值也仍為“1”??梢酝ㄟ^寫入“0”或斷開電源來清除這個標志。

NVB:非易失性存儲器忙標志。“1”表示正在向存儲器中寫入數(shù)據(jù);“0”表示存儲器不忙。寫入存儲器要10ms時間。

CPU:CPU使用標志?!?”表示使用CPU,DS1620和CPU通過三線制進行數(shù)據(jù)傳輸;“0”表示不使用CPU,當不使用CPU時, 接低電平,CLK/作為轉換控制使用。這一位存放在非易失存儲器中,允許至少 50 000次寫操作。

1SHOT:一次突發(fā)模式?!?”時按轉換協(xié)議進行一次轉換;“0”時連續(xù)轉換。這一位存放在非易失性存儲器中,允許至少50 000次寫操作。

DS1620有兩種操作模式。

表2 DS1620的幾個典型溫度和數(shù)字量對應關系

溫度/℃數(shù)字輸出(二進制)數(shù)字輸出(十六進制)
+125 0 1111101000FAH
+25 0 00110032H
+0.5 0 00000000001H
0 0 00000000000H
-0.5 1 1111111101FFH
-25 1 1100111001CEH
-55 1 10010010192H

(1)單獨工作模式

  在這種工作模式下,DS1620作為熱繼電器使用,常用連續(xù)轉換方式,可在沒有CPU參與下工作。預先必須寫入控制寄存器操作模式和TH、TL寄存器的溫度設定值,CLK/用作轉換開始控制端。要注意:這種工作模式下,控制/狀態(tài)寄存器的CPU標志位必須設為“0”。為了使CLK/作轉換控制,必須為低電平。如果CLK/被拉低,且在10ms以內(nèi)置高,則產(chǎn)生一次轉換;如果CLK/保持低,則DS1620連續(xù)進行轉換。當CPU為“0”時,轉換由CLK/控制,而不受1SHOT控制位的限制。

  DS1620有三個溫度觸發(fā)控制端。當DS1620的溫度高于或等于TH寄存器設定值時,THIGH輸出為高電平;當溫度低于或等于TL寄存器設定值時,TLOW輸出高電平;當溫度高于TH寄存器設定值時,TCOM輸出為高電平,直到溫度下降到TL寄存器設定值以下時才會變?yōu)榈碗娖?。三個溫度觸發(fā)控制端的輸出特性如圖2所示。

(2)三線串行通信模式

  三線制由三個信號線組成:(復位)、CLK(時鐘)和DQ(數(shù)據(jù))。數(shù)據(jù)傳輸在由低電平變?yōu)楦唠娖胶箝_始。在數(shù)據(jù)傳輸過程中,使變?yōu)榈碗娖綍K止數(shù)據(jù)傳輸。時鐘由一序列上升沿和下降沿組成。DS1620輸入、輸出數(shù)據(jù)時,都必須是上升沿數(shù)據(jù)有效。讀寫數(shù)據(jù)時低位在前,高位在后。DS1620的三線制操作時序如圖3所示。

  從時序圖可知,三線制的操作大部分是命令字在前,數(shù)據(jù)在后(部分命令后不需要數(shù)據(jù))。下面是DS1620的幾個主要命令字:

開始轉換[EEh] 開始轉換溫度,后面不需要有其它

數(shù)據(jù);

讀溫度[AAh] 讀出最后一次溫度轉換的結果,后

面的9個脈沖輸出9位溫度值;

讀配置寄存器[0Ch] 命令后的連續(xù)8個脈沖讀出配

置寄存器的內(nèi)容;

寫配置寄存器[ACh] 命令后的連續(xù)8個脈沖寫入配

置寄存器新的內(nèi)容;

寫TH寄存器[01h] 命令后的連續(xù)9個脈沖寫入TH

寄存器9位溫度高限設定值;

寫TL寄存器[02h] 命令后的連續(xù)9個脈沖寫入TL

寄存器9位溫度低限設定值;

讀TH寄存器[A1h] 命令后的連續(xù)9個脈沖讀出TH

寄存器9位溫度高限設定值;

讀TL寄存器[A2h] 命令后的連續(xù)9個脈沖讀出TL

寄存器9位溫度低限設定值。

5 應用實例

5.1 無CPU參與下的應用

  DS1620有三個溫度觸發(fā)輸出,都可作為溫控端使用,用于控制加熱或制冷裝置。在設置控制/狀態(tài)寄存器以及TH和TL寄存器內(nèi)容后,DS1620可在脫離CPU的情況下單獨作溫控器使用。圖4是用THIGH作控制的應用實例。當環(huán)境溫度高于TH寄存器的溫度設定值后,THIGH輸出為高,2N7000導通,啟動風扇散熱;當環(huán)境溫度低于TH寄存器的設定值后,THIGH輸出為低電平,2N7000截止,風扇停轉。

5.2 有CPU參與下的應用

(1)硬件連線

  圖5是用AT89C51單片機作CPU來操作DS1620的。單片機的P1口連接DS1620的三線通信接口:P1.1接DQ,P1.2接CLK/,P1.3接。

(2)程序設計

  程序采用C51編制,在KEIL C V6.20下調(diào)試通過。本刊網(wǎng)絡補充版(http://www.dpj.com.cn)中,給出操作DS1620的幾個主要子函數(shù)。DS1620SetConf(unsigned char val)用于配置控制/狀態(tài)寄存器的內(nèi)容;用DS1620startConv(void)開始進行溫度轉換;用DS1620ReadConf(void)返回控制/狀態(tài)寄存器內(nèi)容;可查尋DONE位來判斷是否轉換完成,轉換完成后用DS1620read(void)讀出轉換的溫度值。也可采用軟件延時方式,在開始轉換后延時1s以上,再讀轉換的溫度數(shù)據(jù)值。

6 小 結

  DS1620的外圍接線簡單,使用靈活。使用時請注意它的測量范圍及精度能否滿足要求。用作熱繼電器使用時必須寫入控制寄存器操作模式和TH、TL寄存器的溫度設定值。



評論


相關推薦

技術專區(qū)

關閉