畢業(yè)設(shè)計論文基于單片機(jī)的智能飲水機(jī)的設(shè)計_第1頁
畢業(yè)設(shè)計論文基于單片機(jī)的智能飲水機(jī)的設(shè)計_第2頁
畢業(yè)設(shè)計論文基于單片機(jī)的智能飲水機(jī)的設(shè)計_第3頁
畢業(yè)設(shè)計論文基于單片機(jī)的智能飲水機(jī)的設(shè)計_第4頁
畢業(yè)設(shè)計論文基于單片機(jī)的智能飲水機(jī)的設(shè)計_第5頁
已閱讀5頁,還剩48頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、本 科 畢 業(yè) 設(shè) 計(論文) 題目 基于單片機(jī)的智能飲水機(jī)的設(shè)計 院(系部) 萬方科技學(xué)院 專業(yè)名稱 電氣工程及其自動化專業(yè)年級班級 07-6 學(xué)生姓名 指導(dǎo)教師 2011年 5月 25日摘 要目前,大多數(shù)家庭所使用的飲水機(jī)都只有一些基本的功能,例如加熱、保溫。然而,隨著人們物質(zhì)生活的不斷提高,對飲水機(jī)的性能要求也不斷提高。為了滿足人們對飲水機(jī)的性能要求,本課題研究智能飲水機(jī),它主要功能是在溫度達(dá)到100°沸騰,并能在0-100之間以5為最小溫差進(jìn)行溫度設(shè)定,從而得到任意想要的水溫,非常人性化。它還具有過熱保護(hù)及防干燒功能等。隨著計算機(jī)技術(shù)的發(fā)展,單片機(jī)技術(shù)已成為計算機(jī)技術(shù)中的一個

2、獨(dú)特的分支,單片機(jī)的應(yīng)用領(lǐng)域也越來越廣泛,特別是在工業(yè)控制和儀器儀表智能化中扮演著極其重要的角色。過去經(jīng)常采用模擬電路、數(shù)字電路實現(xiàn)的電路系統(tǒng),現(xiàn)在相當(dāng)大一部分可以用單片機(jī)予以實現(xiàn),傳統(tǒng)的電路設(shè)計方法已演變成軟件和硬件相結(jié)合的設(shè)計方法。在實際應(yīng)用中,單片機(jī)經(jīng)常要與各種傳感器相結(jié)合組成一定的應(yīng)用系統(tǒng),以實現(xiàn)系統(tǒng)的自動檢測與控制。本文所設(shè)計的智能飲水機(jī)就是單片機(jī)結(jié)合傳感器的一個簡單應(yīng)用。該系統(tǒng)設(shè)計綜合單片機(jī)以及電子技術(shù)理論,從生活實際出發(fā),完善了飲水機(jī)的功能。整個設(shè)計系統(tǒng)實現(xiàn)三個功能,即加熱、對溫度上下限的控制和定時加熱。與傳統(tǒng)的飲水機(jī)相比,由于采用了自動檢測和控制的電子設(shè)計技術(shù),可較好地實現(xiàn)對水

3、溫的測量和控制,具有較廣泛的應(yīng)用前景。關(guān)鍵詞:智能飲水機(jī) AT89S52單片機(jī) 溫度采集 功能設(shè)計AbstractCurrently, most households are using drinking fountains are only some basic functions, such as heating, insulation. However, with the continuous improvement of material life, people, performance requirements of the drinking fountains also risi

4、ng. To meet the performance requirements for drinking fountains, drinking fountains of the intelligence research, which main function is in the boiling temperature reaches 100 °, and can be between 0-100 at 5 temperature difference for the minimum temperature setting, you want to get any water,

5、 very human. It also has thermal protection and anti-dry functions. With the development of computer technology, single chip technology has become the computer technology in a unique branch of microcontroller applications are increasingly being used especially in intelligent industrial control and i

6、nstrumentation plays a very important role. Used to analog circuits, digital circuits circuit system, and now a large part of the microcontroller can be achieved, the traditional method of circuit design has evolved into a combination of software and hardware design. In practical applications, the m

7、icrocontroller with a variety of sensors often composed of some combination of the application system to achieve automatic detection and control system. Intelligent design in this paper dispenser is a simple microcontroller with sensor applications. The system design of integrated microcontrollers a

8、nd electronics theory, the reality of life, improve the function of the drinking fountains. The whole design system to achieve three functions, namely, heating, temperature control and timer upper and lower heat. Compared with the conventional drinking fountains, the use of automatic detection and c

9、ontrol of electronic design techniques to achieve better measurement and control of water temperature, have a wider application.Key words: intelligent water dispenser,AT89S52 microcontroller, temperature acquisition,F(xiàn)unctional Design朗讀顯示對應(yīng)的拉丁字符的拼音 字典目 錄前 言61緒 論81.1 課題研究的背景81.2 市場飲水機(jī)現(xiàn)狀81.3 課題研究的

10、目的和意義91.4 智能飲水機(jī)的主體功能91.5 課題設(shè)計的主體內(nèi)容102 智能飲水機(jī)的硬件結(jié)構(gòu)設(shè)計112.1 智能飲水機(jī)的總體設(shè)計112.2 元器件選擇122.3 AT89S52的主要性能122.3.1 AT89S52功能特性描述132.3.2 AT89S52晶振電路的設(shè)計132.4 測溫電路的設(shè)計152.4.1 DS18B20的引腳圖及方框圖152.4.2 DS18B20主要性能162.4.3 DS18B20功能特性描述162.4.4 DS18B20供電方式182.5 主控系統(tǒng)192.6 輸入控制202.7 顯示部分212.8 其他功能部分233 智能飲水機(jī)的軟件設(shè)計253.1 系統(tǒng)分配方

