基于單片機(jī)的空調(diào)控制器_第1頁
基于單片機(jī)的空調(diào)控制器_第2頁
基于單片機(jī)的空調(diào)控制器_第3頁
基于單片機(jī)的空調(diào)控制器_第4頁
基于單片機(jī)的空調(diào)控制器_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、河北工程大學(xué)課程設(shè)計(jì)基于單片機(jī)的空調(diào)控制器設(shè)計(jì)專業(yè):計(jì)算機(jī)科學(xué)與技術(shù)班級(jí):1402班組成員:尹振坤陳秀賢李晨光2設(shè)計(jì)任務(wù)錯(cuò)誤!未定義書簽3系統(tǒng)方案的確定錯(cuò)誤!未定義書簽3.1溫度傳感器產(chǎn)品分類與選擇錯(cuò)誤!未定義書簽3.1.2溫度傳感器產(chǎn)品分類錯(cuò)誤!未定義書簽3.2總體方案的確定錯(cuò)誤!未定義書簽4系統(tǒng)電路總體設(shè)計(jì)錯(cuò)誤!未定義書簽4.1系統(tǒng)工作原理錯(cuò)誤!未定義書簽4.2系統(tǒng)硬件設(shè)計(jì)錯(cuò)誤!未定義書簽4.2.1溫度采集電路錯(cuò)誤!未定義書簽4.2.2信號(hào)處理與控制電路錯(cuò)誤!未定義書簽4.2.3溫度顯示電路錯(cuò)誤!未定義書簽4.2.4溫度設(shè)置電路錯(cuò)誤!未定義書簽4.2.5控制指示電路錯(cuò)誤!未定義書簽4.3系

2、統(tǒng)軟件設(shè)計(jì)錯(cuò)誤!未定義書簽4.3.2軟件程序設(shè)計(jì)錯(cuò)誤!未定義書簽5系統(tǒng)的調(diào)試錯(cuò)誤!未定義書簽5.1單片機(jī)89C51的調(diào)試錯(cuò)誤!未定義書簽5.2程序調(diào)試過程中遇到的問題和解決辦法錯(cuò)誤!未定義書簽5.3調(diào)試結(jié)果錯(cuò)誤!未定義書簽附錄錯(cuò)誤!未定義書簽2設(shè)計(jì)任務(wù)設(shè)計(jì)題目:基于單片機(jī)的空調(diào)控制器設(shè)計(jì)設(shè)計(jì)要求:1 .溫度控制范圍18-26C02.低于18c給出一個(gè)控制信號(hào),啟動(dòng)電暖設(shè)備。3.高于26c時(shí),給出一個(gè)控制信號(hào),啟動(dòng)制冷設(shè)備。4.能手動(dòng)調(diào)整和自動(dòng)調(diào)整。3系統(tǒng)方案的確定3.1溫度傳感器產(chǎn)品分類與選擇溫度是日常生活中經(jīng)常遇到的一個(gè)物理量,它也是科研和生產(chǎn)中最常見、最基本的產(chǎn)量之一。在很多場合都需要對溫

3、度進(jìn)行測控,而溫度測控離不開溫度傳感器,因此,掌握正確的測溫方法及溫度傳感器的使用方法極為重要。3.1.1常用的測溫方法物體受熱后溫度就要升高,任何兩個(gè)溫度不同的物體相接觸都必然產(chǎn)生熱交換,直到兩者的溫度達(dá)到平衡為止。據(jù)此,可以選擇某種溫度傳感器與被測物體接觸進(jìn)行溫度測量,這種方法稱為接觸式測溫。接觸式測溫常用于較低溫度的測量。止匕外,物體受熱后溫度升高的同時(shí)還伴有熱輻射,因此,可利用溫度傳感器接收被測物體在不同溫度下輻射能量的不同來測量溫度,這種測溫方法稱為非接觸式測溫。非接觸式測溫常用于高溫測量。3.1.2溫度傳感器產(chǎn)品分類目前,溫度傳感器沒有統(tǒng)一的分類方法。按輸出量分類有模擬式溫度傳感器

4、和數(shù)字式溫度傳感器。按測溫方式分類有接觸式溫度傳感器和非接觸式溫度傳感器。 按類型分類有分立式溫度傳感器 (含敏感元件) 、模擬集成式溫度傳感器和智能溫度傳感器(即數(shù)字溫度傳感器)。模擬式溫度傳感器輸出的是隨溫度變化的模擬量信號(hào)。具特點(diǎn)是輸出響應(yīng)速度較快和MPU微處理器)接口較復(fù)雜。數(shù)字式溫度傳感器輸出的是隨溫度變化的數(shù)字量,同模擬輸出相比,它輸出響應(yīng)較慢,但容易與MPUg口。下面對工程中常用的溫度傳感器做簡單介紹。1.熱敏電阻式溫度傳感器電阻式溫度傳感器分為熱電阻式溫度傳感器和熱敏電阻溫度傳感器, 他們的特點(diǎn)是自身的電阻值隨溫度而變化。熱敏電阻式利用半導(dǎo)體材料制成的敏感組件, 通常所用的熱敏

