新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 一種基于單片機的多功能溫度控制器的設計

一種基于單片機的多功能溫度控制器的設計

作者: 時間:2010-04-09 來源:網(wǎng)絡 收藏

1.2 按鍵電路
采用2×3的小鍵盤,鍵盤的識別可以采用兩種方法:行掃描法和行反轉(zhuǎn)法。兩種方法都要注意消除按鍵的抖動。文中采用行掃描法并做成子程序,出口參數(shù)為按鍵的鍵值。定義鍵K1設置TH,K2設置TL,K3調(diào)高TH或TL,K4調(diào)低TH或TL,K5對TH或TL的數(shù)值進行確認。
1.3 溫度檢測電路
溫度檢測電路采用智能溫度傳感器DSl8820,它與相連只需要3線,減少了外部的硬件電路。DSl8820主要性能特點如下:
(1)測溫的范圍為-55~125℃,最大分辨率可以達到0.0625℃;
(2)電源電壓范圍為3.0~5.5V;
(3)供電模式:寄生供電和外部供電;
(4)封裝形式有兩種:3腳的TO-92封裝和8腳的SOIC封裝;
(5)可編程的溫度轉(zhuǎn)換分辨率,分辨率為9~12位(包括1位符號位),由配置寄存器決定具體位數(shù),配置寄存器的格式如表1所示。

本文引用地址:http://2s4d.com/article/173379.htm

其中RlR0是用來設定分辨率的,分辨率的定義如表2所示。


由表2可以看出,分辨率設定得越高,溫度轉(zhuǎn)換所需要的時間就越長,因此應根據(jù)實際應用的需要來選擇合適的分辨率。本文中選取12位分辨率,每隔1秒檢測一次溫度。12位分辨率的溫度數(shù)據(jù)值格式如下:

當S=0表示測得的溫度為正值,當S=l表示測得的溫度為負值。
1.3.1 DSl8820的存儲器結(jié)構(gòu)
DSl8820的存儲器有高速暫存RAM和非易失性電擦寫EEPROM。高速暫存RAM的內(nèi)容從低字節(jié)到高字節(jié)9個字節(jié)依次為:溫度LSB、溫度MSB、高溫限值字節(jié)TH、低溫限值字節(jié)TL、配置寄存器、保留、保留、保留,最后一個字節(jié)是前8個字節(jié)的CRC碼。EEPROM用來存儲TH和TL。
1.3.2 溫度數(shù)據(jù)的處理方法
從DSl8820讀出的兩個字節(jié)的二進制值溫度必須先轉(zhuǎn)換成十進制數(shù)值,然后才能將其ASCII碼送往LCDl602顯示。12位的分辨率,溫度是以0.0625步進的,由于兩個字節(jié)的溫度采用補碼表示,所以先判斷讀出溫度的最高位是0還是1,即判斷是正溫還是負溫,然后對其求補碼轉(zhuǎn)化成正溫,之后將高字節(jié)的低4位和低字節(jié)的高4位組成一個字節(jié),這個字節(jié)的二進制值不斷除以10得出的余數(shù)即為溫度值的個、十、百位值。若讀出的溫度數(shù)值是負數(shù),顯示處理時,在溫度數(shù)的前面人為顯示負號即可。對小數(shù)部分的溫度只需將低字節(jié)的低4位乘以0.0625,然后對乘積取其小數(shù)點后的一位數(shù)即可。



評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