11、式253.2 主程序設(shè)計253.3 各模塊程序設(shè)計283.3.1 溫度檢測程序設(shè)計283.3.2 顯示程序設(shè)計303.3.3 鍵盤掃描程序313.3.4 延時程序344 調(diào)試及性能分析354.1 軟件調(diào)試354.1.1 新建工程354.1.2 新建文本354.1.3 添加文本364.1.4 程序編譯374.2 硬件調(diào)試374.2.1 電源電路的仿真374.2.2 出水電路模塊的仿真384.2.3 加熱模塊電路的仿真394.2.4 顯示模塊電路的仿真394.2.5 報警電路的仿真404.3 性能分析41結(jié) 論42致 謝43參考文獻(xiàn)44參考文獻(xiàn)44附錄145附錄246附錄347前 言隨著“信息時代

12、”的到來,作為獲取信息的手段傳感器技術(shù)得到了顯著的進(jìn)步,其應(yīng)用領(lǐng)域越來越廣泛,對其要求越來越高,需求越來越迫切。傳感器技術(shù)已成為衡量一個國家科學(xué)技術(shù)發(fā)展水平的重要標(biāo)志之一。因此,了解并掌握各類傳感器的基本結(jié)構(gòu)、工作原理及特性是非常重要的。由于傳感器能將各種物理量、化學(xué)量和生物量等信號轉(zhuǎn)變?yōu)殡娦盘?,使得人們可以利用計算機(jī)實現(xiàn)自動測量、信息處理和自動控制,但是它們都不同程度地存在溫漂和非線性等影響因素。傳感器主要用于測量和控制系統(tǒng),它的性能好壞直接影響系統(tǒng)的性能。因此,不僅必須掌握各類傳感器的結(jié)構(gòu)、原理及其性能指標(biāo),還必須懂得傳感器經(jīng)過適當(dāng)?shù)慕涌陔娐氛{(diào)整才能滿足信號的處理、顯示和控制的要求,而且只

13、有通過對傳感器應(yīng)用實例的原理和智能傳感器實例的分析了解,才能將傳感器和信息通信和信息處理結(jié)合起來,適應(yīng)傳感器的生產(chǎn)、研制、開發(fā)和應(yīng)用。另一方面,傳感器的被測信號來自于各個應(yīng)用領(lǐng)域,每個領(lǐng)域都為了改革生產(chǎn)力、提高工效和時效,各自都在開發(fā)研制適合應(yīng)用的傳感器,于是種類繁多的新型傳感器及傳感器系統(tǒng)不斷涌現(xiàn)。溫度傳感器是其中重要的一類傳感器。其發(fā)展速度之快,以及其應(yīng)用之廣,并且還有很大潛力。為了提高對傳感器的認(rèn)識和了解,尤其是對溫度傳感器的深入研究以及其用法與用途,基于實用、廣泛和典型的原則而設(shè)計了本系統(tǒng)。本文利用單片機(jī)結(jié)合溫度傳感器加以簡單的按鍵控制及顯示等功能實現(xiàn)了對智能飲水機(jī)的控制,為我們對單片

14、機(jī)系統(tǒng)的學(xué)習(xí)提供了很好的真實素材。本設(shè)計實用性及綜合性比較強(qiáng),設(shè)計系統(tǒng)不僅可以作為智能飲水機(jī)的控制系統(tǒng),如果稍微改裝可以做環(huán)境溫度檢測系統(tǒng)、實驗室溫度監(jiān)控系統(tǒng)等等。課題主要任務(wù)是完成水溫檢測并利用單片機(jī)實現(xiàn)溫度調(diào)節(jié)并加以顯示、報警、鎖定等功能。該系統(tǒng)具有操作方便,控制靈活、實用等優(yōu)點(diǎn)。本設(shè)計系統(tǒng)包括溫度傳感器,鍵盤輸入模塊,輸出控制模塊,數(shù)據(jù)傳輸模塊,溫度顯示模塊和出水驅(qū)動電路等部分。文中對每個部分功能、實現(xiàn)過程作了詳細(xì)介紹。整個系統(tǒng)的核心是進(jìn)行溫度監(jiān)控及調(diào)節(jié),完成了課題所有要求。1緒 論1.1 課題研究的背景從飲水機(jī)問世以來,在中國的發(fā)展趨勢逐年增加。飲水機(jī)的使用量逐年增長,隨著人們生活水平

15、的提高,人們對其功能的要求也越來越高,所以,對智能飲水機(jī)的需求就逐漸顯現(xiàn)了出來。 飲水機(jī)是采用瓶裝水或者自來水經(jīng)凈水器凈化作為水源,利用電能對其進(jìn)行加熱,一年四季提供常溫水或熱水的飲水電器。飲水機(jī)基本能滿足人們?nèi)粘5娘嬎⑴莶?、沖咖啡、即食食品以及調(diào)制冷飲的各種需要。飲水機(jī)具有飲水時尚、結(jié)構(gòu)簡單、操作方便、清潔衛(wèi)生、價廉物美等優(yōu)點(diǎn)。 在飲水機(jī)進(jìn)入高潮的今天,市場十分活躍,然而,消費(fèi)者對飲水機(jī)的選擇不是停留在過去的眼光,而是高標(biāo)準(zhǔn),不僅實用而且要求外形脫俗,跟上時代潮流步伐,尤其在其功能方面要有更高的要求。 當(dāng)前絕大多數(shù)廠家生產(chǎn)的飲水機(jī)都采用智能化控制。因此,智能飲水機(jī)已是飲水機(jī)發(fā)展的必然趨勢。