5、電阻溫度傳感器都是具有負(fù)溫度系數(shù)的熱敏電阻,它的電阻率受溫度的影響很大,而且隨溫度的升高而減少,簡稱NTC其優(yōu)點(diǎn)是靈敏度高,體積小,壽命長,工作穩(wěn)定,易于實(shí)現(xiàn)遠(yuǎn)距離;缺點(diǎn)是互換性差,非線性嚴(yán)重。2.熱電阻式溫度傳感器利用熱電阻溫度系數(shù)隨溫度變化的特性而制成的溫度傳感器。稱為熱電阻溫度傳感器。對于大多數(shù)金屬導(dǎo)體,其電阻值都具有隨溫度升高而增大的特性。由于純金屬的溫度系數(shù)比合金的高,因此均采用純金屬作為熱電阻組件。常用的金屬導(dǎo)體材料有鋁、銅、鐵和鍥。3.熱電偶式溫度傳感器熱電偶是一種傳統(tǒng)的溫度傳感器,具測溫范圍一般為-50至U+1600C,最高可達(dá)+2800C,并且有較高的測量精度。另外,熱電偶產(chǎn)

6、品已實(shí)現(xiàn)標(biāo)準(zhǔn)化、系列化,使用時(shí)易于選擇,可方便地用計(jì)算機(jī)做線性補(bǔ)償,因此,至今在測溫領(lǐng)域內(nèi)仍被廣泛使用。它的理論基礎(chǔ)是建立在熱電效應(yīng)上,將熱能轉(zhuǎn)化為電能。4.模擬集成溫度傳感器集成傳感器是采用硅半導(dǎo)體集成工藝而制成的,因此亦稱硅傳感器或單片集成傳感器。模擬集成溫度傳感器是在20世紀(jì)80年代問世的。它是將溫度傳感器集成在一個(gè)芯片上、可完成溫度測量及模擬信號(hào)輸出功能的專用IC,它屬于最簡單的一種集成溫度傳感器。模擬集成溫度傳感器的主要特點(diǎn)是功能單一(僅測量溫度)、測溫誤差小、價(jià)格低、響應(yīng)速度快、傳輸距離遠(yuǎn)、體積小、微功耗,適合遠(yuǎn)距離測溫、控溫,不需要進(jìn)行非線性校準(zhǔn)。外圍電路簡單,它是目前在國內(nèi)外應(yīng)

7、用較為普遍的一種集成傳感器。5.智能溫度傳感器智能溫度傳感器(亦稱數(shù)字溫度傳感器)是在20世紀(jì)90年代中期問世的。智能溫度傳感器是微電子技術(shù)、計(jì)算機(jī)技術(shù)和自動(dòng)測試技術(shù)的結(jié)晶,它也是集成溫度傳感器領(lǐng)域中最具活力和發(fā)展前途的一種新產(chǎn)品。目前,行許多著名的集成電路生產(chǎn)已開發(fā)出上百種智能溫度傳感器產(chǎn)品。智能溫度傳感器具有以下三個(gè)顯著特點(diǎn):第一,能輸出溫度數(shù)據(jù)及相關(guān)的溫度控制量,適配各種微控制器(MCU;第二,能以最簡方式構(gòu)成高性價(jià)比、多功能的智能化溫度測控系統(tǒng);第三,它是在硬件的基礎(chǔ)上通過軟件來實(shí)現(xiàn)測試功能的,其智能化程度也取決于軟件的開發(fā)水平。智能溫度傳感器內(nèi)部都包含溫度傳感器、A/D傳感器、存儲(chǔ)器

8、(或寄存器)和接口電路。有的產(chǎn)品還帶多路控制器、中央控制器(CPU、隨機(jī)存取儲(chǔ)存器(RAM和只讀存儲(chǔ)器(ROM。3.1.3溫度傳感器的選擇在介紹溫度傳感器的選擇原則之前,首先介紹在測控系統(tǒng)中選擇傳感器的總原則,本原則適用于各種傳感器的選擇。1 .選擇傳感器的總原則現(xiàn)代傳感器在原理和結(jié)構(gòu)上千差萬別,如何根據(jù)具體的測控目的、測控對象以及測控環(huán)境合理地選擇傳感器,是單片機(jī)測控系統(tǒng)首先要解決的溫度。當(dāng)傳感器選定之后,與之相配套的測控電路也就可以確定了。測控結(jié)果的成敗,在很大程度取決于傳感器的選擇是否合理。作為單片機(jī)測控系統(tǒng)前向通道的關(guān)鍵部件,在選擇傳感器時(shí)應(yīng)考慮一下幾個(gè)方面:(1)根據(jù)測控對象與測控環(huán)

9、境確定傳感器的類型首先要考慮采用何種原理的傳感器,這需要分析多方面的因素之后才能確定。因?yàn)椋词故菧y量同一物理量,也有多種原理的傳感器可供選擇,哪一種原理的傳感器更為合適,則需要根據(jù)被測量對象的特點(diǎn)和傳感器的使用條件綜合考慮一下一些具體問題:1)傳感器的量程;2)被測位置對傳感器體積的要求;3)測量方式為接觸式還是非接觸式;4)傳感器信號(hào)的引出是有線還是無線;5)是購買傳感器還是自行研制傳感器以及價(jià)格因素等。在綜合考慮上述因素之后就能確定選擇何種類型的傳感器,然后再考慮傳感器的具體性能指標(biāo)。(2)靈敏度的選擇通常情況下,在傳感器的線性范圍內(nèi),希望傳感器的靈敏度越高越好。(3)頻率響應(yīng)特性傳感器

