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

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

                  引腳功能及排列

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

 

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

 

      工作方式寄存器

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

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

                 電路設(shè)計(jì)

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

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

 

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

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