《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 基于DS1620和AT89C2051的數(shù)字溫度計的設(shè)計
基于DS1620和AT89C2051的數(shù)字溫度計的設(shè)計
摘要: DS1620是一片8引腳的片內(nèi)建有溫度測量并轉(zhuǎn)換為數(shù)字值的集成電路,,他集溫度傳感、溫度數(shù)據(jù)轉(zhuǎn)換與傳輸,、溫度控制等功能于一體,。本文所設(shè)計的數(shù)字溫度計測量精度高,、工作可靠、體積小,、成本低,,可擴展為溫度調(diào)節(jié)器。不足之處是由于DS1620測溫的遲滯性,,不宜做即時溫度測量
Abstract:
Key words :

    1 DS1620芯片介紹
  
  DS1620是一片8引腳的片內(nèi)建有溫度測量并轉(zhuǎn)換為數(shù)字值的集成電路,,他集溫度傳感、溫度數(shù)據(jù)轉(zhuǎn)換與傳輸,、溫度控制等功能于一體,。測溫范圍:-55~+125℃,精度為0.5℃,。該芯片非常容易與單片機連接,,實現(xiàn)溫度的測控應(yīng)用,單獨做溫度控制器使用時,,可不用外加其他輔助元件,。
   
  引腳功能及排列如圖1所示。

                  引腳功能及排列

  其中:RST,,CLK/CONV及DQ為三線串行通信線,;DQ為數(shù)據(jù)輸入輸出端。當RST保持高電平,,對應(yīng)CLK/CONV時鐘脈沖的上升沿處,,DQ可按位輸入各種控制指令及數(shù)據(jù),在CLK/CONV時鐘脈沖的下降沿處開始按位輸出9 B溫度值,分2個字節(jié)輸出,,最低位(LSB)在最先輸出,,先輸出的1個字節(jié)(8 B)除以2就是攝氏溫度值,后輸出的1個字節(jié)(僅1 B)為溫度的符號位,,是0為正

 

,,是1為負。RST為低電平時結(jié)束通信,,CLK/CONV保持低電平,,DQ呈現(xiàn)高阻態(tài),但芯片內(nèi)部在進行溫度的測量與數(shù)字轉(zhuǎn)換(即溫度值的更新),,這需要大約1 s的時間,。
  
  引腳THIGH為高溫臨界觸發(fā)輸出端,當所測溫度高于高溫臨界寄存器中設(shè)定的溫度TH時,,該引腳由低電平變?yōu)楦唠娖?,而溫度低于TH時又回到低電平;TLOW為低溫臨界觸發(fā)輸出端,,其電平變化與THIGH類似,;TCOM為高/低溫臨界組合觸發(fā)輸出端;他們都可作為溫度調(diào)節(jié)器的輸出端,,直接控制加熱或冷卻設(shè)備,。
  
  DS1620內(nèi)部有一個工作方式寄存器,如表1所示,。

 

      工作方式寄存器

  其中:DONE為溫度數(shù)據(jù)轉(zhuǎn)換位,,為0時表示正,在轉(zhuǎn)換過程中,,為1表示已轉(zhuǎn)換完畢,;THF:高溫標志位,當溫度高于或等于高溫臨界寄存器中的設(shè)定值TH時,,硬件對該位置位,,但硬件不能對該位清零;TLF:低溫標志位,,當溫度低于或等于設(shè)定值TL時,,硬件對該位置位,同樣,,硬件不能對該位清零,;CPU:CPU使用位,通過軟件對該位清零時,,若RST為低電平,,則可由CLK/CONV控制溫度數(shù)據(jù)的轉(zhuǎn)換,,通過軟件對該特定溫度轉(zhuǎn)換位,若通過軟件對該位置1,,則DS1620進行該時刻的溫度轉(zhuǎn)換,,并等待讀取,若該位被置0,,則DS1620將不停地進行溫度轉(zhuǎn)換,。
  
  DS1620的工作狀態(tài)都是由外部輸入的指令來控制的,具體的指令如下:
  
  AAH 讀取轉(zhuǎn)換好的溫度數(shù)據(jù),;從指令輸入后的第9個時鐘(亦稱移位)脈沖開始,,將輸出溫度寄存器中的數(shù)據(jù)。
    01H 給高溫臨界寄存器寫入TH數(shù)據(jù),。
    02H 給低溫臨界寄存器寫入TL數(shù)據(jù)。
    A1H 讀高溫臨界寄存器中的TH數(shù)據(jù),。
    A2H 讀低溫臨界寄存器中的TL數(shù)據(jù),。
    EEH 開始轉(zhuǎn)換溫度數(shù)據(jù)。
    22H 停止轉(zhuǎn)換溫度數(shù)據(jù),。
    0CH 寫工作方式寄存器,。
  ACH 寫工作方式寄存器。

    2 電路設(shè)計
  
  如圖2所示,,單片機P3.3~P3.5與DS1620按三線通信方式相連,,P1口輸出七段碼,P3.0~P3.2通過驅(qū)動三極管接到共陽數(shù)碼管的COM端,,3個按鍵在P3.7的配合下提供功能擴展,。

                 電路設(shè)計

    3 程序設(shè)計
  
  程序的流程圖如圖3所示,各程序模塊均為子程序及嵌套有子程序的調(diào)用,,其中讀,、寫DS1620模塊模塊為子程序,完成1個字節(jié)的溫度值或指令的讀寫,;按鍵服務(wù)模塊主要完成對高/低溫臨界寄存器中TH,、TL值的改寫。
  
  下面給出寫/讀DS1620,、配置DS1620,、開始轉(zhuǎn)換、讀取溫度等5個子程序的匯編語言程序,,其余模塊及程序不再贅述,。

    程序設(shè)計
程序設(shè)計
程序設(shè)計
程序設(shè)計
                                                               程序的流程圖

 

    4 結(jié) 語
   
  所設(shè)計的數(shù)字溫度計測量精度高、工作可靠,、體積小,、成本低,,可擴展為溫度調(diào)節(jié)器。不足之處是由于DS1620測溫的遲滯性,,不宜做即時溫度測量,。

 
此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載,。