10、的頻率響應(yīng)特性決定了被測量的頻率范圍,傳感器的頻率響應(yīng)好,可測的信號(hào)頻率范圍就寬,傳感器的輸出信號(hào)必須在允許的頻率范圍內(nèi)保持不失真,實(shí)際上傳感器的響應(yīng)總有一定得延遲,希望延遲時(shí)間越來越好。(4)線性范圍傳感器的線形范圍是指輸出信號(hào)與輸入量成正比的范圍。 從理論上講, 在此范圍內(nèi)靈敏度應(yīng)保持定值。傳感器的線性范圍越寬,其量程越大,并且能保證一定的測量精度。在選擇傳感器時(shí),當(dāng)傳感器的種類確定之后首先要看其量程是否滿足要求。(5)穩(wěn)定性傳感器使用一段時(shí)間后,其性能保持不變化的能力稱為穩(wěn)定性。影響傳感器長期穩(wěn)定性的因素除傳感器本身結(jié)構(gòu)外,主要是傳感器的使用環(huán)境。因此,要使傳感器具有良好的穩(wěn)定性,傳感器

11、必須要有較強(qiáng)的環(huán)境適應(yīng)能力。(6)精度的選擇精度是傳感器的一個(gè)重要的性能指標(biāo),它是關(guān)系到整個(gè)測控系統(tǒng)測量精度的一個(gè)重要環(huán)節(jié)。傳感器的精度越高,其價(jià)格越昂貴,因此,傳感器的精度只要能滿足整個(gè)測控系統(tǒng)的精度要求就可以了,不必選得太高。這樣就可以在滿足同一測量目的的諸多傳感器中選擇比較便宜和簡單的傳感器。2.溫度傳感器的選擇溫度傳感器技術(shù)被廣泛應(yīng)用于消費(fèi)類電子產(chǎn)品、玩具、家用電子產(chǎn)品、工業(yè)測控系統(tǒng)以及個(gè)人計(jì)算機(jī)應(yīng)用中。傳統(tǒng)上分立式溫度傳感器是最常用的溫度傳感器元件,而集成溫度傳感器特點(diǎn)是測溫誤差小、價(jià)格低、響應(yīng)速度快、傳輸距離遠(yuǎn)、體積小、微功耗,適合遠(yuǎn)距離測溫、控溫,不需要進(jìn)行非線性校準(zhǔn),外圍電路簡

12、單,它是目前在國內(nèi)外應(yīng)用最為普遍的一種溫度傳感器。綜上所述,不同的傳感器具有不同的應(yīng)用場合,由于在溫度測控系統(tǒng)中,傳感器是前向通道的關(guān)鍵部件,因此選擇合適的傳感器是非常重要的。選擇的原則要考慮溫度范圍、溫控精度、測溫場合、價(jià)格等幾方面的因素。3.2總體方案的確定考慮到該制冷控制系統(tǒng)功能比較少,由單片機(jī)控制即可實(shí)現(xiàn)。而89C52單片機(jī)體積小、重量輕、抗干擾能力強(qiáng)、對環(huán)境要求不高、價(jià)格低廉、可靠性高、靈活性好,故本系統(tǒng)選擇采用89C52單片機(jī)。在溫度采集方面,在設(shè)計(jì)開始時(shí)就準(zhǔn)備了兩種方案:一種是采用熱敏電阻式傳感器和ADC0809專換器進(jìn)行數(shù)據(jù)采集。總體方案示意圖如圖1所示:具體方案如下:溫度傳感

13、器的模擬信號(hào)轉(zhuǎn)換為數(shù)字信號(hào)后由P0口輸入。ADC080的P3.0啟動(dòng)轉(zhuǎn)換,由P3.1控制輸出。信號(hào)傳輸采用無條件輸入方式,啟動(dòng)A/D轉(zhuǎn)換后延時(shí)100微妙從P0口采集數(shù)據(jù)。時(shí)間延遲由T0實(shí)現(xiàn)。具體系統(tǒng)電路圖如圖2所示:供9到12位溫度讀數(shù),指示器件的溫度信息經(jīng)過單線接口送入220V另一種是采用單線數(shù)字溫度傳感器DS18B20a行數(shù)據(jù)采集。DSB18B20頷字溫度計(jì)提DS18B20X出,因此從中圖1熱敏電阻式溫度控制器圖2熱敏電阻式溫度控制器電路圖央處理器到DS18B2收需連接一條線和地,讀寫和完成溫度變換所需的電源可以由數(shù)據(jù)線本身提供,甚至不需要外部電源。而總體方案和系統(tǒng)電路圖方面基本上和熱敏式

14、傳感器相同,只在數(shù)據(jù)采集方面有所差別。具體電路圖如圖3所示。圖3數(shù)字傳感器式溫度控制器根據(jù)上述選擇傳感器的原則,考慮到模擬量輸出傳感器會(huì)帶來許多不便,具體體現(xiàn)在接線多、信號(hào)處理復(fù)雜等,在硬件實(shí)現(xiàn)方面比較困難。而且在上面也已經(jīng)提及,熱敏電阻式溫度傳感器互換性差,非線性嚴(yán)重。而數(shù)字溫度傳感器DS18B20R線簡單,數(shù)字輸出量能直接作為單片機(jī)的輸入數(shù)據(jù),同時(shí)考慮到只是在普通環(huán)境下測量,無論在靈敏P2.W 股哥U口檢則1P2.*ft12F? 網(wǎng)3F2J6RUP2.7M15F1JF1JP3 聽后X3X3P3.OJ?1J5冷即MAMAPJJ&Wl11.711.7rawIIII至j+皚哈瞪1X陽 郎

