唐秀梅
摘要:隨著人們生活水平的不斷提高,單片機控制無疑是人們追求的目標之一,它所給人帶來的方便也是不可否定的,其中數(shù)字溫度計就是一個典型的例子,但人們對它的要求越來越高,要為現(xiàn)代人工作、科研、生活、提供更好的更方便的設(shè)施就需要從數(shù)單片機技術(shù)入手,一切向著數(shù)字化控制,智能化控制方向發(fā)展。單片機在日用電子產(chǎn)品中的應(yīng)用越來越廣泛,溫度則是人們?nèi)粘I钪谐3P枰獪y量和控制的一個量。傳統(tǒng)的測溫元件有熱電偶和熱電阻,而它們測出的一般都是電壓,再轉(zhuǎn)換成對應(yīng)的溫度,需要比較多的外部硬件支持,電路復雜,軟件調(diào)試復雜,制作成本高。
關(guān)鍵詞:數(shù)字體溫計 設(shè)計
(一)數(shù)字溫度計特點
隨著單片機技術(shù)的不斷發(fā)展,單片機在日用電子產(chǎn)品中的應(yīng)用越來越廣泛,溫度傳感器DS18B20具有線性優(yōu)良、性能穩(wěn)定、靈敏度高、抗干擾能力強、使用方便等優(yōu)點,廣泛應(yīng)用于冰箱、空調(diào)器、糧倉等日常生活中溫度的測量和控制。傳統(tǒng)的溫度計有反應(yīng)速度慢、讀數(shù)麻煩、測量精度不高、誤差大等缺點。
(二)數(shù)字溫度計設(shè)計原理
體溫計的原理,體溫計是一種水銀溫度計。它的上部是一根玻璃管,下端是一個玻璃泡。在泡里和管的下端裝有純凈的水銀,管上標有溫度的刻度。由于人體溫度最高不超過42℃,最低不低于35℃,所以體溫表的刻度是35℃到42℃,每個小格代表0.1℃。
該數(shù)字溫度計利用DS18B20集成溫度傳感器及其接口電路完成溫度的測量并轉(zhuǎn)換成模擬電壓信號,經(jīng)由模數(shù)轉(zhuǎn)換器ADC0804轉(zhuǎn)換成單片機能夠處理的數(shù)字信號,然后送到單片機AT89C51中進行處理變換,最后將溫度值顯示在D4、D3、D2、D1共4位七段碼LED顯示器上。
第二 硬件實現(xiàn)
(一)系統(tǒng)選擇
DALLAS單線數(shù)字溫度傳感器DS18B20簡介:新的“一線器件”體積更小、適用電壓更寬、更經(jīng)濟,Dallas半導體公司的數(shù)字化溫度傳感器DS1820是世界上第一片支持“一線總線”接口的溫度傳感器。一線總線獨特且經(jīng)濟的特點,使用戶可輕松地組建傳感器網(wǎng)絡(luò)。DS18B20、DS1822“一線總線”數(shù)字化溫度傳感器,支持“一線總線”接口,測量溫度范圍為-55°C~+125°C,在-10~+85°C范圍內(nèi),精度為±0.5°C。DS1822的精度較差為± 2°C ?,F(xiàn)場溫度直接以“一線總線”的數(shù)字方式傳輸,大大提高了系統(tǒng)的抗干擾性。適合于惡劣環(huán)境的現(xiàn)場溫度測量。與前一代產(chǎn)品不同,新的產(chǎn)品支持3V~5.5V的電壓范圍,使系統(tǒng)設(shè)計更靈活、方便。而且新一代產(chǎn)品更便宜,體積更小。DS18B20可以程序設(shè)定9~12位的分辨率,精度為±0.5°C??蛇x更小的封裝方式,更寬的電壓適用范圍。分辨率設(shè)定及用戶設(shè)定的報警溫度存儲在EEPROM中,掉電后依然保存。DS18B20的性能是新一代產(chǎn)品中最好的!性能價格比也非常出色!DS1822與 DS18B20軟件兼容,是DS18B20的簡化版本。省略了存儲用戶定義報警溫度、分辨率參數(shù)的EEPROM,精度降低為±2°C,適用于對性能要求不高,成本控制嚴格的應(yīng)用,是經(jīng)濟型產(chǎn)品。繼“一線總線”的早期產(chǎn)品后,DS1820開辟了溫度傳感器技術(shù)的新概念。DS18B20和DS1822使電壓、特性及封裝有更多的選擇,讓我們可以構(gòu)建適合自己的經(jīng)濟的測溫系統(tǒng)。
(二)模塊電路詳細設(shè)計
1、電源
本系統(tǒng)以CPU為中心的供電,我們采用線性穩(wěn)壓電路,通過變壓器T對220V交流電壓進行降壓,降壓到7V左右,然后進整流、濾波后,有8V的直流電壓。最后通過LM7805進行穩(wěn)壓,給整個系統(tǒng)提供一個5V的直流壓。
2、溫度傳感器DS18B20
DS18B20內(nèi)部結(jié)構(gòu)主要由四部分組成:64位光刻ROM、溫度傳感器、非揮發(fā)的溫度報警觸發(fā)器TH和TL、配置寄存器。
DQ為數(shù)字信號輸入/輸出端;GND為電源地;VDD為外接供電電源輸入端(在寄生電源接線方式時接地)。
光刻ROM中的64位序列號是出廠前被光刻好的,它可以看作是該DS18B20的地址序列碼。64位光刻ROM的排列是:開始8位(28H)是產(chǎn)品類型標號,接著的48位是該DS18B20自身的序列號,最后8位是前面56位的循環(huán)冗余校驗碼(CRC=X8+X5+X4+1)。光刻ROM的作用是使每一個DS18B20都各不相同,這樣就可以實現(xiàn)一根總線上掛接多個DS18B20的目的。
DS18B20中的溫度傳感器可完成對溫度的測量,以12位轉(zhuǎn)化為例:用16位符號擴展的二進制補碼讀數(shù)形式提供,以0.0625℃/LSB形式表達,其中S為符號位。
DS18B20溫度傳感器的內(nèi)部存儲器包括一個高速暫存RAM和一個非易失性的可電擦除的E2RAM,后者存放高溫度和低溫度觸發(fā)器TH、TL和結(jié)構(gòu)寄存器。
暫存存儲器包含了8個連續(xù)字節(jié),前兩個字節(jié)是測得的溫度信息,第一個字節(jié)的內(nèi)容是溫度的低八位,第二個字節(jié)是溫度的高八位。第三個和第四個字節(jié)是TH、TL的易失性拷貝,第五個字節(jié)是結(jié)構(gòu)寄存器的易失性拷貝,這三個字節(jié)的內(nèi)容在每一次上電復位時被刷新。第六、七、八個字節(jié)用于內(nèi)部計算。第九個字節(jié)是冗余檢驗字節(jié)。
根據(jù)DS18B20的通訊協(xié)議,主機控制DS18B20完成溫度轉(zhuǎn)換必須經(jīng)過三個步驟:每一次讀寫之前都要對DS18B20進行復位,復位成功后發(fā)送一條ROM指令,最后發(fā)送RAM指令,這樣才能對DS18B20進行預定的操作。復位要求主CPU將數(shù)據(jù)線下拉500微秒,然后釋放,DS18B20收到信號后等待16~60微秒左右,后發(fā)出60~240微秒的存在低脈沖,主CPU收到此信號表示復位成功。
3、顯示電路
顯示用數(shù)碼管顯示電路,將采集到的數(shù)據(jù)直接送到數(shù)碼管上顯示,達到實時顯示的效果。用P1口作為段碼輸出,用P0.3、P0.4、P0.5、P0.6,作為位碼輸出。此數(shù)碼管采用共陽極四位一體,溫度顯示可以為四位,主要是便于電路升級。
4、按鍵
鍵盤處理,用單片機的P0.1、P0.2實現(xiàn),當按下按鍵,該端口為0,用單片機檢測該端口的值就能叛斷有無按鍵按下,當P0.1按下時,就實現(xiàn)溫度加1℃,當P0.2按下時,就實現(xiàn)溫度減1℃功能。
第四章 軟件設(shè)計
(一)七段碼LED溫度顯示電路
由發(fā)光二極管組成的七段碼LED顯示器用于顯示各種數(shù)字和字符。該數(shù)字溫度計的溫度顯示由4位七段碼LED顯示器組成,單片機以并行通信方式從P1.0~P1.7口輸出段碼和控制信號,通過7447TTL BCD譯碼器譯碼,用4個共陽極LED動態(tài)顯示溫度的各個數(shù)位。
(一)主程序框圖
在主程序中,系統(tǒng)上電自動復位以后首先設(shè)置堆棧,然后啟動ADC0804,開始轉(zhuǎn)換AD590測溫電路輸入的電信號,待數(shù)據(jù)轉(zhuǎn)換結(jié)束后讀入到累加器A,然后進行十進制數(shù)據(jù)轉(zhuǎn)換調(diào)整,輸出給顯示電路。
第四章 系統(tǒng)測試
系統(tǒng)調(diào)試以程序為主。硬件調(diào)試首先檢查電路的焊接是否正確,然后用萬用表測試或通電檢測。軟件調(diào)試以編程序并進行硬件的正確性檢驗。由于AD590與單片機采用串行數(shù)據(jù)傳送,因此,對AD590進行讀/寫編程時必須嚴格地保證讀/寫時序,否則將無法讀取測量結(jié)果。本程序采用單片機C語言編寫,用Keil C51編譯器編程調(diào)試。軟件調(diào)試到能顯示溫度值,而且在有溫度變化時(例如用手去接觸),顯示溫度能改變就基本完成本設(shè)計。
參考文獻:
[1]康華光.電子技術(shù)基礎(chǔ).北京:高等教育出版社,1999
[2]河小艇.電子系統(tǒng)設(shè)計.杭州:浙江大學出版社,2001