16、1.2 市場飲水機(jī)現(xiàn)狀可以這樣說,現(xiàn)在的家用電器基本上都采用了單片機(jī)控制,從電飯煲、洗衣機(jī)、電冰箱、空調(diào)機(jī)、彩電、其他音響視頻器材、再到電子秤設(shè)備,五花八門,無所不在。飲水機(jī)也不例外。單片機(jī)按其應(yīng)用范圍可分為通用型和專用型兩類。家用電器多采用專用型單片機(jī),如日本NEC公司開發(fā)的7500系列和75X00系列4位單片機(jī)、美國國家半導(dǎo)體公司的COP400系列4位單片機(jī),以及日本松下公司的MN1400系列、美國Zilog公司的Z8系列以及日本富士通公司的MB88系列等專用型單片機(jī)。家用電器所采用的通用型單片機(jī),主要是Intel公司的MCS系列產(chǎn)品。目前飲水機(jī)基本上都采用單片機(jī)控制,但各廠家生產(chǎn)的飲水機(jī)

17、單片機(jī)控制所達(dá)到的功能各不相同。智能化,多功能必定是發(fā)展趨勢。1.3 課題研究的目的和意義單片機(jī)在電子產(chǎn)品中的應(yīng)用已經(jīng)越來越廣泛, 在很多電子產(chǎn)品中也用到了溫度檢測和溫度控制。目前廣泛使用的飲水機(jī),具有價格低廉,制造簡便等優(yōu)點(diǎn)。但是隨著用戶長時間使用,這些飲水機(jī)功能單一、能耗較大、長時間飲用飲水機(jī)的水對健康不利等缺點(diǎn)逐漸暴露出來。傳統(tǒng)的飲水機(jī)的局限性一般體現(xiàn)在以下幾個方面:第一,功能相對簡單。只有簡單的溫度控制,而且用戶還不能自己根據(jù)自己的喜好設(shè)定溫控參數(shù)。第二,能耗較大。在沒有人使用的時候飲水機(jī)也處在開機(jī)狀態(tài)無疑會造成能源的大量浪費(fèi),在能源緊缺的今天這個方面亟待解決。第三, 長期飲用飲水機(jī)里

18、的水會對健康不利。由于廣泛使用的飲水機(jī)燒水不能完全沸騰,長期飲用這種水會對身體造成較大的傷害。本此設(shè)計的基于AT89S52的多功能飲水機(jī), 采用DS18B20實現(xiàn)溫度采集,經(jīng)過LED顯示, 讀數(shù)直觀、準(zhǔn)確。并且程序存儲器E2PROM可以很容易的實現(xiàn)軟件升級, 從軟件方面提高儀器精度。同時可以對加熱溫度進(jìn)行控制,從而防止了每次加熱都使水沸騰,既節(jié)能又能更好的滿足人們的需求。1.4 智能飲水機(jī)的主體功能(1)智能飲水機(jī)的主體功能:本課題設(shè)計的智能飲水機(jī)具有過熱保護(hù)防干燒、加熱至沸騰、設(shè)置溫度加熱、超溫報警提示、安全鎖定、電動機(jī)出水功能等。(2)智能飲水機(jī)的按鍵功能:出水鍵:控制飲水機(jī)出水和停止出水

19、;加熱鍵:負(fù)責(zé)控制開始加熱和停止加熱;鎖定鍵:按下鎖定鍵,其他按鍵無效;切換?。喊聪潞箝_始設(shè)定用戶想要的溫度;溫度設(shè)定鍵:按一下溫度增加5,溫度可在0到100之間循環(huán)。(3)智能飲水機(jī)的顯示功能:電源燈(綠色):接通電源,電源燈點(diǎn)亮;加熱指示燈(黃色):按下加熱鍵,加熱指示燈點(diǎn)亮,表示燒水開始工作。再次按下加熱鍵,指示燈熄滅,表示燒水停止;鎖定鍵指示燈(藍(lán)色):鎖定其他按鍵功能,燈亮表示其他按鍵均不可用;超溫報警燈(紅色):燈點(diǎn)亮表示水已經(jīng)達(dá)到設(shè)定的加熱溫度或已沸騰并停止加熱;數(shù)碼管:顯示當(dāng)前水溫或用戶設(shè)定的溫度。蜂鳴器:響起后說明水以沸騰并停止加熱。1.5 課題設(shè)計的主體內(nèi)容該設(shè)計的主要內(nèi)容

20、主要包括設(shè)計方向的選擇、設(shè)計題目的確定、設(shè)計方法的研究與比較,選擇最優(yōu)方案后開始進(jìn)行硬件設(shè)計和軟件設(shè)計以及最終的仿真調(diào)試。其中硬件設(shè)計包括器件的選定,各模塊功能的設(shè)計與實現(xiàn),以及最終各功能模塊與單片機(jī)的連接構(gòu)成一個整體系統(tǒng)并能滿足設(shè)計要求;軟件設(shè)計主要是通過編寫C語言程序?qū)纹瑱C(jī)進(jìn)行控制使其按照程序運(yùn)行從而實現(xiàn)各模塊的功能滿足設(shè)計的要求;最終通過Keil uVision2編譯軟件將寫好的程序編譯成為16進(jìn)制文件,使之能夠在proteus仿真軟件中和硬件電路一起進(jìn)行仿真調(diào)試,從而確保設(shè)計的正確性。2 智能飲水機(jī)的硬件結(jié)構(gòu)設(shè)計2.1 智能飲水機(jī)的總體設(shè)計整個硬件系統(tǒng)由主控制系統(tǒng)、輸入輸出模塊、傳感