15、 叩M.1M1R02MD2 陽例13HKWtP0.&AD5的 冊 嶺洶倒嚀UHCIS啪JN.E亙*花肛19卜21宣2?fijwP3 小訊。W W諦SJYJY*SJYJY*琳同YTYTA Ai irvrvE1E2E3E1E2E3度、線性范圍、穩(wěn)定性,還是在精度方面,DS18B20勺強(qiáng)大功能已足夠滿足設(shè)計(jì)需要。但是DS18B20&有缺點(diǎn),就是軟件實(shí)施方面比較復(fù)雜,但相對于模擬量輸出的硬件實(shí)現(xiàn)方面來說會(huì)簡單很多。在本次設(shè)計(jì)中,溫度數(shù)據(jù)采集用到的傳感器是DS18B204系統(tǒng)電路總體設(shè)計(jì)4.1系統(tǒng)工作原理該空調(diào)控制系統(tǒng)用到89C52單片機(jī)作為系統(tǒng)的CPU進(jìn)行控制控制, 由數(shù)字傳感器DS1

16、8B20!行數(shù)據(jù)采集,89C52對采集到的數(shù)據(jù)進(jìn)行處理, 得到各種信號(hào)。 而這些信號(hào)將分別作為LED數(shù)碼管顯示的信號(hào)輸入和啟動(dòng)制冷設(shè)備、電暖設(shè)備的輸入。同時(shí)將利用單片機(jī)的其它使能端口實(shí)現(xiàn)系統(tǒng)的復(fù)位,手動(dòng)調(diào)節(jié)和自動(dòng)調(diào)節(jié)。4.2系統(tǒng)硬件設(shè)計(jì)系統(tǒng)的硬件部分主要可分為溫度采集電路,信號(hào)處理與控制控制,溫度顯示電路,溫度調(diào)節(jié)電路,控制指示電路五大部分。4.2.1溫度采集電路本系統(tǒng)中采集溫度使用的是DS18B2嗷字溫度傳感器。DS18B20是Dallas半導(dǎo)體公司生產(chǎn)的世界上第一片支持“一線總線”接口的溫度傳感器。與之前的傳感器相比,DS18B20積更小、適用電壓更寬、更經(jīng)濟(jì)。一線總線獨(dú)特而且經(jīng)濟(jì)的特點(diǎn),

17、使用戶可輕松地組建傳感器網(wǎng)絡(luò),為測量系統(tǒng)的構(gòu)建引入全新概念。DS18B20“一線總線”數(shù)字化溫度傳感器支持“一線總線”接口, 測量溫度范圍為-55C到+125C,在-10至ij+85c范圍內(nèi),精度為土0.5C。 現(xiàn)場溫度直接以“一線總線”的數(shù)字方式傳輸,大大提高了系統(tǒng)的抗干擾性。適合于惡劣環(huán)境的現(xiàn)場溫度測量,如:環(huán)境控制、設(shè)備或過程控制、測溫類消費(fèi)電子產(chǎn)品等。與前一代產(chǎn)品不同,新的產(chǎn)品支持3V到5.5V的電壓范圍,使系統(tǒng)設(shè)計(jì)更靈活、方便。而且新一代產(chǎn)品更便宜,體積更小。DS18B20可以程序設(shè)定9到12位的分辨率,精度為土0.5C。當(dāng)分辨率為12位時(shí),轉(zhuǎn)換時(shí)間為750ms使得用戶可選擇更小的封

18、裝方式,更寬的電壓適用范圍和分辨率設(shè)定,同時(shí)用戶設(shè)定的報(bào)警溫度存儲(chǔ)在EEPROMP,掉電后依然保存。DS18B20-般為三極管型封裝,具引腳圖如圖4所示。這三個(gè)引腳分別為:GND電源地;QD數(shù)字彳9號(hào)輸入/輸出端;VDD-外接供電電源(可選5V)。在單片機(jī)89C51中,輸入/輸出端口分別PRP1、P2、P&其中P3是一個(gè)帶內(nèi)部上拉電阻的8位雙向I/O端口。P3的輸出緩沖器可驅(qū)動(dòng)(吸收或輸出電流方式)4個(gè)TTL輸入。對端口寫1時(shí),通過內(nèi)部的上拉電阻吧端口拉到高電位,這時(shí)可用作輸入口。P3作輸入口使用時(shí),因?yàn)橛袃?nèi)部的上拉電阻,那些被電阻拉低的引腳會(huì)輸出一個(gè)電流。P3端口還用于一些復(fù)用功能,

19、其復(fù)用功能如表1所列。表1單片機(jī)89C51-P3的功能及在本系統(tǒng)中的應(yīng)用P3.0RXD(用行口輸入口)與手動(dòng)降溫按鈕連接P3.1TXD(用行口輸出口)與手動(dòng)升溫按鈕連接P3.2INT0(外部中斷)與手動(dòng)調(diào)節(jié)確認(rèn)按鈕連接P3.3INT1(外部中斷1)與DS18B20勺I/O端口通訊P3.4T0(定時(shí)器0的外部輸入)與高溫報(bào)警的二極管連接P3.5T1(定時(shí)器1的外部輸入)與低溫報(bào)警的二極管連接P3.6WR外部數(shù)據(jù)存儲(chǔ)器寫選通)備用P3.7RD備用在該系統(tǒng)中,DS18B20勺數(shù)字信號(hào)輸入/輸出端連接到89C52的P3.3中,作為89C51的數(shù)據(jù)輸入。4.2.2信號(hào)處理與控制電路信號(hào)處理與控制采用1單

