1.1引言
我國(guó)作為熱水器生產(chǎn)的大國(guó),近年來(lái)熱水器的發(fā)展十分迅速,而熱水器主要有三個(gè)研究方向:太陽(yáng)能,燃?xì)馐脚c電熱式。近年來(lái)因?yàn)閱纹瑱C(jī)技術(shù)的發(fā)展,傳感器技術(shù)的漸漸成熟,電熱水器的數(shù)字化與精確控制已經(jīng)變成可能。
作為一種需要在浴室,洗手間與廚房中使用的電器,這種電熱水器采用水電分離的控制方式,即采用小電流低電壓的控制電路來(lái)控制高電壓大電流的加熱電路,一般情況下,使用十分安全。并且在安全可靠的基礎(chǔ)上,這種熱水器還提供清楚的溫度顯示與方便的溫度調(diào)節(jié)裝置,所以在目前的市場(chǎng)上十分受到歡迎。
1.2選題背景與意義
本文對(duì)電熱水器的控制系統(tǒng)進(jìn)行可研究,具體研究的意義如下:
1) 隨著傳感器測(cè)量技術(shù)的漸漸成熟,這種技術(shù)被廣泛的運(yùn)用在了在傳統(tǒng)測(cè)溫方式不便于溫度測(cè)量的場(chǎng)合,而且傳感器作為測(cè)量元件其相較于傳統(tǒng)測(cè)溫系統(tǒng),測(cè)量精度與可靠性得到了進(jìn)一步的提升,這一技術(shù)在當(dāng)時(shí)與以后的時(shí)間里得到了發(fā)展與完善,迅速的顯示出來(lái)其對(duì)于傳統(tǒng)的物理式的溫度測(cè)量系統(tǒng)的優(yōu)越性。[1]
2) 在這一系統(tǒng)中(溫度采集與控制),我們要求對(duì)溫度進(jìn)行實(shí)時(shí)控制,單片機(jī)具有極強(qiáng)的處理能力,將其運(yùn)用在溫度控制系統(tǒng)中就具備了傳統(tǒng)的控制電路所不具有的實(shí)時(shí)控制能力,隨著單片機(jī)技術(shù)的發(fā)展成熟以及周邊元件的開(kāi)發(fā),其控制方式變得越來(lái)越簡(jiǎn)單,并且其相較于傳統(tǒng)控制電路,可以大幅度的提高溫度控制的精度,從而達(dá)到更高的技術(shù)要求。
3)單片機(jī)由于體積小重量輕、價(jià)格便宜、功耗低,控制能力強(qiáng)及運(yùn)算速度快等特點(diǎn),因而采用其作為主控芯片,使整個(gè)系統(tǒng)設(shè)計(jì)簡(jiǎn)單易行,成本低廉,使用方便。
4)就目前來(lái)看,隨著天然氣價(jià)格上漲以及高層住房的普及,燃?xì)馐綗崴髋c太陽(yáng)能式熱水器因?yàn)槠渥陨淼娜毕荻ナ袌?chǎng)占有率,而電熱水器由于其自身不會(huì)受到這種限制,并且電熱水器由于其小巧的外形、快速的加熱速度、節(jié)能的設(shè)計(jì)、可靠地安全性等特點(diǎn)所以在今后的熱水器市場(chǎng)上必將作為一種主流熱水器出現(xiàn)。
所以選取電熱水器的控制系統(tǒng)作為此次的研究課題是具有十分重要的意義的。
1.3研究現(xiàn)狀
電熱水器在中國(guó)的歷史已經(jīng)有10多年了,期間也經(jīng)歷了數(shù)次起落的過(guò)程,在上個(gè)世紀(jì)的最后幾年,隨著國(guó)外品牌的進(jìn)入和國(guó)內(nèi)一些大家電廠的目光轉(zhuǎn)向電熱水器,儲(chǔ)水式電熱水器能適應(yīng)任何天氣變化,普通家庭可直接安裝使用,長(zhǎng)時(shí)間通電可以大流量供熱水。使用時(shí)不產(chǎn)生廢氣,既安全又衛(wèi)生。目前市場(chǎng)上銷售的電熱水器多數(shù)還帶有防觸電裝置。干凈衛(wèi)生,不必分室安裝,調(diào)溫方便。隨著技術(shù)的成熟,今后將朝著保溫層整體發(fā)泡技術(shù)、溫控器置入內(nèi)膽、加熱管下潛式設(shè)計(jì)、節(jié)能免更換幾個(gè)方面發(fā)展。
熱水器是一種可供浴室,洗手間及廚房使用的家用電器。據(jù)國(guó)務(wù)院發(fā)展研究中心市場(chǎng)經(jīng)濟(jì)研究所統(tǒng)計(jì)數(shù)據(jù)表明:近年來(lái)我國(guó)熱水器的銷量每年以 25%的速度上升,在未來(lái)五年內(nèi),銷售額每年可達(dá)近500億以上。眾所周知,燃?xì)鉄崴饕蚱浒踩[患及越來(lái)越高的使用成本正漸漸淡出熱水器市場(chǎng),而太陽(yáng)能熱水器也因其嚴(yán)格受天氣氣候及安裝條件影響而很難占據(jù)更大的市場(chǎng)份額,所以電熱水器迅速崛起而不斷壯大。為了滿足人們對(duì)現(xiàn)代電器的智能化的要求,利用目前電子技術(shù)的最新成果改善電熱水器的性能已經(jīng)完全可能和必要。本課題將以單片機(jī)為控制核心,實(shí)現(xiàn)對(duì)熱水器的自動(dòng)控制,設(shè)計(jì)出一款具有自動(dòng)化、智能化、易于操作、控制精度高、性價(jià)比高的電熱水器控制系統(tǒng)。
1.4本文研究?jī)?nèi)容
1)本文所研究的電熱水器控制系統(tǒng)由7個(gè)部分組成:?jiǎn)纹瑱C(jī)以及外部電路、電源電路、按鍵輸入電路、LED數(shù)碼管及指示燈電路、報(bào)警電路、加熱控制電路和溫度采集電路。
2)作為最重要的主控芯片,我們選用51系列單片機(jī)作為核心來(lái)進(jìn)行此次的設(shè)計(jì)。單片機(jī)作為微型計(jì)算機(jī)的一種,是嵌入式微機(jī)系統(tǒng),是作為其他系統(tǒng)的組成部分使用的,在物理結(jié)構(gòu)上嵌于其它系統(tǒng)之中,英文為Embedded Systems。嵌入式系統(tǒng)將計(jì)算機(jī)硬件和軟件結(jié)合起來(lái),構(gòu)成一個(gè)專門的計(jì)算裝置,實(shí)現(xiàn)特定的功能。它是一個(gè)大系統(tǒng)或大的電子設(shè)備中的一部分,工作在一個(gè)與外界發(fā)生交互并受時(shí)間約束的環(huán)境中,在沒(méi)有人工干預(yù)的情況下進(jìn)行實(shí)時(shí)控制。自從20世紀(jì)70年代以來(lái),單片機(jī)經(jīng)歷了初級(jí)、發(fā)展、高速發(fā)展三個(gè)階段。單片機(jī)性能不斷地完善,性能價(jià)格比顯著提高,種類和型號(hào)快速增加。從性能和用途上看,單片機(jī)正朝著面向多層次用戶的多品種多規(guī)格方向發(fā)展,哪一個(gè)應(yīng)用領(lǐng)域前景廣闊,就有這個(gè)領(lǐng)域的特殊單片機(jī)出現(xiàn)。近幾年來(lái),單片機(jī)以其集成度和性價(jià)比高、體積小等優(yōu)點(diǎn),在工業(yè)自動(dòng)化、過(guò)程控制、數(shù)字儀器儀表、通信系統(tǒng)以及家用電器產(chǎn)品中有著不可替代的作用。
3)220V交流電加熱裝置的通斷由繼電器控制,其中繼電器中的保險(xiǎn)絲會(huì)在溫度過(guò)高的情況下會(huì)熔斷,防止加熱管干燒,并且在單片機(jī)上還加上發(fā)光二極管顯示加熱電路的工作情況。
1.5本文結(jié)構(gòu)
本文以對(duì)單片機(jī)的研究作為基礎(chǔ),對(duì)DS18B20及單片機(jī)控制顯示,輸入輸出等方面進(jìn)行了研究,全文分為6章,各章內(nèi)容如下:
第一章主要介紹了電熱水器控制系統(tǒng)的基本概念、特點(diǎn)研究現(xiàn)狀,闡述了電熱水器的研究背景以及研究意義,概括的闡述了本次設(shè)計(jì)的主要內(nèi)容。
第二章表明了本次設(shè)計(jì)的技術(shù)指標(biāo)要求,主要介紹了采用的幾個(gè)設(shè)計(jì)方案與各自的優(yōu)缺點(diǎn),并在最后表明了本次設(shè)計(jì)最終所采用的方案。
第三章闡述所選擇的幾個(gè)重要元件的特點(diǎn)與性能第四章主要介紹了電熱水器控制系統(tǒng)的硬件電路的設(shè)計(jì),主要介紹了各模塊的設(shè)計(jì)方案。
第四章對(duì)系統(tǒng)的硬件模塊的設(shè)計(jì)進(jìn)行闡述,對(duì)各硬件的原理及主要參數(shù)進(jìn)行了描述。
第五章對(duì)系統(tǒng)的軟件設(shè)計(jì)進(jìn)行闡述,以流程圖為線索對(duì)各個(gè)模塊的軟件程序的設(shè)計(jì)方案進(jìn)行了介紹。
第六章總結(jié)了全文的研究工作,給出了存在的問(wèn)題與進(jìn)一步的研究方向。
第二章 電熱水器控制系統(tǒng)設(shè)計(jì)方案
2.1系統(tǒng)功能說(shuō)明
本設(shè)計(jì)采用AT89S52單片機(jī)作為主控芯片,利用數(shù)字式溫度傳感器DS18B20作為溫度采集裝置采集溫度,將溫度信號(hào)傳送給單片機(jī)后通過(guò)一片液晶顯示屏顯示出來(lái)。
系統(tǒng)工作的溫度可以通過(guò)電路板上的按鍵自主進(jìn)行設(shè)定。
系統(tǒng)采用了一個(gè)繼電器,用單片機(jī)為主的控制系統(tǒng)控制繼電器觸電的吸合,來(lái)控制交流電加熱電路,達(dá)到以弱電控制強(qiáng)電的目的。
系統(tǒng)必須設(shè)置溫度報(bào)警系統(tǒng),即達(dá)到設(shè)定溫度的上限時(shí)揚(yáng)聲器報(bào)警,系統(tǒng)自動(dòng)斷電,當(dāng)溫度恢復(fù)時(shí),系統(tǒng)重新恢復(fù)工作。
2.2系統(tǒng)主要實(shí)現(xiàn)功能
系統(tǒng)主要功能如下:
1)測(cè)量熱水器內(nèi)的溫度,并通過(guò)顯示屏實(shí)時(shí)顯示溫度值,顯示范圍為0℃~70℃。
2)正常狀態(tài)下顯示系統(tǒng)時(shí)鐘。
3)可手動(dòng)設(shè)定時(shí)鐘時(shí)間即對(duì)時(shí)鐘進(jìn)行校準(zhǔn)。
4)可以人工設(shè)定熱水器內(nèi)的燒水溫度,范圍在20℃~70℃之間,也可以無(wú)需設(shè)定,打開(kāi)后自動(dòng)燒水,溫度上限為70℃。
5)具備定時(shí)功能,限定燒水時(shí)間。
6)可以立即開(kāi)機(jī)或在24小時(shí)內(nèi)任意設(shè)定開(kāi)機(jī)時(shí)間。
7)當(dāng)熱水器內(nèi)沒(méi)有水時(shí),有報(bào)警提示,并開(kāi)關(guān)自動(dòng)關(guān)閉,即有防止干燒功能。
8)要求熱水器有一定的抗干擾的功能。
2.3系統(tǒng)整體設(shè)計(jì)方案
電熱水器控制系統(tǒng)的整體設(shè)計(jì)方案包括硬件設(shè)計(jì)與軟件設(shè)計(jì)方案,硬件方案主要是指以單片機(jī)為核心,包括外接的溫度采集電路,實(shí)時(shí)時(shí)鐘電路,鍵盤,熱水器加熱開(kāi)關(guān),液晶顯示電路,報(bào)警電路以及復(fù)位電路。具體硬件框圖如圖2.1所示
1.002.jpg (21.47 KB, 下載次數(shù): 228)
下載附件
2017-6-9 22:07 上傳
1.003.jpg (2.15 KB, 下載次數(shù): 211)
下載附件
2017-6-9 22:07 上傳
2.4方案論證
按照前面的課題要求,我們首先確定運(yùn)用單片機(jī)AT89S52作為本次設(shè)計(jì)的核心部件。
在溫度采集方面有多種選擇,常見(jiàn)的溫度傳感器分為以下幾種:熱敏電阻式溫度傳感器、熱電阻式溫度傳感器、熱電偶式溫度傳感器、模擬集成溫度傳感器、智能溫度傳感器。本次設(shè)計(jì)原本選擇的是pt1000鉑電阻溫度傳感器,其作為高精度的溫度敏感元件,具有測(cè)溫范圍大,測(cè)溫精度高,穩(wěn)定性好,示值復(fù)現(xiàn)性高與耐氧化等特點(diǎn),常被用作0℃~926℃溫度區(qū)間內(nèi)的標(biāo)準(zhǔn)溫度計(jì),其特性曲線為:-200°C~0°C時(shí),Rt=R0[1+At+Bt2+c(t-100)t3];0°C~650°C時(shí),Rt=R0[1+At+Bt2]。(Rt為溫度為t°C時(shí)熱電阻的阻值,R0為0°C時(shí)的阻值,A、B、C為實(shí)驗(yàn)測(cè)定的常數(shù),A=3.90802×10-2,B=5.802×10-7,C=-4.22×10-7)本系統(tǒng)使用的R0為1000Ω。而要將pt1000作為本次設(shè)計(jì)的元件,還需要語(yǔ)氣配套的傳感器測(cè)量電路與放大電路兩部分,具體電路如圖2.2所示。[12]
但是在實(shí)際購(gòu)買時(shí)發(fā)現(xiàn)pt1000電阻由于價(jià)格過(guò)高,所以在最終設(shè)計(jì)中并沒(méi)有采用pt1000作為測(cè)溫元件來(lái)使用,同時(shí),在同組同學(xué)推薦下采用了另一種集成式溫度傳感器DS18B20作為測(cè)溫元件,DS18B20雖然測(cè)溫范圍比pt1000小,但是在滿足本設(shè)計(jì)要求的基礎(chǔ)上,其價(jià)格不到pt1000的一半,并且其硬件電路由于舍去了普通傳感器所需附帶的A/D電路的設(shè)計(jì),所以其硬件電路的設(shè)計(jì)更加簡(jiǎn)單,所以采用了DS18B20作為最終設(shè)計(jì)中的測(cè)溫元件。[11]
1.004.jpg (2.37 KB, 下載次數(shù): 196)
下載附件
2017-6-9 22:07 上傳
1.005.jpg (26.4 KB, 下載次數(shù): 167)
下載附件
2017-6-9 22:07 上傳
本次設(shè)計(jì)的要求是選擇51單片機(jī)作為核心的處理器,但是市場(chǎng)上做51單片機(jī)的廠商有很多家,其中比較著名的有STC公司、MICROCHIP公司、德州儀器公司、Intel公司、ATMEL公司、Philips公司、Siemens公司。[9]
其中STC公司的STC單片機(jī)主要是基于8051內(nèi)核,是新一代增強(qiáng)型單片機(jī),指令代碼完全兼容傳統(tǒng)8051,速度快8~12倍,帶ADC,4路PWM,雙串口,有全球唯一ID號(hào),加密性好,抗干擾強(qiáng)。
還有MICROCHIP公司的PIC單片機(jī),其突出的特點(diǎn)是體積小,功耗低,精簡(jiǎn)指令集,抗干擾性好,可靠性高,有較強(qiáng)的模擬接口,代碼保密性好,大部分芯片有其兼容的FLASH程序存儲(chǔ)器的芯片.
PHILIPS公司的PHLIPIS 51LPC系列單片機(jī)是基于80C51內(nèi)核的單片機(jī),嵌入了掉電檢測(cè)、模擬以及片內(nèi)RC振蕩器等功能,這使51LPC在高集成度、低成本、低功耗的應(yīng)用設(shè)計(jì)中可以滿足多方面的性能要求。
ATMEl公司的8位單片機(jī)有AT89、AT90兩個(gè)系列,AT89系列是8位Flash單片機(jī),與8051系列單片機(jī)相兼容,靜態(tài)時(shí)鐘模式;AT90系列單片機(jī)是增強(qiáng)RISC結(jié)構(gòu)、全靜態(tài)工作方式、內(nèi)載在線可編程Flash的單片機(jī),也叫AVR單片機(jī)。
而作為第一次使用單片機(jī)做獨(dú)立設(shè)計(jì),我選用的是ATMEL公司的AT89S52單片機(jī),AT89S52是一種低功耗、高性能CMOS8位微控制器,具有8K 在系統(tǒng)可編程Flash 儲(chǔ)存器。使用Atmel 公司高密度非易失性儲(chǔ)存器技術(shù)制造,與工業(yè)80C51 產(chǎn)品指令和引腳完全兼容。片上Flash允許程序編程器在系統(tǒng)可編程,亦適于常規(guī)編程器。在單芯片上,擁有靈巧的8 位CPU 和在系統(tǒng)可編程Flash,使得AT89S52在眾多嵌入式控制應(yīng)用系統(tǒng)中得到廣泛應(yīng)用。
眾所周知,單片機(jī)的程序?qū)懭脒^(guò)程不是一帆風(fēng)順的,其常常需要多次的寫入與調(diào)試的過(guò)程,這里采用AT89S52的優(yōu)點(diǎn)就是AT89S52額外添加了8k在系統(tǒng)可編程(即ISP)Flash存儲(chǔ)器,特意設(shè)計(jì)為方便在線編程,使得其下載線電路簡(jiǎn)單,且可實(shí)現(xiàn)并行和或者串行模式的在線編程,使得每一次的程序下載與調(diào)試不必將單片機(jī)從PCB板上拔下,這樣不僅使程序調(diào)試變得更加方便,其次還會(huì)大大延長(zhǎng)單片機(jī)與PCB板的壽命。
由于本次設(shè)計(jì)需要有定時(shí)開(kāi)關(guān)機(jī)的功能,而單片機(jī)其內(nèi)部時(shí)鐘只能作為其內(nèi)部程序運(yùn)行的基準(zhǔn)而不能滿足設(shè)計(jì)的要求,所以外接了一個(gè)時(shí)鐘芯片來(lái)滿足本次設(shè)計(jì)的要求。[10]
市面上的主流的時(shí)鐘芯片有DS1302、 DS1307、PCF8485、SB2068等等。這些芯片結(jié)構(gòu)簡(jiǎn)單,價(jià)格低廉,而實(shí)時(shí)時(shí)鐘電路DS1302是DALLAS公司的一種具有涓細(xì)電流充電能力的電路,主要特點(diǎn)是采用串行數(shù)據(jù)傳輸,可為掉電保護(hù)電源提供可編程的充電功能,并且可以關(guān)閉充電功能。采用普通32.768kHz晶振。
在顯示方面采用一個(gè)液晶顯示屏來(lái)顯示主要的參數(shù),液晶顯示屏相對(duì)于LED數(shù)碼管雖然編程方面更加繁瑣,但是相對(duì)的其還具有更多的優(yōu)點(diǎn),其除了可以順利的顯示數(shù)字之外,還可以對(duì)顯示的數(shù)字進(jìn)行簡(jiǎn)單的注釋,使得人機(jī)操作界面變得更加友好,其次在有關(guān)網(wǎng)站上也可以順利的查找到有關(guān)DS1302的信號(hào)顯示程序,本次顯示界面除了有溫度的顯示還需要有時(shí)間的顯示,定時(shí)操作信號(hào)的顯示,采用LCD顯示屏使操作顯得更加方便。[6]
在鍵盤的選擇上,有兩種選擇:一是采用獨(dú)立式按鍵鍵盤,第二種是采用矩陣式鍵盤。矩陣式一般鍵盤采用4*4式鍵盤,而本次設(shè)計(jì)中并不需要如此多的功能按鍵,所以本次設(shè)計(jì),選擇了獨(dú)立式按鍵,本次總共使用了6個(gè)按鍵。其中按鍵1的功能是系統(tǒng)的復(fù)位,按鍵2的功能是實(shí)現(xiàn)實(shí)時(shí)時(shí)鐘的時(shí)間校準(zhǔn)功能,按鍵3實(shí)現(xiàn)的功能是實(shí)現(xiàn)燒水溫度的設(shè)置功能,按鍵4實(shí)現(xiàn)的功能是燒水定時(shí)功能的設(shè)置,按鍵5與按鍵6分別是“+”“—”功能鍵。
然后本次設(shè)計(jì)中還加入了一個(gè)發(fā)光二極管與蜂鳴器。
發(fā)光二極管用來(lái)顯示繼電器的閉合狀況,使得加熱電路的通斷能夠被更直接的觀察。
而加入蜂鳴器的作用是在進(jìn)行某項(xiàng)操作時(shí)進(jìn)行指示作用,還有在達(dá)到燒水溫度或者定時(shí)時(shí)間到的時(shí)候起到報(bào)警作用。
第三章 主要元件介紹3.1單片機(jī)系統(tǒng)模塊介紹
AT89S52是一種低功耗、高性能CMOS 8位微控制器,具有8K在線可編程Flash 存儲(chǔ)器,使用Atmel公司高密度非易失性存儲(chǔ)器技術(shù)制造,與工業(yè)80C51 產(chǎn)品指令和引腳完全兼容。片上Flash允許程序存儲(chǔ)器在線可編程,亦適于常規(guī)編程器。在一個(gè)芯片上,擁有靈巧的8 位CPU 和在線可編程Flash,使得AT89S52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。[1]
AT89S52具有以下標(biāo)準(zhǔn)功能:8K字節(jié)的Flash,256字節(jié)的RAM,32 位I/O 口,看門狗定時(shí)器,2個(gè)數(shù)據(jù)指針,三個(gè)16 位定時(shí)器/計(jì)數(shù)器,一個(gè)6向量2級(jí)中斷結(jié)構(gòu),全雙工串行口,片內(nèi)晶振及時(shí)鐘電路。另外,AT89S52 可降至0Hz 靜態(tài)邏輯操作,支持2種軟件,可選擇節(jié)電模式。空閑模式下,CPU停止工作,允許RAM、定時(shí)器/計(jì)數(shù)器、串口、中斷繼續(xù)工作;掉電保護(hù)方式下,RAM內(nèi)容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停止,直到下一個(gè)中斷或硬件復(fù)位為止。
3.1.1 AT89S52單片機(jī)的主要性能
與MCS-51單片機(jī)產(chǎn)品兼容
8K字節(jié)在系統(tǒng)可編程Flash存儲(chǔ)器
1000次擦寫周期
全靜態(tài)操作:0Hz~33Hz
三級(jí)加密程序存儲(chǔ)器
32個(gè)可編程I/O口線
三個(gè)16位定時(shí)器/計(jì)數(shù)器
八個(gè)中斷源
全雙工UART串行通道
低功耗空閑和掉電模式
掉電后中斷可喚醒
看門狗定時(shí)器
雙數(shù)據(jù)指針
掉電標(biāo)識(shí)符
3.1.2 AT89S52管腳功能說(shuō)明
1.006.jpg (20.77 KB, 下載次數(shù): 193)
下載附件
2017-6-9 22:07 上傳
AT89S52引腳如圖3.1所示。
圖3.1 AT89S52引腳結(jié)構(gòu)圖
VCC :電源
GND : 接地
P0口: P0口是一個(gè)8位漏極開(kāi)路的雙向I/O口。作為輸出口,每位能驅(qū)動(dòng)8個(gè)TTL邏輯電平。對(duì)P0端口寫“1”時(shí),引腳用作高阻抗輸入。當(dāng)訪問(wèn)外部程序和數(shù)據(jù)存儲(chǔ)器時(shí),P0口也被作為低8位地址/數(shù)據(jù)復(fù)用,在這種模式下,P0具有內(nèi)部上拉電阻。在flash編程時(shí),P0口也用來(lái)接收指令字節(jié),在程序校驗(yàn)時(shí),輸出指令字節(jié)。程序校驗(yàn)時(shí),P0口需要外部上拉電阻。
1.007.jpg (20.9 KB, 下載次數(shù): 162)
下載附件
2017-6-9 22:07 上傳
表3.1 P1口第二功能
P1口:P1 口是一個(gè)具有內(nèi)部上拉電阻的8 位雙向I/O 口,P1 輸出緩沖器能驅(qū)動(dòng)4個(gè)TTL 邏輯電平。對(duì)P1 端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。此外,P1.0和P1.2分別作定時(shí)器/計(jì)數(shù)器2的外部計(jì)數(shù)輸入(P1.0/T2)和時(shí)器/計(jì)數(shù)器2的觸發(fā)輸入(P1.1/T2EX),具體如表3.1所示。在flash編程和校驗(yàn)時(shí),P1口接收低8位地址字節(jié)。
P2口:P2 口是一個(gè)具有內(nèi)部上拉電阻的8 位雙向I/O 口,P2 輸出緩沖器能驅(qū)動(dòng)4個(gè)TTL 邏輯電平。對(duì)P2 端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。在訪問(wèn)外部程序存儲(chǔ)器或用16位地址讀取外部數(shù)據(jù)存儲(chǔ)器(例如執(zhí)行MOVX @DPTR)時(shí),P2 口送出高八位地址。在這種應(yīng)用中,P2 口使用很強(qiáng)的內(nèi)部上拉發(fā)送1。在使用8位地址(如MOVX @RI)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),P2口輸出P2鎖存器的內(nèi)容。在flash編程和校驗(yàn)時(shí),P2口也接收高8位地址字節(jié)和一些控制信號(hào)。
P3口:P3 口是一個(gè)有內(nèi)部上拉電阻的8 位雙向I/O 口,P3 輸出緩沖器能驅(qū)動(dòng)4個(gè)TTL 邏輯電平。對(duì)P3 端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。P3口亦作為AT89S52特殊功能(第二功能)使用,如表3.2所示。在flash編程和校驗(yàn)時(shí),P3口也接收一些控制信號(hào)。
表3.2 P3口第二功能
1.008.jpg (26.18 KB, 下載次數(shù): 187)
下載附件
2017-6-9 22:07 上傳
RST:復(fù)位輸入。晶振工作時(shí),RST腳持續(xù)2個(gè)機(jī)器周期高電平將使單片機(jī)復(fù)位。看門狗計(jì)時(shí)完成后,RST 腳輸出96個(gè)晶振周期的高電平。特殊寄存器AUXR(地址8EH)上的DISRTO位可以使此功能無(wú)效。DISRTO默認(rèn)狀態(tài)下,復(fù)位高電平有效。
1.009.jpg (639 Bytes, 下載次數(shù): 173)
下載附件
2017-6-9 22:07 上傳
1.010.jpg (639 Bytes, 下載次數(shù): 186)
下載附件
2017-6-9 22:07 上傳
ALE/PROG:地址鎖存控制信號(hào)(ALE)是訪問(wèn)外部程序存儲(chǔ)器時(shí),鎖存低8 位地址的輸出脈沖。在flash編程時(shí),此引腳(PROG)也用作編程輸入脈沖。在一般情況下,ALE 以晶振六分之一的固定頻率輸出脈沖,可用來(lái)作為外部定時(shí)器或時(shí)鐘使用。然而,特別強(qiáng)調(diào),在每次訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),ALE脈沖將會(huì)跳過(guò)。如果需要,通過(guò)將地址為8EH的SFR的第0位置“1”,ALE操作將無(wú)效。這一位置 “1”,ALE 僅在執(zhí)行MOVX 或MOVC指令時(shí)有效。否則,ALE 將被微弱拉高。這個(gè)ALE 使能標(biāo)志位(地址為8EH的SFR的第0位)的設(shè)置對(duì)微控制器處于外部執(zhí)行模式下無(wú)效。
1.011.jpg (639 Bytes, 下載次數(shù): 171)
下載附件
2017-6-9 22:07 上傳
1.012.jpg (639 Bytes, 下載次數(shù): 184)
下載附件
2017-6-9 22:07 上傳
PSEN:外部程序存儲(chǔ)器選通信號(hào)(PSEN)是外部程序存儲(chǔ)器選通信號(hào)。當(dāng)AT89S52從外部程序存儲(chǔ)器執(zhí)行外部代碼時(shí),PSEN在每個(gè)機(jī)器周期被激活兩次,而在訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),PSEN將不被激活。
1.013.jpg (635 Bytes, 下載次數(shù): 163)
下載附件
2017-6-9 22:07 上傳
1.014.jpg (635 Bytes, 下載次數(shù): 164)
下載附件
2017-6-9 22:07 上傳
1.015.jpg (635 Bytes, 下載次數(shù): 162)
下載附件
2017-6-9 22:07 上傳
1.016.jpg (635 Bytes, 下載次數(shù): 161)
下載附件
2017-6-9 22:07 上傳
EA/VPP:訪問(wèn)外部程序存儲(chǔ)器控制信號(hào)。為使能從0000H 到FFFFH的外部程序存儲(chǔ)器讀取指令,EA必須接GND.為了執(zhí)行內(nèi)部程序指令,EA應(yīng)該接VCC。在flash編程期間,EA也接收12V的VPP電壓。
XTAL1:振蕩器反相放大器和內(nèi)部時(shí)鐘發(fā)生電路的輸入端。
XTAL2:振蕩器反相放大器的輸出端。[7]
3.1.3單片機(jī)的最小系統(tǒng)
單片機(jī)的最小系統(tǒng)是指運(yùn)用最少的元件使單片機(jī)運(yùn)行的系統(tǒng),一般包括一下的幾個(gè)部分:晶振電路、復(fù)位電路、電源電路和串口電路。
晶振是電路中常用用的時(shí)鐘元件,全稱是叫晶體震蕩器,在單片機(jī)系統(tǒng)里晶振的作用非常大,他結(jié)合單片機(jī)內(nèi)部的電路,產(chǎn)生單片機(jī)所必須的時(shí)鐘頻率,單片機(jī)的一切指令的執(zhí)行都是建立在這個(gè)基礎(chǔ)上的,晶振的提供的時(shí)鐘頻率越高,那單片機(jī)的運(yùn)行速度也就越快。[2]
晶振的作用是為系統(tǒng)提供基本的時(shí)鐘信號(hào)。通常一個(gè)系統(tǒng)共用一個(gè)晶振,便于各部分保持同步。有些通訊系統(tǒng)的基頻和射頻使用不同的晶振,而通過(guò)電子調(diào)整頻率的方法保持同步。
而晶振由于會(huì)與單片機(jī)的XTAL1與XTAL2腳構(gòu)成的振蕩電路中會(huì)產(chǎn)生諧波,從而降低電路時(shí)鐘振蕩器的穩(wěn)定性,所以一般會(huì)匹配兩個(gè)30pf的電容來(lái)消減諧波對(duì)于電路穩(wěn)定性的影響。
晶振電路如圖3.2所示:,XTAL1 和XTAL2 分別是放大器的輸入、輸出端
1.017.jpg (9.33 KB, 下載次數(shù): 166)
下載附件
2017-6-9 22:07 上傳
圖3.2 晶振電路
系統(tǒng)復(fù)位有兩種方式:上電復(fù)位與手動(dòng)復(fù)位。[3]
上電復(fù)位:上電瞬間,電容充電電流最大,電容相當(dāng)于短路,RST端為高電平,自動(dòng)復(fù)位;電容兩端的電壓達(dá)到電源電壓時(shí),電容充電電流為零,電容相當(dāng)于開(kāi)路,RST端為低電平,程序正常運(yùn)行。
1.018.jpg (14.47 KB, 下載次數(shù): 202)
下載附件
2017-6-9 22:07 上傳
手動(dòng)復(fù)位:首先經(jīng)過(guò)上電復(fù)位,當(dāng)按下按鍵時(shí),RST直接與VCC相連,為
圖3.3復(fù)位電路
高電平形成復(fù)位,同時(shí)電解電容被短路放電;按鍵松開(kāi)時(shí),VCC對(duì)電容充電,充電電流在電阻上,RST依然為高電平,仍然是復(fù)位,充電完成后,電容相當(dāng)于開(kāi)路,RST為低電平,正常工作。[5]
一般采用手動(dòng)復(fù)位,其對(duì)于上電復(fù)位方式更加方便,不需要切斷電源便可對(duì)系統(tǒng)進(jìn)行復(fù)位,復(fù)位電路如圖3.3所示
3.2溫度檢測(cè)模塊
3.2.1 DS18B20的主要功能及特點(diǎn)
DS18B20溫度傳感器是美國(guó)達(dá)拉斯(DALLAS)半導(dǎo)體公司推出的應(yīng)用單總線技術(shù)的數(shù)字溫度傳感器。該器件將半導(dǎo)體溫敏器件、A/D轉(zhuǎn)換器、存儲(chǔ)器等做在一個(gè)很小的集成電路芯片上。它具有微型化、低功耗、高性能、抗干擾能力強(qiáng)、易配微處理器等優(yōu)點(diǎn),可直接將溫度轉(zhuǎn)化成串行數(shù)字信號(hào)供處理器處理。[8]
DS18B20具有以下特性:
獨(dú)特的單線接口方式,DS18B20在與微處理器連接時(shí)僅需要一條口線。
每個(gè)設(shè)備都有一個(gè)唯一的64位序列碼,存儲(chǔ)在ROM中。
簡(jiǎn)單的多點(diǎn)分布式測(cè)溫應(yīng)用。
在使用中不需要任何外圍元件。
可以從數(shù)據(jù)線供電。電源范圍為3.0V~ 5.5V。
測(cè)溫范圍 -55℃~+125℃。
在—10℃~+85℃間,測(cè)溫分辨率為0.5℃。
溫度計(jì)分辨率可由用戶選擇,9至12位之間。
在750毫秒內(nèi)將溫度轉(zhuǎn)換為12位字。
用戶可自定義非易失性報(bào)警的設(shè)置。
報(bào)警搜索命令定義和存儲(chǔ)的設(shè)備,其溫度不收程序限制(溫度報(bào)警狀態(tài))。
采用8引腳SOP和3引腳TO- 92封裝。
軟件與DS1822兼容。
其引腳如圖3.4所示:
1.019.jpg (12.16 KB, 下載次數(shù): 148)
下載附件
2017-6-9 22:07 上傳
圖3.4 DS18B20引腳圖
引腳說(shuō)明:
GND - 接地
DQ - 輸入/輸出數(shù)據(jù)
VDD - 電源電壓
NC - 無(wú)連接
DS18B20的極限使用條件
各引腳對(duì)地電壓: -0.5V~+0.6V
工作溫度: -55℃~125℃
儲(chǔ)存溫度: -55℃~+125℃
焊接溫度參見(jiàn)J-STD-020A的規(guī)格
*以上指出的器件在進(jìn)行正常焊接操作時(shí)所需要的環(huán)境條件,可能還有部分為能說(shuō)明但是在操作規(guī)格中已經(jīng)暗示器件可正常運(yùn)行的環(huán)境。長(zhǎng)期工作在極限條件下可能會(huì)影響器件的可靠性。
3.2.2DS18B20的內(nèi)部結(jié)構(gòu)
DS18B20的內(nèi)部存儲(chǔ)資源分為8個(gè)字節(jié)的ROM,9個(gè)字節(jié)的高速暫存器RAM,3個(gè)字節(jié)的EEPROM。如圖3.5所示。
1.020.jpg (18.04 KB, 下載次數(shù): 602)
下載附件
2017-6-9 22:07 上傳
圖3.5 DS18B20內(nèi)部結(jié)構(gòu)圖
每只DS18B20都有一個(gè)唯一存儲(chǔ)在ROM中的64位編碼。最前面8位是單線系列編碼,接著的49位是唯一的序列號(hào),最后8位是以上56位的CRC編碼。當(dāng)一條總線上皆有多個(gè)DS18B20時(shí),就通過(guò)序列號(hào)對(duì)其加以區(qū)分。
主機(jī)操作ROM的指令有5種:
33H——讀ROM。讀DS18B20溫度傳感器ROM中的編碼。
55H——匹配ROM。發(fā)出此命令后,接著發(fā)出64位ROM編碼,訪問(wèn)單總線上與該編碼相對(duì)應(yīng)的DS18B20并使之做出響應(yīng),為下一步對(duì)該DS18B20的讀寫做準(zhǔn)備。
F0H——搜索ROM。用于確定掛接在同一總線上DS18B20的個(gè)數(shù),識(shí)別64位ROM地址,位操作各期間做好準(zhǔn)備。
CCH——跳過(guò)ROM。忽略64位ROM地址,直接向18B20發(fā)溫度變換命令。
ECH——告警搜索命令。執(zhí)行后只有溫度超過(guò)設(shè)定值上限或下限的芯片才做出響應(yīng)。
高速暫存器RAM由9個(gè)字節(jié)組成。其組成如圖3.8所示。包括兩個(gè)溫度顯示位,兩個(gè)復(fù)制的TH和TL,一個(gè)配置寄存器和三個(gè)保留位,一個(gè)CRC校驗(yàn)值。可電擦E2PROM又包括溫度觸發(fā)器TH和TL,以及一個(gè)配置寄存器。
表3.3 高速暫存器RAM組成
操作RAM的指令主要有:
44H——溫度轉(zhuǎn)換。啟動(dòng)DS18B20進(jìn)行溫度轉(zhuǎn)換,結(jié)果存入RAM。
BEH——讀暫存器。讀內(nèi)部RAM中的溫度數(shù)據(jù)。
4EH——寫暫存器。發(fā)出像內(nèi)部RAM寫上、下限溫度數(shù)據(jù)指令,緊跟該命令之后傳送2字節(jié)的數(shù)據(jù)。
48H——復(fù)制暫存器。將RAM中的TH、TL復(fù)制到E2PROM中。
B8H——重調(diào)E2PROM。將E2PROM中內(nèi)容恢復(fù)到中。
B4H——讀供電方式。寄生供電時(shí),DS18B20發(fā)送0,外界電源供電時(shí),DS18B20發(fā)送1。
3.2.3 DS18B20的工作時(shí)序
DS18B20需要嚴(yán)格的單總線協(xié)議以確保數(shù)據(jù)的完整性,主要包括初始化系列,讀序列,寫序列,所有時(shí)序都是講主機(jī)作為主設(shè)備,單總線設(shè)備作為從設(shè)備。每一次命令和數(shù)據(jù)的傳輸都是從主機(jī)啟動(dòng)寫時(shí)序開(kāi)始,如果要求單總線器件會(huì)送數(shù)據(jù),在進(jìn)行寫命令后,主機(jī)需啟動(dòng)讀時(shí)序?qū)懲陻?shù)據(jù)將接受。數(shù)據(jù)和命令的傳輸都是地位在先。
初始化時(shí)序:
1)先將數(shù)據(jù)線置高電平1。
2)延時(shí)(該時(shí)間要求不是很嚴(yán)格,但是要盡可能短一點(diǎn))。
3)數(shù)據(jù)線拉到低電平0。
4)延時(shí)750us(該時(shí)間范圍可以在480~960us)。
5)數(shù)據(jù)線拉到高電平。
6)延時(shí)等待。如果初始化成功,則在15~60ms內(nèi)產(chǎn)生一個(gè)由DS18B20返回的低電平0,據(jù)該狀態(tài)可以確定它的存在。
7)若CPU讀到數(shù)據(jù)線上的低電平0后,還要進(jìn)行延時(shí),其延時(shí)的時(shí)間從發(fā)出高電平算起至少要480us.
8)將數(shù)據(jù)線再次拉到高電平1后結(jié)束。如圖3.6所示。
1.021.jpg (17.49 KB, 下載次數(shù): 144)
下載附件
2017-6-9 22:07 上傳
圖3.6 初始化時(shí)序圖
寫時(shí)序:
1)數(shù)據(jù)線先置低電平0。
2)延時(shí)確定的時(shí)間為15us。
3)按從低位到高位的順序發(fā)送數(shù)據(jù)。
4)延時(shí)時(shí)間為45us。
5)將數(shù)據(jù)線拉到高電平1。
6)重復(fù)1)~5)步驟,直到發(fā)送完整個(gè)字節(jié)。
7)最后將數(shù)據(jù)線拉高到1。如圖3.7所示。
1.022.jpg (20.84 KB, 下載次數(shù): 164)
下載附件
2017-6-9 22:07 上傳
圖3.7 寫數(shù)據(jù)時(shí)序圖
讀時(shí)序:
1)將數(shù)據(jù)線拉高到1。
2)延時(shí)2us。
3)將數(shù)據(jù)線拉低到0。
4)延時(shí)6 us。
5)將數(shù)據(jù)線拉高到1。
6)延時(shí)4 us。
7)讀數(shù)據(jù)線的狀態(tài)得到一個(gè)狀態(tài)位,并進(jìn)行數(shù)據(jù)處理。
8)延時(shí)30us。
9)重復(fù)1~7步驟,直到讀取完一個(gè)字節(jié)。如圖3.8所示。
1.023.jpg (18.29 KB, 下載次數(shù): 162)
下載附件
2017-6-9 22:07 上傳
圖3.8 讀數(shù)據(jù)時(shí)序圖
第四章 硬件模塊的設(shè)計(jì)
1.024.jpg (20.58 KB, 下載次數(shù): 183)
下載附件
2017-6-9 22:07 上傳
在第二章已經(jīng)提到硬件件模塊的設(shè)計(jì)主要是指以單片機(jī)為核心,包括外接的溫度采集電路,實(shí)時(shí)時(shí)鐘電路,鍵盤,熱水器加熱開(kāi)關(guān),液晶顯示電路,報(bào)警電路以及復(fù)位電路的設(shè)計(jì)。
圖4.1 硬件模塊設(shè)計(jì)框圖
4.1 溫度采集模塊
首先我們選擇DS18B20作為本次設(shè)計(jì)的測(cè)溫元件。
由第三章有關(guān)內(nèi)容可知DS18B20溫度傳感器可以將溫度這一模擬信號(hào)轉(zhuǎn)化為數(shù)字信號(hào)供處理器進(jìn)行處理,從而省去了電阻電感式傳統(tǒng)溫度傳感器的信號(hào)運(yùn)放模塊與A/D轉(zhuǎn)換模塊。
DS18B20只有三根外引線:?jiǎn)尉€數(shù)據(jù)傳輸總線端口DQ (2),外供電源線VDD(3),共用地線GND(1)。DS18B20有兩種供電方式:一種為數(shù)據(jù)線供電方式,此時(shí)VDD接地,它是通過(guò)內(nèi)部電容在空閑時(shí)從數(shù)據(jù)線獲取能量,來(lái)完成溫度轉(zhuǎn)換,相應(yīng)的完成溫度轉(zhuǎn)換的時(shí)間較長(zhǎng)。這種情況下,用單片機(jī)的一個(gè)I/O口來(lái)完成對(duì)DS18B20總線的上拉。另一種是外部供電方式(VDD接+5V),相應(yīng)的完成溫度測(cè)量的時(shí)間較短。
1.025.jpg (55.95 KB, 下載次數(shù): 179)
下載附件
2017-6-9 22:07 上傳
在本設(shè)計(jì)中采用外部供電方式實(shí)現(xiàn)DS18B20傳感器與單片機(jī)的連接,具體的接口電路如圖4.2所示。
圖4.2溫度傳感器接口電路
4.2實(shí)時(shí)時(shí)鐘電路模塊
本次設(shè)計(jì)采用的外接時(shí)鐘模塊芯片是美國(guó)DALLAS公司的DS1302時(shí)鐘芯片。
4.2.1 DS1302的介紹
其作為一款高性能、低功耗的實(shí)時(shí)時(shí)鐘芯片,附加31字節(jié)靜態(tài)RAM,采用SPI三線接口與CPU進(jìn)行同步通信,并可采用突發(fā)方式一次傳送多個(gè)字節(jié)的時(shí)鐘信號(hào)和RAM數(shù)據(jù)。實(shí)時(shí)時(shí)鐘可提供秒、分、時(shí)、日、星期、月和年,一個(gè)月小與31天時(shí)可以自動(dòng)調(diào)整,且具有閏年補(bǔ)償功能。工作電壓寬達(dá)2.5~5.5V。采用雙電源供電(主電源和備用電源),可設(shè)置備用電源充電方式,提供了對(duì)后背電源進(jìn)行涓細(xì)電流充電的能力。DS1302的外部引腳分配如圖1所示及內(nèi)部結(jié)構(gòu)如圖2所示。DS1302用于數(shù)據(jù)記錄,特別是對(duì)某些具有特殊意義的數(shù)據(jù)點(diǎn)的記錄上,能實(shí)現(xiàn)數(shù)據(jù)與出現(xiàn)該數(shù)據(jù)的時(shí)間同時(shí)記錄,因此廣泛應(yīng)用于測(cè)量系統(tǒng)中。
各引腳的功能為:
Vcc1:主電源;Vcc2:備份電源。當(dāng)Vcc2>Vcc1+0.2V時(shí),由Vcc2向DS1302供電,當(dāng)Vcc2< Vcc1時(shí),由Vcc1向DS1302供電。
SCLK:串行時(shí)鐘,輸入,控制數(shù)據(jù)的輸入與輸出;
I/O:三線接口時(shí)的雙向數(shù)據(jù)線;
CE:輸入信號(hào),在讀、寫數(shù)據(jù)期間,必須為高。該引腳有兩個(gè)功能:第一,CE開(kāi)始控制字訪問(wèn)移位寄存器的控制邏輯;其次,