21、器、其他功能電路和電源部分組成。主控系統(tǒng)使用單片機(jī)控制,包括對鍵盤的信息的接收和控制,對其他功能電路的控制等,通過軟件編程實現(xiàn)預(yù)定功能;傳感器部分即檢測子系統(tǒng),主要是進(jìn)行飲水機(jī)中水的溫度檢測和控制,采用智能溫度傳感器DS18B20;其他功能電路部分包括恒溫,防干燒,出水等電路,達(dá)到功能多樣化;電源部分為智能飲水機(jī)提供必要的電能,保證飲水機(jī)能夠正常的工作。整體框圖如圖2-1所示。以下詳細(xì)討論每個功能模塊的設(shè)計思想和硬件電路的實現(xiàn)。溫度檢測電路晶振電路復(fù)位電路其他功能電路功能顯示報警電路鍵盤單片機(jī)AT89S52數(shù)碼顯示電源電路 圖2-1 智能飲水機(jī)電路框圖2.2 元器件選擇主機(jī)單元由AT89S52

22、單片機(jī)和相關(guān)的存儲器組成,是儀表的核心。關(guān)鍵部分期間名稱及其在電路中的主要功能如下:(1)AT89S52:完成監(jiān)控系統(tǒng)數(shù)據(jù)采集過程、采集方式和報警過程的控制。是整個系統(tǒng)的核心處理器,單片機(jī)首先把通過傳感器測到的現(xiàn)場溫度與預(yù)先設(shè)置的溫度進(jìn)行比較,如果大于或小于預(yù)先設(shè)置值,就輸出信號去控制加熱器的工作,從而實現(xiàn)溫度控制。(2)數(shù)碼管:用于顯示當(dāng)前水溫及設(shè)定的水溫。(3)DS18B20:單線數(shù)字溫度傳感器,可直接將被測溫度轉(zhuǎn)化為串行數(shù)字信號,以供單片機(jī)處理。(4)各色LED及蜂鳴器:用于提示用戶飲水機(jī)的各種狀態(tài)。(5)按鍵:輸入模塊,用于控制單片機(jī)完成各項功能。2.3 AT89S52的主要性能AT8

23、9S52具有8k字節(jié)Flash閃速存儲器,256字節(jié)內(nèi)部RAM,32個I/O口線,3個16位定時/計數(shù)器,一個6向量兩級中斷結(jié)構(gòu),一個全雙工串行通信口,片內(nèi)振蕩器及時鐘電路。同時,AT89S52可降至0Hz的靜態(tài)邏輯操作,并支持兩種軟件可選的節(jié)電工作模式??臻e方式停止CPU的工作,但允許RAM,定時/計數(shù)器,串行通信口及中斷系統(tǒng)繼續(xù)工作。掉電方式保存RAM中的內(nèi)容,但振蕩器停止工作并禁止其它所有部件工作指導(dǎo)下一個硬件復(fù)位。 AT89S52功能特性描述(1)AT89S52是一種低功耗,高性能CMOS工藝的8位微控制器,具有8K在系統(tǒng)可編程Flash存儲器。使用Atmel公司高密度非易失性存儲器技

24、術(shù)制造,與工業(yè)80C51產(chǎn)品指令和引腳完全兼容。片上Flash允許程序存儲器在系統(tǒng)可編程,亦適于常規(guī)編程器。在單芯片上,擁有靈巧的8位CPU和在系統(tǒng)提供高靈活,超有效的解決方案。 (2)AT89S52具有以下標(biāo)準(zhǔn)功能:8K字節(jié)Flash,256字節(jié)RAM,32位I/O口線,看門狗定時器,2個數(shù)據(jù)指針,一個6向量2級中斷結(jié)構(gòu),全雙工串行口,片內(nèi)晶振及時鐘電路。另外,AT89S52可降至0KHZ靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式。空閑模式下,CPU停止工作,允許RAM、定時器/計數(shù)器、串口、中斷繼續(xù)工作。掉電保護(hù)方式下,RAM內(nèi)容被保存,振蕩器被凍結(jié),單片機(jī)停止工作,直到一個中斷或硬件復(fù)位為

25、止。(3)AT89S52有40個引腳,32個外部雙向輸入/輸出(I/O)端口,同時內(nèi)含8個中斷口,3個16位可編程定時計數(shù)器,2個全雙工串行通信口,2個讀寫口線。AT89S52可以按照常規(guī)方法進(jìn)行編程,也可以在線編程。其通用的微處理器和Flash存儲器結(jié)合在一起,可反復(fù)擦寫的Flash存儲器可有效地降低開發(fā)成本。 AT89S52晶振電路的設(shè)計每個單片機(jī)系統(tǒng)里都有晶振,全稱是叫晶體震蕩器,在單片機(jī)系統(tǒng)里晶振的作用非常大,它結(jié)合單片機(jī)內(nèi)部的電路,產(chǎn)生單片機(jī)所必須的時鐘頻率,單片機(jī)的一切指令的執(zhí)行都是建立在這個基礎(chǔ)上的,晶振的提供的時鐘頻率越高,那單片機(jī)的運(yùn)行速度也就越快。晶振用一種能把電能和機(jī)械能

26、相互轉(zhuǎn)化的晶體在共振的狀態(tài)下工作,以提供穩(wěn)定,精確的單頻振蕩。在通常工作條件下,普通的晶振頻率絕對精度可達(dá)百萬分之五十,高級的精度更高。晶振電路中的兩個電容叫做負(fù)載電容。一般單片機(jī)的晶振工作于并聯(lián)諧振狀態(tài),也可以理解為諧振電容的一部分。它是根據(jù)晶振廠家提供的晶振要求負(fù)載電容選值的,換句話說,晶振的頻率就是在它提供的負(fù)載電容下測得的,能最大限度的保證頻率值的誤差。也能保證溫漂等誤差。兩個電容的取值都是相同的,或者說相差不大,如果相差太大,容易造成諧振的不平衡,容易造成停振或者干脆不起振。在本設(shè)計中XTAL1和XTAL2端外接石英晶體作為定時元件,內(nèi)部反向放大器自激振蕩,產(chǎn)生時鐘。所用石英晶體的振