20、片機(jī)基本電路。此電路以51單片機(jī)為核心,52的具體引腳圖如圖5。在該系統(tǒng)中,要使單片機(jī)實(shí)現(xiàn)信號(hào)處理與控制,則要使單片機(jī)的20腳(GND接地,40腳(Vcc)和31腳(/EA)接正5V電源。18、19腳(XTAL2XTAL1接12MHz勺晶振和兩個(gè)電容,組成片內(nèi)振蕩電路,為單片機(jī)提供時(shí)鐘脈沖。9腳(RST接按鍵復(fù)位電路,提供復(fù)位信號(hào)給單片機(jī)。PIPIO O匚140140p pVCCVCCP1.1P1.1匚239239PO.O(ADO)PO.O(ADO)P1.2P1.2338338ZJPO.1(ADI)ZJPO.1(ADI)P1.3P1.31_1_4 43737_lPOW(AD2)_lPOW(AD

21、2)P1.4P1.4匚536536ZZIPO.S(A03)ZZIPO.S(A03)P1.5P1.5匚6356351PO.4(AD4)1PO.4(AD4)P1.6P1.6匚734734PS5(AD5)PS5(AD5)P1.7P1.7匚833833ZZIPO.6(AD6)ZZIPO.6(AD6)RSTRST匚9393二PO.7(AD7)PO.7(AD7)(RXD)P3.O(RXD)P3.O匚TOTO3131nEA/VPPnEA/VPP(TXD)(TXD)尸3.13.1匚111130301ALE/PROG1ALE/PROG(INTO)P3.2(INTO)P3.2匚12291229Z3PSENZ3PS

22、ENP3.3P3.3匚13281328二1P2.7(A1P2.7(A15)15)(TO)P3.4(TO)P3.4匚14271427P2.6(A14)P2.6(A14)(T1)P3.5(T1)P3.5匚15261526_|P2.5(A_|P2.5(A1313(WR)P3.6(WR)P3.6匚16251625P2.4(AP2.4(A12)12)(RD)P3,7(RD)P3,7廠172417241P2.3(All)1P2.3(All)XTAL2XTAL2匚18231823P2.P(AIO)P2.P(AIO)XTAL1XTAL1匚19221922P2.P2.1 1(A9)(A9)GNDGNDPOPO2

23、121_|_|P2.O(AS)P2.O(AS)圖589C52引腳圖89C52芯片內(nèi)部有一個(gè)高增益反相放大器,用于構(gòu)成振蕩器。反相放大器的輸入端為XTAL1,輸出端為XTAL2兩端跨接石英晶體及兩個(gè)電容就可以構(gòu)成穩(wěn)定的自激振蕩器。兩個(gè)電容通常取30pF左右,穩(wěn)定頻率并對震蕩頻率有微調(diào)作用。如圖6所示。C230p圖6晶振電路手動(dòng)復(fù)位是通過接通一按鈕開關(guān),使單片機(jī)進(jìn)入復(fù)位狀態(tài)。系統(tǒng)上電運(yùn)行后,若需要復(fù)位,則通過手動(dòng)復(fù)位來實(shí)現(xiàn)的。如圖7所示。4.2.3溫度顯示電路本系統(tǒng)中,溫度顯示硬件由74HC1384位二進(jìn)制譯十進(jìn)制譯碼器,74HC245W號(hào)功率放大和四位一體共陰C130pX1數(shù)碼管構(gòu)成。1.四位一

24、體共陰數(shù)碼管四位一體共陰數(shù)碼管引腳圖如圖8所示。它的1、4、5、7腳為位選腳,分別對應(yīng)從左到右四個(gè)數(shù)碼管,輸入低電平選通。剩下的其他引腳為數(shù)據(jù)輸入腳,此電路中數(shù)碼管的8個(gè)數(shù)據(jù)引腳(a、b、c、d、e、f、g、dp)o三一戶圖8LED數(shù)碼管引腳圖2.八位二進(jìn)制譯十進(jìn)制譯碼器由于要對四位一體共陰數(shù)碼管提供位選信號(hào),供其選通四個(gè)數(shù)碼管所以在系統(tǒng)中使用了74HC138八位二進(jìn)制譯十進(jìn)制譯碼器。具引腳圖如圖9所示。FqUS8CFqUS8CS S,LETJRWLETJRWC7btpbCJ:CJ:CJ:CJ:dpd dn nvrTTvLi iF Ff fI I!一3 3i_iT-Ji_iT-JtOtO4 4

25、-J-JFTFT引腳說明:第1、2、3腳A、BC二進(jìn)制輸入腳。第4、5、6腳片選信號(hào)控制,只有在4、5腳為“0”,6腳為“1”時(shí),才會(huì)被選通,輸出受AB、C信號(hào)控制。其它任何組合方式將不被選通,且Y0丫7$俞出全為“1”。第8腳為GND電源地。第15腳為VCC電源正極。ABCG2AG2BG1Y7GNDU1IB21531441351261171089VCCY0Y1Y2jY3Y4Y5Y6圖974HC138引腳圖74HC138勺1、2、3腳分別與單片機(jī)的P1.0、P1.1、P1.2腳相連,單片機(jī)的這三個(gè)管腳輸出選通二進(jìn)制信號(hào),輸入到74HC138#碼,由74HC138勺Y0至Y7腳(本電路只用了Y0

26、Y1、Y3)將譯碼十進(jìn)制信號(hào)輸出到四位一體共陰數(shù)碼管,以達(dá)到對數(shù)碼管的位選作用。譯碼電路如圖10所示。74HC138圖10譯碼電路3.信號(hào)功率放大電路為了使LED能夠獲得足夠的功率顯示溫度,在本系統(tǒng)中采用了74HC24皿率放大器,把單片機(jī)處理后的溫度數(shù)據(jù)經(jīng)由74HC245進(jìn)行功率放大后,再把它輸入給LED數(shù)碼管顯示。74HC244I腳圖如圖11所示。引腳說明:第1腳DIR,為輸入輸出端口轉(zhuǎn)換用,DIR=1”高電平時(shí)信號(hào)由“A”端輸入B端輸出,DIR=“0”低電平時(shí)信號(hào)由“B端輸入A”端輸出。第2到9腳“A”信號(hào)輸入輸出端,A1=B1A8=B8A1與B1是一組,如果DIR=1,G=0”則A1輸入

27、DIR=0G=0”則B1輸入A1輸出,其它類同。第11到18腳“B信號(hào)輸入輸出端,功能與“A”端一樣,不再贅述第19腳G使能端,若該腳為“1, A/B端的信號(hào)將不導(dǎo)通, 只有為“0”時(shí)A/B端才被啟用,該腳也就是起到開關(guān)的作用。第10腳GND電源地。第20腳VCC電源正極。本電路選擇DIR=1,G=0”則A1輸入B1輸出,單片機(jī)P2口輸出顯示8位二進(jìn)制數(shù)據(jù)信號(hào)到74HC245勺A1A8腳,使信號(hào)功率放大,再通過B1到B8腳輸出到四位一體共陰數(shù)碼管數(shù)據(jù)腳,驅(qū)動(dòng)數(shù)碼管顯示。具體電路圖如圖R1U15k1E1E2E3Y0Y1Y2Y3Y4Y5Y6Y7YGGYGG印B283e4B5wB7B8B283e4B

28、5wB7B8riripllrnm-n口n nlnln20202 21817:615141817:61514同1212”J J類L它6 6d d234Md-67g.1ccrsdor-DCUDHA1234Md-67g.1ccrsdor-DCUDHA1A2A3A4A2A3A4廂-*MND輸一.圖1174HC245弓唧圖12所示U3圖12信號(hào)功率放大電路圖4.2.4溫度設(shè)置電路溫度調(diào)節(jié)由三個(gè)不鎖按鍵電路實(shí)現(xiàn)。電路圖如圖13所示。按鍵K1一端與單片機(jī)的外部中斷0(/INT0,12腳)相連,另一端接地。其功能是當(dāng)按鍵按下一次時(shí),給單片機(jī)一個(gè)低電平,進(jìn)入溫度設(shè)定狀態(tài);再次按下時(shí),則退出溫度設(shè)定狀態(tài)。按鍵K2

29、、K3,一端接地,另一端與單片機(jī)的10腳、11腳相連,其功能是每按下一次按鍵,溫度顯示值加1或減1。4.2.5控制指示電路控制指示電路由兩個(gè)彩燈構(gòu)成,由單片機(jī)P3.4(引腳14)、P3.5(引腳15,見表1)輸出控制信號(hào),控制彩燈的亮滅。在該系統(tǒng)中,當(dāng)溫度超過26攝氏度時(shí),單片機(jī)P3.5輸出高電平,驅(qū)動(dòng)高溫彩燈亮,啟動(dòng)制冷設(shè)備。當(dāng)溫度低于18攝氏度時(shí),單片機(jī)P3.4輸出高電平,驅(qū)動(dòng)低溫彩燈亮,啟動(dòng)電暖設(shè)備。當(dāng)不滿足條件時(shí),彩燈熄滅。4.3系統(tǒng)軟件設(shè)計(jì)4.3.1DS18B20數(shù)據(jù)通信概述和DS18B20信,其命令序列有3步:初始化、RO嘛令(跟隨需要交換的數(shù)據(jù))和功能命令(跟隨需要交換的數(shù)據(jù))。

30、每次訪問DS18B20必須嚴(yán)格遵守這個(gè)命令時(shí)序,如果出現(xiàn)序列混亂,則單總線則單總線器件不會(huì)響應(yīng)主機(jī)。這個(gè)準(zhǔn)則對于搜索ROMT令和報(bào)警搜索命令例外,在執(zhí)行兩者中任何一條命令之后,主機(jī)不能執(zhí)行其后的功能命令,而必須返回至第一步。1 .初始化單總線上的所有傳輸過程都是以初始化開始的, 初始化過程由主機(jī)發(fā)出的復(fù)位脈沖和從機(jī)響應(yīng)的應(yīng)答脈沖組成,應(yīng)答脈沖使主機(jī)知道總線上有從機(jī)設(shè)備且準(zhǔn)備就緒。2.ROIW令在主機(jī)檢測到應(yīng)答脈沖后,就可以發(fā)出ROM命令。ROMT令與各個(gè)從機(jī)設(shè)備的唯一64位ROMHi碼相關(guān),允許主機(jī)在單總線上連接多個(gè)從機(jī)設(shè)備時(shí),指定操作某個(gè)從機(jī)設(shè)備。RO喻令還允許能夠檢測到總線上有多少個(gè)從機(jī)設(shè)

31、備及其設(shè)備類型,或者有沒有設(shè)備處于報(bào)警狀態(tài)。搜索ROMF0h當(dāng)系統(tǒng)初始上電時(shí),主機(jī)必須找出總線上所有從機(jī)設(shè)備的RO削碼,這樣主機(jī)才能夠判斷出從機(jī)的數(shù)目和類型。主機(jī)通過重復(fù)執(zhí)行搜索ROM1環(huán)(搜索ROM0T令跟隨著位數(shù)據(jù)交換),以找出總線上所有的從機(jī)設(shè)備。如果總線只有一個(gè)從機(jī)設(shè)備,則可以采用讀ROMfiT令來替代搜索ROMfiT令。在每次執(zhí)行完搜索ROMS環(huán)后,主機(jī)必須返回至命令序列的第一步:初始化。(2)讀ROM33h(僅適合于單節(jié)點(diǎn))該命令僅適用于總線上只有一個(gè)從機(jī)設(shè)備,它允許主機(jī)直接讀出從機(jī)的64位ROWi碼,而無須執(zhí)行搜索ROMS程。如果該命令用于多節(jié)點(diǎn),系統(tǒng)則必然發(fā)生數(shù)據(jù)沖突,因?yàn)槊總€(gè)

32、從機(jī)設(shè)備都會(huì)響應(yīng)該命令。(3)匹配ROM55h匹配ROMfiT令品M隨64位ROMR;碼,從而允許主機(jī)訪問多節(jié)點(diǎn)系統(tǒng)中某個(gè)指定的從機(jī)設(shè)備。僅當(dāng)從機(jī)完全匹配64位ROMHi碼時(shí),才會(huì)響應(yīng)主機(jī)隨后發(fā)出的功能命令,其他設(shè)備將處于等待復(fù)位脈沖狀態(tài)。(4)跳躍ROMCCh僅適合于單節(jié)點(diǎn))主機(jī)能夠采用該命令同時(shí)訪問總線上的所有從機(jī)設(shè)備,而無須發(fā)出任何RO削碼信息。例如,主機(jī)通過在發(fā)出跳越ROM0T令后,跟隨車$換溫度命令44h就可以同時(shí)命令總線上所有的DS18B20開始轉(zhuǎn)換速度,這樣大大節(jié)省了主機(jī)的時(shí)間。注意:如果跳越ROM命令跟隨的是讀操作命令,則該命令只能應(yīng)用于單節(jié)點(diǎn)系統(tǒng),否則將由于多個(gè)節(jié)點(diǎn)都響應(yīng)該命

33、令而引起數(shù)據(jù)沖突。(5)報(bào)警搜索Ech除那些設(shè)置了報(bào)警標(biāo)志的從機(jī)響應(yīng)外,該命令的工作方式完全等同于搜索ROM0T令,該命令允許主機(jī)設(shè)備判斷哪些從機(jī)設(shè)備發(fā)生了報(bào)警(如最近的測量溫度過高或過低等)。同搜索RO嘛令一樣,在完成報(bào)警搜索循環(huán)后,主機(jī)必須返回至命令序列的第一步。3.功能命令在主機(jī)發(fā)出ROMfiT令,以訪問某個(gè)指定的DS18B20接著就可以發(fā)出DS18B20勺某個(gè)功能命令。這些命令允許主機(jī)寫入或讀出DS18B20的存儲(chǔ)器,啟動(dòng)溫度轉(zhuǎn)換以及判斷從機(jī)的供電方式。(1)讀RAMff儲(chǔ)器BEh此命令讀RAMS儲(chǔ)器的內(nèi)容,開始讀字節(jié)0,并繼續(xù)讀到第九個(gè)字節(jié)(CRCo如果不是所有位置均可讀,那么主機(jī)可

34、以再任何時(shí)候發(fā)出一復(fù)位命令以中止讀操作。4 2)復(fù)制RAMff儲(chǔ)器(48h)此命令讀RAMS儲(chǔ)器的內(nèi)容,開始讀字節(jié)0,并繼續(xù)讀到第九個(gè)字節(jié)(CRCo如果不是所有位置均可讀,那么主機(jī)可以再任何時(shí)候發(fā)出一復(fù)位命令以中止讀操作。(3)重新調(diào)出EERAMB8h此命令把存儲(chǔ)在EERA呻THTL、CONF勺值重新調(diào)至RAM#儲(chǔ)器。這種重新調(diào)出的操作在對DS18B20上電時(shí)也自動(dòng)發(fā)生,因此只要器件一接電,暫存存儲(chǔ)器內(nèi)就有有效的數(shù)據(jù)可供使用。(4)讀電源B4h在此命令送至DS18B20之后最先發(fā)出的讀數(shù)據(jù)時(shí)間片,器件都會(huì)給其電源方式的信號(hào):0=強(qiáng)上拉電阻供電;1=電源供電。(5)寫RAMK器44h寫數(shù)據(jù)到RA

35、M儲(chǔ)器,地址為第2、第3、第4字節(jié)(THTL、CON尸。(6)溫度變換44h此命令開始溫度變換,不需要另外的數(shù)據(jù)。溫度變換將被執(zhí)行,接著DS18B2O保持在空閑狀態(tài)。4.3.2軟件程序設(shè)計(jì)1)主程序模塊(如圖14所示)。2)DS18B20!訊模塊(如圖15所示)。3)溫度設(shè)置模塊(如圖16所示)。4)溫度顯示模塊(如圖17所示)。5)讀取溫度信號(hào)值。6)與設(shè)定值比較,決定空調(diào)狀態(tài)(制冷還是制暖)。主程序流程圖如圖11所示。圖14主程序流程圖根據(jù)上述DS18B20勺通信原理,DS18B20勺工作流程如圖11所示圖15DS18B20工作流程圖溫度設(shè)定和溫度顯示流程圖分別如圖12和圖13所示。完整的

