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ù)輸入輸出端,。當(dāng)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ā)輸出端,,當(dāng)所測溫度高于高溫臨界寄存器中設(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:高溫標(biāo)志位,,當(dāng)溫度高于或等于高溫臨界寄存器中的設(shè)定值TH時,,硬件對該位置位,但硬件不能對該位清零,;TLF:低溫標(biāo)志位,,當(dāng)溫度低于或等于設(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的配合下提供功能擴展。
3 程序設(shè)計
程序的流程圖如圖3所示,,各程序模塊均為子程序及嵌套有子程序的調(diào)用,,其中讀、寫DS1620模塊模塊為子程序,,完成1個字節(jié)的溫度值或指令的讀寫,;按鍵服務(wù)模塊主要完成對高/低溫臨界寄存器中TH、TL值的改寫,。
下面給出寫/讀DS1620,、配置DS1620、開始轉(zhuǎn)換,、讀取溫度等5個子程序的匯編語言程序,,其余模塊及程序不再贅述。
4 結(jié) 語
所設(shè)計的數(shù)字溫度計測量精度高,、工作可靠,、體積小、成本低,,可擴展為溫度調(diào)節(jié)器,。不足之處是由于DS1620測溫的遲滯性,不宜做即時溫度測量,。