27、蕩頻率為12MHZ,電容C1,C2常為20pF40pF內(nèi),如圖2-2所示。圖2-2 晶振電路2.4 測溫電路的設(shè)計 DS18B20的引腳圖及方框圖DS18B20的外形及管腳排列圖如下圖2-3所示。 (1)GND 地信號(2)DQ 數(shù)據(jù)輸入/輸出引腳。用在寄生電源下,可以向器件提供電源。(3)VDD 可選擇的VDD引腳。當(dāng)工作于寄生電源時,此引腳必須接地。圖2-3 DS18B20外形及引腳排列 DS18B20主要性能(1)獨(dú)特的單線接口方式,DS18B20在與微處理器連接時僅需要一條口線即可實現(xiàn)微處理器與DS18B20的雙向通訊; (2)測溫范圍 55125,固有測溫分辨率0.5; (3)支持多

28、點(diǎn)組網(wǎng)功能,多個DS18B20可以并聯(lián)在唯一的三線上,最多只能并聯(lián)8個,如果數(shù)量過多,會使供電電源電壓過低,從而造成信號傳輸?shù)牟环€(wěn)定,實現(xiàn)多點(diǎn)測溫; (4)工作電源: 直流35V; (5)在使用中不需要任何外圍元件; (6)測量結(jié)果以912位數(shù)字量方式串行傳送; (7)不銹鋼保護(hù)管直徑 6 ;(8)適用于DN1525, DN40DN250各種介質(zhì)工業(yè)管道和狹小空間設(shè)備測溫; (9)標(biāo)準(zhǔn)安裝螺紋 M10X1, M12X1.5, G1/2”任選; (10)PVC電纜直接出線或德式球型接線盒出線,便于與其它電器設(shè)備連接。 DS18B20功能特性描述DS18B20溫度傳感器的內(nèi)部存儲器還包括一個高速暫

29、存RAM和一個非易失性的可電擦除的EERAM。高速暫存RAM的結(jié)構(gòu)為9字節(jié)的存儲器,結(jié)構(gòu)如表2-1所示。前兩個字節(jié)包含測得的溫度信息,第3和第4字節(jié)TH和TL的拷貝,是易失的,每次上電復(fù)位時被刷新。高速暫存RAM的第6、7、8字節(jié)保留未用,表現(xiàn)為全邏輯第9字節(jié)讀出前面所有8字節(jié)的CRC碼,可用來檢驗數(shù)據(jù),從而保證通信數(shù)據(jù)的正確性。第5字節(jié)為配置寄存器,見表2-3,它的內(nèi)容用于確定溫度值的數(shù)字轉(zhuǎn)換分辨率。DS18B20工作時寄存器中的分辨率轉(zhuǎn)換為相應(yīng)精度的溫度數(shù)值。該字節(jié)各位的定義如表2-3所示。低5位都為1,TM是工作模式位,用于設(shè)置DS18B20在工作模式還是在測試模式,DS-18B20出廠

30、時該位被設(shè)置為0,用戶可改動,R1和R0決定溫度轉(zhuǎn)換的精度位數(shù),來設(shè)置分辨率。表2-1 高速暫存RAM字節(jié)數(shù)123456789存儲信息LSBMSBTH 1TL 2配置寄存器保留保留保留CRC表2-2 DS18B20 溫度轉(zhuǎn)換時間表R1R0分辨率/位溫度最大轉(zhuǎn)換時間/ms00993.750110187.510113751112750表2-3 配置寄存器TMR1R011111由表2-2可見,DS18B20分辨率越高,所需要的溫度數(shù)據(jù)轉(zhuǎn)換時間越長。當(dāng)DS18B20接收到溫度轉(zhuǎn)換命令后,開始啟動轉(zhuǎn)換。轉(zhuǎn)換后,溫度值就以16位帶符號的二進(jìn)制補(bǔ)碼形式存儲在高速暫存存儲器的第1、2字節(jié)。單片機(jī)可以通過單線接

31、口讀出該數(shù)據(jù),讀數(shù)據(jù)時低位在先,高位在后,數(shù)據(jù)格式以0.0625LSB形式表示。DS18B20中的溫度傳感器可完成對溫度的測量,以12位轉(zhuǎn)化為例。其中S為符號位。DS18B20的溫度值格式如表2-4所示。表2-4 DS18B20溫度值格式表LSByteBit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0MSByteBit15Bit14Bit13Bit12Bit11Bit10Bit9Bit8SSSSS當(dāng)符號位S0時,表示測得的溫度值為正值,可以直接將二進(jìn)制位轉(zhuǎn)換為十進(jìn)制;當(dāng)符號位S1時,表示測得的溫度值為負(fù)值。表2-5是部分溫度值對應(yīng)的二進(jìn)制度數(shù)據(jù)。表2-5 部分溫度對應(yīng)值表溫度二進(jìn)

32、制表示十六進(jìn)制表示+12507D0H+850550H+25.062500000001100100000191H+10.125000000001010000100A2H+0.500000000000000100008H000000000000010000000H-0.5FFF8H-10.125FF5EH-25.025FE6FH DS18B20供電方式(1)DS18B20寄生電源供電方式電路DS18B20采用寄生電源供電時,要想使DS18B20進(jìn)行精確的溫度轉(zhuǎn)換,I/O線必須保證在溫度轉(zhuǎn)換期間提供足夠的能量,由于每個DS18B20在溫度轉(zhuǎn)換期間工作電流達(dá)到1mA,當(dāng)幾個溫度傳感器掛在同一根I/O線