36、程序請?jiān)斠姼戒洝?系統(tǒng)的調(diào)試5.1單片機(jī)89C52的調(diào)試本系統(tǒng)中主要調(diào)試的硬件是單片機(jī)調(diào)試單片機(jī)89C52的主要目的是確保單片機(jī)能正常工作。調(diào)試分三部分進(jìn)行:1.單片機(jī)沒有損壞;2.測試晶振電路是否工作正常;3.錄入檢測程序,檢測單片機(jī)及其外圍電路能否整體正常工作。步驟一:確定單片機(jī)沒有損壞。調(diào)試所用的單片機(jī)編程器是WH-280A原列的USE編程器。一般來說,使用編程器對單片機(jī)進(jìn)行程序的擦除和燒錄都能成功,并且通過校驗(yàn),可以確定單片機(jī)沒有損壞。步驟二: 測試晶振電路是否工作正常。 晶振電路連接上單片機(jī)并且上電后檢測晶體振蕩器的兩端電壓,電壓是+2V左右時(shí),晶振電路是供電正常。用示波器觀察晶體振

37、蕩器兩端的波型,能夠產(chǎn)生穩(wěn)定的脈沖波形是,可以確定晶振電路工作正常。步驟三:錄入檢測程序,檢測單片機(jī)及其外圍電路能否整體正常工作。向單片機(jī)錄入以下檢測程序:ORG0000HLJMPMAINORG0100HMAIN:CLRA圖16溫度設(shè)置軟件流程圖圖17溫度顯示軟件流程圖MOVA,#AAHMOVP1,AMOVP2,AMOVP3,AAJMPMAINEND該程序的目的是令單片機(jī)的P1、P2、P3端口都輸出的八位數(shù)字信號(hào),這時(shí)用電壓表測量這三個(gè)端口的電平,若得出符合程序的結(jié)果,則可以確定單片機(jī)及其外圍電路都能正常工作。5.2程序調(diào)試過程中遇到的問題和解決辦法1)較小的硬件開銷需要相對復(fù)雜的軟件進(jìn)行補(bǔ)償