33、上進(jìn)行多點(diǎn)測溫時,靠上拉電阻是無法提供足夠的能量,會造成無法轉(zhuǎn)換溫度或溫度誤差極大。因此,只適用于單一溫度傳感器測溫,也不宜采用電池供電系統(tǒng),并且電源電壓必須保證是5V。當(dāng)電源電壓下降時,會使測量的誤差變大。(2)DS18B20的外部電源供電方式DS18B20采用外部供電時,I/O線不需要強(qiáng)上拉電壓,同時在總線上可以掛接多個DS18B20傳感器,組成多點(diǎn)測溫系統(tǒng)。但要注意在外部供電的方式下,DS18B20的GND引腳不能懸空,否則讀取的溫度總是85。但在proteus仿真中VCC和GND均懸空,否則仿真錯誤。比較上述兩種供電方式后認(rèn)為外部電源供電方式對電源要求比電源供電方式優(yōu)越些且穩(wěn)定性好,故

34、在此設(shè)計中采用外部電源供電方式供電電路。仿真電路如下圖2-4:圖2-4 采用外部供電的測溫電路2.5 主控系統(tǒng)主控系統(tǒng)采用單片機(jī)控制。單片機(jī)的晶振與復(fù)位電路如圖2-5所示,單片機(jī)選用的是ATMEL公司的AT89S52的8 位單片機(jī),晶體振蕩器選12MHZ,C5,C6為22pF石英電容,與晶體振蕩器構(gòu)成時鐘電路。電容C7,電阻R7、R8和按鍵S1構(gòu)成上電復(fù)位和手動復(fù)位電路。圖2-5 晶振與復(fù)位電路AT89S52是美國ATMEL公司生產(chǎn)的低電壓,高性能CMOS8位單片機(jī),片內(nèi)含4KB的可反復(fù)擦寫的只讀程序存儲器(PEROM)和128B的隨機(jī)存取數(shù)據(jù)存儲器(RAM),器件采用ATMEL公司的高密度,

35、非易失性存儲技術(shù)生產(chǎn),兼容MCS-51指令系統(tǒng),片內(nèi)置通用8位中央處理器(CPU)和Flash存儲單元,功能強(qiáng)大AT89S52單片機(jī)可為您提供許多高性價比的應(yīng)用場合,可靈活應(yīng)用于各種控制領(lǐng)域。2.6 輸入控制輸入控制如圖2-6所示,采用的按鍵控制,這樣不僅減少的制作成本而且便于做。通過74LS373的通斷進(jìn)行按鍵信號的傳輸,當(dāng)74LS373被鎖定時,按鍵信號不能傳入單片機(jī),從而達(dá)到按鍵的鎖定作用。圖2-6 輸入電路2.7 顯示部分LED數(shù)碼管實際上是由七個發(fā)光管組成8字形構(gòu)成的,加上小數(shù)點(diǎn)就是8個。這些段分別由字母a、b、c、d、e、f、g、p來表示。當(dāng)數(shù)碼管特定的段加上電壓后,這些特定的段就

36、會發(fā)亮,以形成我們眼睛看到的字樣了。如:顯示一個“2”字,那么應(yīng)當(dāng)是a亮b亮g亮e亮d亮f不亮c不亮p不亮。LED數(shù)碼管有微亮亮和超亮等不同之分,也有0.5寸、1寸等不同的尺寸。小尺寸數(shù)碼管的顯示筆畫常用一個發(fā)光二極管組成,而大尺寸數(shù)碼管是由二個或多個發(fā)光二極管組成,一般情況下,單個發(fā)光二極管的管壓降為1.8V左右,電流不超過30mA。發(fā)光二極管的陽極連接到一起連接到電源正極稱為共陽極數(shù)碼管,發(fā)光二極管的陰極連接到一起連接到電源負(fù)極稱為共陰極數(shù)碼管。常用LED數(shù)碼管所顯示的數(shù)字和字符是0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F。 顯示電路見圖2-7。圖2-7 顯示電路LED

37、數(shù)碼管引腳共陰和共陽兩種方式:電源VCC通過1個1K的排阻與LED相連,VCC串接個電阻后和GND接在任意2個腳上,組合有很多,但總有一個LED會發(fā)光的,找到一個就夠了,然后GND不動,VCC(串電阻)逐個碰剩下的腳,如果有多個LED(一般是8個),那它就是共陰。相反用VCC不動,GND逐個碰剩下的腳,如果有多個LED(一般是8個),那它就是共陽。也可以直接用數(shù)字萬用表,將檔位撥到二極管通斷性測試檔,這時紅表筆代表電源的正極,黑表筆代表電源的負(fù)極,然后在引腳上進(jìn)行逐個測試,以確定是共陽還是共陰。一般十個引腳分別為7個段加2個公共加一個小數(shù)點(diǎn)。公共端一般在中間或在兩邊,兩排,一排一個對稱。至于其

38、他引腳的排序你可以自己量出來。先假設(shè)是共陰極或共陽極,假設(shè)中間那個就是公共端,用數(shù)字萬用表逐個判斷即可,如果判斷錯誤不亮,就更改假設(shè),繼續(xù)判斷。直到假設(shè)正確,也就是說判斷正確,那么引腳的順序和位置就出來。數(shù)碼管所使用的電流與電壓(1)電流:靜態(tài)時,推薦使用10-15mA;動態(tài)時,16/1動態(tài)掃描時,平均電流為4-5mA,峰值電流50-60mA。(2)電壓:查引腳排布圖,看一下每段的芯片數(shù)量是多少?當(dāng)紅色時,使用1.9V乘以每段的芯片串聯(lián)的個數(shù);當(dāng)綠色時,使用2.1V乘以每段的芯片串聯(lián)的個數(shù)。2.8 其他功能部分(1)出水控制當(dāng)MOT輸出低電平時,三極管處于截至區(qū),集電極和發(fā)射極導(dǎo)通,接觸器常開

39、觸點(diǎn)閉合,出水管道導(dǎo)通。如圖2-8所示。圖2-8 出水控制(2)加熱控制當(dāng)HOT輸出低電平時,三極管處于截至區(qū),集電極和發(fā)射極導(dǎo)通,接觸器常開觸點(diǎn)閉合,線圈通電加熱。見圖2-9。圖2-9 加熱控制3 智能飲水機(jī)的軟件設(shè)計3.1 系統(tǒng)分配方式在進(jìn)行微機(jī)控制系統(tǒng)設(shè)計時,除了系統(tǒng)硬件設(shè)計外,大量的工作就是如何根據(jù)每個生產(chǎn)對象的實際需要設(shè)計應(yīng)用程序。因此,軟件設(shè)計在微機(jī)控制系統(tǒng)設(shè)計中占重要地位。對于本系統(tǒng),軟件更為重要。在單片機(jī)控制系統(tǒng)中,大體上可分為數(shù)據(jù)處理、過程控制兩個基本類型。數(shù)據(jù)處理包括:數(shù)據(jù)的采集、標(biāo)度變換等。過程控制程序主要是使單片機(jī)按一定的方法進(jìn)行計算,然后再輸出,以控制其工作。為了完成

40、上述任務(wù),在進(jìn)行軟件設(shè)計時,通常把整個過程分成若干個部分,每一部分叫做一個模塊。所謂“模塊”,實質(zhì)上就是所完成一定功能,相對獨(dú)立的程序段,這種程序設(shè)計方法叫模塊程序設(shè)計法。模塊程序設(shè)計法的主要優(yōu)點(diǎn)是:(1)單個模塊比起一個完整的程序易編寫及調(diào)試;(2)模塊可以共存,一個模塊可以被多個任務(wù)在不同條件下調(diào)用;(3)模塊程序允許設(shè)計者分割任務(wù)和利用已有程序,為設(shè)計者提供方便。本系統(tǒng)軟件采用模塊化結(jié)構(gòu),由主程序、溫度檢測程序、顯示子程序、延時程序和其他相關(guān)程序等組成。 3.2 主程序設(shè)計程序的初始化主要包括三個環(huán)節(jié):(1)實現(xiàn)各種設(shè)置堆棧指針、定時器/計數(shù)器0初始化、以及開中斷、定時器/計數(shù)器啟動;(

41、2)實現(xiàn)LED顯示當(dāng)前水溫并能顯示預(yù)設(shè)的水溫;(3)不斷的進(jìn)行按鍵掃描,判斷是否有按鍵按下,如沒有按鍵按下,則返回顯示;如有按鍵按下,則根據(jù)所按鍵實現(xiàn)相應(yīng)的操作。人機(jī)對話功能鍵設(shè)置如下:(1)“出水”鍵:控制其出水和停止出水;(2)“加熱”鍵:控制其加熱和停止加熱;(3)“鎖定”鍵:用于鎖定其他所有按鍵;(4)“切換”鍵:用于將顯示器切換至溫度設(shè)定界面并開始設(shè)定溫度; (5)“設(shè)置溫度”鍵:以5為間隔在0至100之間以遞增方式設(shè)定水溫。主程序如下:void main() T=100; while(1) Lock_key(); if(Lock=0) keyscan(); if(flag2=0)

42、temp_display(); if(flag2=1) SEG_display(T,0); if(temp>=T*10) Temp_led=0;Hot=1;Hot_led=1; if(temp< T*10) Temp_led=1; if(temp>=1000)Beep=0;Hot=1;Hot_led=1; if(temp<1000) Beep=1; 主程序程序框圖如圖3-1所示:變量定義顯示按鍵掃描,判斷是否有鍵按下芯片初始化開始NY延時Y按鍵掃描,判斷是否有鍵按下NY按“出水”鍵,電機(jī)轉(zhuǎn)動按“加熱”鍵,加熱按“鎖定”鍵,其他鍵無效按“切換”鍵,切換至調(diào)溫按“設(shè)置溫度”

43、鍵,進(jìn)行溫度設(shè)置圖3-1 主程序框圖3.3 各模塊程序設(shè)計 溫度檢測程序設(shè)計溫度檢測運(yùn)用DS18B20芯片,因為其功能全面且精度高,完全可以滿足設(shè)計要求,它將檢測到的水溫送給單片機(jī),再由單片機(jī)輸出給顯示電路將實時水溫顯示出來。其程序流程圖如下:讀一個字節(jié)寫一個字節(jié)讀取溫度開始顯示溫度DS18B20初始化圖3-2 溫度檢測程序流程圖其程序段如下:void init_ds18b20()uchar x=0;DQ = 1; /DQ復(fù)位delay_us(10); /稍做延時DQ = 0; /單片機(jī)將DQ拉低delay_us(100); /精確延時 大于 480usDQ = 1; /拉高總線delay_u

44、s(10);x=DQ; /稍做延時后 如果x=0則初始化成功 x=1則初始化失敗delay_us(20); uchar ReadOneChar() uchar i; uchar dat=0; for (i=8;i>0;i-) DQ = 0; dat>>=1; DQ = 1; if(DQ) dat|=0x80; delay_us(10); return(dat); void WriteOneChar(uchar dat) uchar i; for (i=8; i>0; i-) DQ = 0; DQ = dat&0x01; delay_us(10); DQ = 1;

45、 dat>>=1; int ReadTem() int t; uchar a,b; init_ds18b20(); WriteOneChar(0xcc); / 跳過讀序號列號的操作 WriteOneChar(0x44); / 啟動溫度轉(zhuǎn)換 delay_us(200); init_ds18b20(); WriteOneChar(0xcc); /跳過讀序號列號的操作 WriteOneChar(0xbe); /讀取溫度寄存器等 a=ReadOneChar(); b=ReadOneChar(); t=b; t<<=8; t=t|a; return t;void temp_dis