38、,由于DS182叫微處理器采用串行數(shù)據(jù)傳送,因此,在對DS1820tt行讀寫編程時(shí),必須嚴(yán)格的保證讀寫時(shí)序,否則將無法讀取測溫結(jié)果。2)在DS1820M溫程序設(shè)計(jì)中,向DS182儂出溫度轉(zhuǎn)換命令后,程序總要等待DS1820的返回信號(hào),一旦某個(gè)DS182哦觸不好或斷線,當(dāng)程序讀該DS1820時(shí),將沒有返回信號(hào),程序進(jìn)入死循環(huán)。這一點(diǎn)在進(jìn)行DS182硬件連接和軟件設(shè)計(jì)時(shí)也要給予一定的重視。3)編程時(shí)要注意,在程序開始時(shí),要寫入各定時(shí)器中斷的入口地址。4)編程過程中要注意加注釋或分割線,否則,附錄1.系統(tǒng)程序代碼#include#include#defineucharunsignedchar#def

39、ineuintunsignedintsbitDS=P3A3;/定義DS18B20接口sbitp30=P3A0;sbitp31=P3A1;sbitat=P3A4;定義增溫控制接口sbitdt=P3A5;/定義減溫控制接口staticinttemp;uintcout=0;staticintl_tmp;ucharflagl;uinti=0;voiddisplay(void);codeunsignedchartable=0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f,0 x6f,0 x40,0 x80,0 x00;/共陰數(shù)碼管0-9空表Uns

40、ignedcharl_tmpdate8=0,0,0,0,0,0,0,0;/定義數(shù)組變量,并賦值1,2,3,4,5,6,7,8,就是本程序顯示的八個(gè)數(shù)inttmp(void);voidtmpchange(void);voidtmpwritebyte(uchardat);uchartmpread(void);bittmpreadbit(void);voiddsreset(void);voiddelayb(uintcount);voidzhuti(l_tmp);voiddelayc(unsignedintj);voidadd(void);voidsub(void);voidISR_EX0()interrupt0(delayc(2000);cout+;voidmain()主函數(shù)at=1;dt=1;EA=1;首先開啟總中斷EX0=1;/開啟外部中斷0IT0=1;/設(shè)置成下降沿觸發(fā)方式while(1)tmpchange();/溫度轉(zhuǎn)換l_tmp=tmp();zhuti(l_tmp);display();while(cout%2!=0)display();while(cout%2!=0)&(p31=0)add();while(cout%2!=0)&(p30=0)sub();voiddelayc(uintj)(while(-j0);

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論