46、play() uint temp_point;temp=ReadTem()*0.625; /將溫度的高位與低位合并 temp_point=temp%10; /取出小數(shù)位 SEG_display(temp/10,temp_point); 顯示程序設(shè)計顯示程序是負(fù)責(zé)點(diǎn)亮4支數(shù)碼管,并根據(jù)單片機(jī)送出的數(shù)據(jù)及時更新顯示的數(shù)據(jù),其程序流程圖如下:送段選信號送位選信號延時循環(huán)四次開始圖3-3 顯示程序流程圖其程序段如下:void SEG_display(uchar dat1,uchar dat2) P23=1; P0=tabledat1/100; P20=0; delay_us(80); P20=1; P

47、0=tabledat1/10%10; P21=0; delay_us(80); P21=1; P0=tabledat1%10|0x80; P22=0; delay_us(80); P22=1; P0=tabledat2; P23=0; delay_us(80); 鍵盤掃描程序鍵盤掃描程序的任務(wù)是在程序運(yùn)行過程中始終不停的檢測是否有按鍵被按下,如果檢測到有按鍵被按下,則進(jìn)入與該按鍵對應(yīng)的程序運(yùn)行;若該按鍵沒有被按下,則繼續(xù)檢測下一個按鍵,如此循環(huán),從而完成每一個按鍵所對應(yīng)的功能。該設(shè)計中第四個按鍵為鎖定鍵,當(dāng)檢測到鎖定鍵被按下時,其他按鍵均無效,只有當(dāng)檢測到鎖定鍵再次被按下,其他按鍵的功能才恢復(fù)

48、正常。其程序流程圖如下:開始按鍵1按下?延時2msY確定按鍵1按下?執(zhí)行按鍵1對應(yīng)程序Y繼續(xù)檢測下一按鍵循環(huán)NN圖3-4 鍵盤掃描程序流程圖其程序段如下:void keyscan() if(key1=0) delay_ms(2); if(key1=0) flag=flag; if(flag=1) Out=0; if(flag=0) Out=1; while(!key1); if(key2=0) delay_ms(2); if(key2=0) flag1=flag1;if(flag1=1) Hot=0;Hot_led=0;if(flag1=0)Hot=1;Hot_led=1; while(!ke

49、y2); if(key3=0) delay_ms(2); if(key3=0) if(flag2=1) T+=5; if(T>=101)T=0; while(!key3); if(key5=0) delay_ms(2); if(key5=0)flag2=flag2; while(!key5); void Lock_key() / 鎖定鍵盤 if(key4=0) delay_ms(2); if(key4=0) Lock=Lock; if(Lock=1) Lock_led=0; if(Lock=0) Lock_led=1; while(!key4); 延時程序void delay_us(uc

50、har i) / us延時函數(shù) while(i-); void delay_ms(uchar n) /延時10×n毫秒程序 uint i,j; for(i=0;i<n;i+) for(j=0;j<2000;j+); 4 調(diào)試及性能分析4.1 軟件調(diào)試軟件調(diào)試用Keil uVision2軟件,將寫好的程序編譯成16進(jìn)制文件,然后才可以在proteus中將編譯好的程序放入單片機(jī)進(jìn)行仿真,使用Keil uVision2對程序編譯的過程如下。4.1.1 新建工程在Keil uVision2中新建一個工程,使用AT89C52系列,如圖4-1所示。圖4-1 新建工程4.1.2 新建文

51、本在Keil uVision2中新建一個文本并保存,擴(kuò)展名為.c,如圖4-2所示。圖4-2 新建文本4.1.3 添加文本將新建的文本添加到所建工程中,如圖4-3所示。圖4-3 添加文本4.1.4 程序編譯在添加進(jìn)去的文本中輸入寫好的程序后編譯,顯示無誤后自動生成16進(jìn)制文件,此文件才可放入proteus中進(jìn)行仿真,如圖4-4所示。圖4-4 程序編譯4.2 硬件調(diào)試使用proteus仿真軟件對硬件電路進(jìn)行仿真,將編譯好的程序放入單片機(jī)中開始運(yùn)行程序。并通過按鍵檢驗各個功能的實現(xiàn),從而完成設(shè)計中所有要求的仿真。以下演示各模塊電路的proteus仿真。4.2.1 電源電路的仿真當(dāng)飲水機(jī)通電后,電源指

52、示燈亮,此時各模塊均通電,才能保證飲水機(jī)的正常工作。如圖4-5所示。圖4-5 電源電路的仿真4.2.2 出水電路模塊的仿真在通電狀態(tài)下按下出水鍵,電動機(jī)開始轉(zhuǎn)動,表示飲水機(jī)開始出水,如圖4-6所示。圖4-6 出水模塊的仿真4.2.3 加熱模塊電路的仿真在通電狀態(tài)下按下加熱鍵,飲水開始加熱,加熱指示燈(黃色)亮,再次按下加熱鍵則停止加熱,指示燈滅,如圖4-7所示。圖4-7 加熱模塊的仿真4.2.4 顯示模塊電路的仿真本設(shè)計采用4個LED來顯示當(dāng)前的水溫或設(shè)定的水溫,當(dāng)前水溫由DS18B20檢測到的溫度決定,如圖4-8所示。此時顯示溫度為55。圖4-8 顯示電路的方針4.2.5 報警電路的仿真(1)當(dāng)水加熱至沸騰后,飲水機(jī)報警電路工作,使其自動停止加熱并蜂鳴器響起、紅燈亮表示報警,如圖4-9;圖4-9 水沸騰時報警

溫馨提示

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

最新文檔

評論

0/150

提交評論