基于單片機智能電水壺控制系統設計論文_第1頁
基于單片機智能電水壺控制系統設計論文_第2頁
基于單片機智能電水壺控制系統設計論文_第3頁
基于單片機智能電水壺控制系統設計論文_第4頁
基于單片機智能電水壺控制系統設計論文_第5頁
已閱讀5頁,還剩35頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、 . . . 教學單位 信息工程系 學生學號 2091234141 本科畢業論文(設計)題 目基于單片機智能電水壺控制系統設計學生 俊 專業名稱 電子信息工程 指導教師 丁么明 鄔小林 2012年12月20日34 / 40基于單片機智能電水壺控制系統設計摘要:本課題設計介紹了MCS-51系列單片機為控制芯片,對電熱水壺工作進行控制的方法。通過電加熱電路對水進行加熱,并對水的溫度進行采樣,采樣信號通過DS18B20將數字量送入單片機系統,經微機處理后,結合鍵盤控制實現LCD1602顯示,并可實現對水的溫度的控制和超過水溫的報警系統。單片機控制熱水壺的硬件構成包括8051芯片、LM393芯片等組成

2、的單片機控制電路、溫度檢測電路、鍵盤與顯示電路和溫度加熱電路。整個系統的關鍵電路是單片機控制電路,完成信號的輸入和輸出的轉換,即可將溫度檢測電路采樣的輸入信號通過溫度傳感器進行處理加工后輸出到顯示器進行顯示,并可以通過控制器控制溫度,同時當水加熱超過指定的溫度以后,蜂鳴器工作報警,水溫低于設定的溫度值時,系統又開始自行運行,另外電水壺控制系統可以防止干燒。關鍵字:單片機;溫度控制;控制器Based on the SCM smart kettle control systemAbstract:The design of this project MCS-51 series single-chip

3、 controller chip control, electric kettle work. Water through the heating circuit of the electrically heated, and the temperature of the water is sampled, sampled signal by the DS18B20 will digital quantity fed to the microcontroller system, after computer processing, combining the keyboard control

4、for LCD1602 display, and to achieve the control on the temperature of the water and more than the water temperature alarm system. Microcontroller control Kettle hardware configuration including the 8051, LM393 chip microcontroller control circuit, temperature detection circuit, keyboard and display

5、circuit and temperature heating circuit. Key circuit of the entire system is the SCM control circuit, and signals the completion of the conversion of the input and output, the input signal can be sampled by the temperature detection circuit by the temperature sensor for processing processing output

6、to the display to display, and the temperature can be controlled by the controller, exceeds the specified temperature when the water was heated at the same time, the buzzer alarm, and when the water temperature is below the set temperature value, the system began to run on its own, another Kettle co

7、ntrol system can prevent dry 15.Key Words:SCM;Temperature control;Controller目 錄1、引言12、熱水壺控制系統相關技術總體概述32.1單片機簡述32.1.1單片機的組成32.1.2單片機的特點32.1.3單片機的應用42.2 keil軟件語言簡介52.3 方案選擇與相關技術62.3.1系統方案的選擇方案與論證62.3.2單片機芯片選擇方案與論證62.3.3顯示模塊的選擇方案與論證72.3.4報警部分選擇72.3.5電源電路選擇方案與論證72.4系統總體設計框圖83、電熱水壺控制系統的硬件設計93.1電源轉換電路93.2

8、單片機最小系統93.2.1單片機時鐘電路93.2.2單片機的復位電路103.2.3單片機的最小系統113.3溫度采集模塊123.4繼電器介紹123.5鍵盤與顯示電路133.5.1鍵盤輸入特點133.5.2LCD1602顯示器說明143.6 加熱電路和報警裝置153.6.1加熱電路153.6.2報警裝置163.7整體電路設計184、單片機的軟件設計184.1總的程序設計框圖184.2讀出溫度子程序194.3計算溫度子程序214.4溫度保持在某一設定值子程序225、系統聯合調試245.1硬件調試245.2軟件調試245.3整機調試246、結論25參考文獻26附錄27辭281、引言經過幾十年的發展,

9、中國電熱壺市場已經進入成熟期。前些日,在網上了解到,電熱水壺產量的復合增長率為26.36%,產值的復合增長率為35.00%,產量、出口量和銷量同步迅速增加。行業人士預測,2012年國電熱水壺預計銷售量在1400萬臺左右,市場規模將達到20億元。市場迅猛的增長使電熱水壺這個本無太多看點的小家電產品開始變的很引人注目2。國智能熱水壺市場概有比較智能化熱水壺和比較不智能化熱水壺兩種。比較智能化熱水壺一類,通過溫度傳感器測溫,將溫度信號傳送到單片機中進行處理,單片機根據溫度傳感器送來的溫度信號,做出相應命令,控制熱水壺的開關、功率等,并具備智能化的聲光報警系統等功能;而比較不智能化的智能熱水壺一類,通

10、過利用水沸騰時會產生蒸汽這一現象,用蒸汽壓力控制開關的閉合來實現智能熱水壺的控制,智能化程度較低1。對于常規的電熱水壺,只要接通電源,就開始加熱,直到水沸騰后通過蒸汽來產生聲音報警。這種設計有下面幾個方面的不足: (1)如水壺中沒水,電源誤接通時也會一直加熱,容易引起事故。(2)當只需要加熱到沸點以下某一溫度時,不能與時給出聲音報警信號。 (3)當水加熱沸騰后不能自動停止工作。 針對以上不足,在本設計方案中,用MC-51單片機作為控制芯片,管理整個電熱水壺的工作情況,構成了一個閉環控制系統,而且增加了三個按鍵和LCD1602顯示。它的工作情況和常規的熱水壺相比,有下面幾個方面的特點: (1)有

11、三個按鍵,可用來設置希望加熱到的溫度即報警的溫度。上電復位后,設置溫度初值為30度,每按一下K2按鍵,溫度設置值就會增加5度,每按一下K3按鍵,溫度設置值就會減少1度。 (2)K1這個按鍵還具有啟動電熱水壺開始工作的作用。當每次電源接通后,只有按鍵按下過之后,電熱水壺才開始加熱,這樣,可以防止電源誤接通時電熱水壺一直加熱,引發事故。 (3)當加熱到設置溫度時,單片機會控制停止加熱,并通過蜂鳴器給出聲音提示。 (4)LCD1602在設置溫度操作時顯示當前設置的溫度13。目前,單片機在工業控制、智能儀表、自動化設置、通信系統、信號處理等領域以與家用電器、高級玩具、辦公自動化設備等方面均得到廣泛的應

12、用。本文設計了一種以MCS-51系列單片機為控制芯片,對電熱水壺工作進行控制的方法。 單片機具有體積小,成本低,應用靈活的特點,能方便地組成各種智能化的設備和儀器。以MCS-51系列單片機為控制芯片制作的智能電熱水壺可靠性高,抗干擾性強,適用溫度圍廣,在各種惡劣的環境下都能可靠的工作。實時控制功能強:能對電熱水壺溫度傳感器采樣來的數據快速做出響應與處理,將實時水溫送到LED上顯示并控制加熱電路和報警。2、熱水壺控制系統相關技術總體概述2.1單片機簡述單片機,亦稱單片微電腦或單片微型計算機。它是把中央處理器(CPU)、隨機存取存儲器(RAM)、只讀存儲器(ROM)、輸入/輸出端口(I/O)等主要

13、計算機功能部件都集成在一塊集成電路芯片上的微型計算機。這種微型計算機因其制作在一塊芯片上而被稱為單片機。單片機是大規模集成電路技術發展的產物。單片機具有性能高、速度快、體積小、價格低、穩定可靠、應用廣泛、通用性強等突出優點。單片機的設計目標主要是增強“控制”能力,滿足實時控制(就是快速反應)方面的需要。因此,它在硬件結構、指令系統、I/O端口、功率消耗與可靠性等方面均有其獨特之處,其最顯著的特點之一就是具有非常有效的控制功能。因此,單片機又常常被人稱為微控制器。2.1.1單片機的組成單片機是微型機的一個主要分支,在結構上的最大特點是把CPU、存儲器、定時器和多種輸入/輸出接口電路集成在一塊超大

14、規模集成電路芯片上。就其組成和功能而言,一塊單片機芯片就是一臺計算機。單片機是通過部總線把計算機的各主要部件結為一體,其部總線地址總線、數據總線和控制總線。其中,地址總線的作用是在進行數據交換時提供地址,CPU通過它們將地址輸出到存儲器或I/O接口。數據總線的作用是在CPU與存儲器I/O接口之間,或存儲器與外圍設備之間交換數據,控制總線包括CPU發出的控制信號線和外部送入CPU的應答信號線等。2.1.2單片機的特點由于單片機的這種結構形式與它所采取的半導體工藝,使其具有很多顯著的特點,因而在各個領域都得到了迅猛的發展。單片機主要有如下特點:(1)有優異的性能價格比。(2)集成度高、體積小、有很

15、高的可靠性。單片機把各功能部件集成在一塊芯片上,部采用總線結構,減少各芯片之間的連線,大大提高了單片機的可靠性與抗干擾能力。另外,其體積小,對于強磁場環境易于采取屏蔽措施,適合在惡劣環境下工作。(3)控制功能強。為了滿足工業控制的要求,一般單片機的指令系統中均有極豐富的轉移指令、I/O口得邏輯操作以與位處理功能。單片機的邏輯控制功能與運行速度高于同一檔次的微機。(4)低功耗、低電壓,便于生產便攜式產品。(5)外部總線增加了IC(Inter-Integrated Circuit)與SPI(Serial Peripheral Interface)等串行總線方式,進一步縮小了體積,簡化了結構。(6)

16、單片機的系統擴展和系統配置交典型規,容易構成各種規模的應用系統。2.1.3單片機的應用由于單片機具有顯著的優點,它已成為科技領域的有力工具,人類生活的得力助手。它的應用遍與各個領域,主要表現在一下幾個方面:(1)單片機在智能儀表中的應用單片機廣泛地用于各種儀器儀表,是儀器儀表智能化,并可以提高測量的自動化程度,簡化儀器儀表的硬件結構,提高其性能價格比。(2)單片機在機電一體化中的應用機電一體化是機械工業發展的方向。機電一體化產品是指集成機械技術、微電子技術、計算機技術一體化,具有智能化特征的機電產品,例如微機控制機床等。單片機作為產品中的控制器,能充分發揮它們的體積小、可靠性高、功能強等優點,

17、可大大提高機械的自動化、智能化程度。(3)單片機在實時控制中的應用單片機廣泛地應用于各種實時控制系統中。例如,在工業測控、航空航天、尖端武器、機器人等各種實時控制系統中,都可以用單片機作為控制器。單片機的實時數據處理能力和控制能力,可使系統保持在最佳工作狀態,提高系統的工作效率和產品的質量。(4)單片機在分布式多機系統中的應用在比較復雜的系統中,常采用分布式多機系統。多機系統一般有若干臺功能各異的單片機組成,各自完成特定的任務,它們通過串行通信相互聯系、協調工作。單片機在這種系統中往往作為終端機,安裝在系統的某些節點上,對現場信息進行實時的測量和控制。單片機的高可靠性和強干擾能力,使它可以置于

18、惡劣環境的前段工作。(5)單片機在人類生活中的應用自從單片機誕生以后,它就步入了人類生活,如洗衣機、電冰箱、電子玩具、收錄機等家用電器配上單片機后,提高了智能化程度,增加了功能,備受人們喜愛。單片機使人類生活更加方便、舒適、豐富多彩。由ATMEL公司生產的AT89C51是一種低功耗、高性能CMOS8位微控制器,具有4K 在系統可編程Flash 存儲器。AT89C51有40個引腳,32個外部雙向輸入/輸出(I/O)端口,同時含2個外中斷口,2個16位可編程定時計數器,2個全雙工串行通信口,片上Flash允許程序存儲器在系統可編程,亦適于常規編程器。其將通用的微處理器和Flash存儲器結合在一起,

19、特別是可反復擦寫的Flash存儲器可有效地降低開發成本。其芯片引腳圖如圖1所示。圖1 AT89C51引腳圖2.2 keil軟件語言簡介Keil C51是美國Keil Software公司出品的51系列兼容單片機C語言軟件開發系統,與匯編相比,C語言在功能上、結構性、可讀性、可維護性上有明顯的優勢,因而易學易用。Keil C51軟件提供豐富的庫函數和功能強大的集成開發調試工具,全Windows界面。另外重要的一點,只要看一下編譯后生成的匯編代碼,就能體會到Keil C51生成的目標代碼效率非常之高,多數語句生成的匯編代碼很緊湊,容易理解。在開發大型軟件時更能體現高級語言的優勢。下面詳細介紹Kei

20、l C51開發系統各部分功能和使用。Keil C51生成的目標代碼效率非常之高,多數語句生成的匯編代碼很緊湊,容易理解。在開發大型軟件時更能體現高級語言的優勢。2.3 方案選擇與相關技術2.3.1系統方案的選擇方案與論證方案一 集成電路構成方案:特點是對整機邏輯結構了解的全面透徹,但電路結構比較復雜,元器件比較多,裝配用時長且成本高,調試難,故障率高。方案二 可編程FPGA/CPLD方案:目前的發展方向有廣闊的應用前景。它的功能強大,功能部件集成在芯片部,自動產生時鐘等相關功能。這種方案硬件成本相對較高,但軟件編程簡單,通常用在對時間精度要求較高的場合。方案三 單片機編程:用單片機設計電路,由

21、于使用軟硬結合的方式,所以電路結構簡單,調試C也比較方便。系統的功能一般與軟件設計相關,采用軟件編程實現電子秤稱量。通常用在對時間精度要求不高的場合。綜上所述,我選擇第三種方案進行設計。因為單片機從根本上改變了傳統的控制系統設計思想和設計方法。單片機代替了模擬電路或數字電路實現的大部分功能,現在已能通過軟件方法來實現,使用軟硬結合的方式,更好的實現數字中的設計。2.3.2單片機芯片選擇方案與論證本設計使用單片機作為系統的主控制器,而且以單片機為主控制器的設計,可以容易地將計算機技術和測量控制技術結合在一起,組成新型的只需要改變軟件程序就可以更新換代的“智能化測量控制系統。這種新型的智能儀表在測

22、量過程自動化、測量結果的數據處理以與功能的多樣化方面,都取得了巨大的進展。再則由于系統沒有其它高標準的要求,又考慮到本設計中程序部分比較大,根據總體方案設計的分析,設計這樣一個簡單的的系統,可以選用帶EPROM的單片機,由于應用程序不大,應用程序直接存儲在片,不用在外部擴展存儲器,這樣電路也可簡化,在這里選用ATMENL生產的AT89CXX系列單片機。AT89CXX系列與MCS-51相比有兩大優勢:第一,片存儲器采用閃速存儲器,使程序寫入更加方便;第二,提供了更小尺寸的芯片,使整個硬件電路體積更小。此外價格低廉、性能比較穩定的MCPU,具有4K×8ROM、256×8RAM、

23、2個16位定時計數器、4個8位I/O接口。這些配置能夠很好地實現本儀器的測量和控制要求。最后選擇了AT89C51這個比較常用的單片機來實現系統的功能要求。AT89C51部帶有4KB的程序存儲器,基本上已經能夠滿足需要。2.3.3顯示模塊的選擇方案與論證數據顯示是電水壺的一項重要功能,是人機交換的主要組成部分,它可以將測量電路測得的數據經過微處理器處理后直觀的顯示出來。數據顯示部分可以有以下兩種方案供選擇的組成有以下兩種方案可供選擇:方案一LED數碼管顯示。方案二LCD液晶顯示。LCD液晶顯示器是一種極低功耗顯示器,從電子表到計算器,從袖珍時儀表到便攜式微型計算機以與一些文字處理機都廣泛利用了液

24、晶顯示器,因此最終選用了LCD液晶顯示7。2.3.4報警部分選擇智能電水壺一般都具有報警和通訊功能,報警主要用于系統運行出錯、當實時溫度達到預設定值為提醒用戶而設置。在本系統中,設置報警的目的就是在實時溫度達到預設定值時,發出聲報警信號,提示用戶,防止損壞器具。報警電路是由單片機的I/O口來控制的,當測量的溫度超過系統設計所設定的數值時,通過程序使單片機的I/O值,從而三極管導通,使蜂鳴器SPEAKER發出報警聲。2.3.5電源電路選擇方案與論證(1)電源分析電源是提供電壓的裝置。把其他形式的能轉換成電能的裝置叫做電源。電源是向電子設備提供功率的裝置,也稱電源供應器,它提供計算機中所有部件所需

25、要的電能。電源功率的大小,電流和電壓是否穩定,將直接影響電子系統的工作性能和使用壽命。有條件的可以使用電源模塊來為系統供電。一般電路的設計電源分為兩種:系統自帶電源電路,能夠從市電中提取電源供設備使用。另一種是通過外部電路提供電源,該電路適用于不太常使用或需要與其他電路配合使用的電路中。(2)電源電路選擇:方案一:采用線性電源電路。該電路設計簡單,工作穩定,制作成本低,制作方便但功耗大,體積笨重,有一定的發熱量,并切效率較低一般低于60%。方案二:采用開關電源電路。此類電路工作在高頻狀態,無需體積笨重的工頻變壓器。但該電路制作成本高,需要使用專用的高頻變壓器。此類變壓器需要專門制作,才能完成需

26、要的功能,電源工作效率高,轉換率可以達到80%以上。此類電源一般工作在需要大功率的工作場合。 根據本電路的設計目的,需要的供電功率并不大但穩定的電源,而本設計的主要目的是制作智能電水壺系統,沒有必要在這里花費太多的精力。因此電路采用線性電源進行供電5。2.4系統總體設計框圖單片機控制熱水壺的硬件構成包括8051芯片、地址鎖存器等組成的單片機控制電路、溫度檢測電路、鍵盤與顯示電路和溫度加熱電路。整個系統的關鍵電路是單片機控制電路,是整個控制的核心,完成信號的輸入和輸出的轉換,即可將溫度檢測電路采樣的輸入的信號輸出到顯示器進行顯示,并可以通過鍵盤對溫度進行控制,與此同時當水加熱超過指定的溫度以后,

27、蜂鳴器工作報警4。硬件設計的總電路連接框圖如圖2:單片機AT89C51報警電路鍵盤和顯示電路加熱電路溫度檢測電路圖2件設計的總電路連接框圖3、電熱水壺控制系統的硬件設計通過2.4節對電熱水壺控制系統框圖的總體設計分析,可以把硬件電路分成六個子模塊,即給芯片供電的+5V的電源轉換電路、單片機最小系統、溫度檢測電路、繼電器、鍵盤顯示電路以與加熱和報警電路。3.1電源轉換電路圖3源轉換電路T1為電為源變壓器,它將交流電網電壓220V變成整流電路要求的交流電壓,電壓經過四個二極管兩兩導通整流濾波后,再經過三端穩壓芯片7805就可以將原來交流220V的電壓轉換成直流電壓為+5V,即可以得到報警電路和溫度

28、檢測電路所需要的電壓值14。3.2單片機最小系統3.2.1單片機時鐘電路單片機部有一個用于構成振蕩器的高增益反相放大器,引腳X1和X2分別是此放大器的輸入和輸出端。在X1和X2兩端跨接晶體就構成了穩定的自激振蕩器,其發出的脈沖直接送入部的時鐘電路。X1和X2兩端將晶振、電容C1和C2與部的反相放大器連接起來組成并聯諧振電路,圖中C1、C2為22PF,對頻率有微調作用,振蕩頻率圍在212MHZ。此設計單片機時鐘電路如圖4示:圖4單片機的時鐘電路3.2.2單片機的復位電路系統開始運行和重新啟動靠復位電路來實現,復位使CPU和其它部件處于一個確定的初始狀態,從這個狀態開始工作。此設計單片機的復位電路

29、如圖5示:圖5單片機的復位電路在單片機運行期間,利用按鍵也可以完成復位操作。單片機復位操作使單片機進入初始化狀態。復位后,程序計數器PC=0000H,因此,程序從0000H地址單元開始執行。運行中的復位操作不會改變片RAM的容。復位是靠外部電路實現的。3.2.3單片機的最小系統所謂最小系統,是指一個真正可用的單片機最小配置系統,其作用主要是為了保證單片機系統能正常工作。對于單片機部資源已能滿足系統需要的,可直接采用最小系統。51型片有4K的ROM/EPROM,因此,只需要外接晶體振蕩器和復位電路就可構成最小系統。本設計的單片機最小系統如圖6示。 圖6單片機最小系統在外部振蕩電路中,單片機的X1

30、和X2管腳分別接至由11.0596MHZ晶振和兩個22PF電容構成的振蕩電路兩側,為電路提供正常的時鐘脈沖。在復位電路中,單片機RESET管腳一方面經10uF的電容接至電源正極,實現上電自動復位,另一方面經開關S接電源。其主要功能是把PC初始化為0000H,是單片機從0000H單元開始執行程序,除了進入系統的初始化之外,當由于程序出錯或者操作錯誤使系統處于死鎖狀態時,為了擺脫困境,也需要按復位鍵重新啟動,因此,復位電路是單片機系統中不可缺少的一部分10。3.3溫度采集模塊溫度由 DALLAS 公司生產的數字溫度傳感器 DS18B20 采集。DS18B20 測溫圍為-55+125,測溫分辨率可達

31、 0.0625,被測溫度用符號擴展的16位補碼形式串行輸出。CPU只需一根端口線就能與諸多DS18B20通信,占用微處理器的端口較少,可節省大量的引線和邏輯電路。 DS18B20部有一個9字節的高速存儲器用于存儲溫度值。其中前兩個字節是測得的溫度數據第1字節的容是溫度的低八位,第2字節是溫度的高八位;第3和第4字節是溫度上限TH與溫度下限TL的易失性拷貝,第5字節是結構寄存器的易失性拷貝,這三個字節的容在每一次上電復位時被刷新;第 6、7、8這三個字節用于部計算;第9個字節是冗余檢驗字節,可用來保證通信的正確性。當溫度轉換命令發出后,經轉換所得的溫度值以二字節補碼形式存放在此存儲器的第1和第2

32、個字節。單片機可通過單線接口讀到該數據,讀取時低位在前,高位在后,其中高5位是符號位,中間7位是整數位,最低4位是小數位。 DS18B20最大的特點是單總線數據傳輸方式,因此對讀寫的數據位有著嚴格的時序要求。時序包括:初始化時序、讀時序、寫時序。每一次命令和數據的傳輸都是從單片機啟動寫時序開始,如果要求DS18B20回送數據,在進行寫命令后,單片機需啟動讀時序完成數據接收。數據和命令的傳輸都是低位在先11。3.4繼電器介紹本設計是用單片機控制繼電器達到以弱控強的電路,下面再來介紹一下單片機和強電之間的橋梁-電磁繼電器。電磁繼電器是有觸點電繼電器是有觸點電繼電器的一種。它是利用電磁效應實現電路開

33、、關控制作用的原件,廣泛應用在電子設備、儀器儀表與自動化設備中。在各種自動設備中,都要求用一個低電壓電路提控制一個高電壓的電器電路。這樣不僅可以為電子線路和電器電路提供良好的電隔離,還可以保護電子電路和人員安全。首先看看繼電器的驅動,如圖7所示:圖7繼電器的驅動這是典型的繼電器驅動電路圖,這樣的電路圖在網絡上隨處可以搜到,并且標準教科書上一般也是這樣的電路圖。單片機是一個弱電器件,一般情況下他們大都工作在5V甚至更低。驅動電流在A級以下。而要把它用于一些大功率場合,比如控制電動機,顯然是不行的。所以,就要有一個環節來銜接,這個環節就是所謂的“功率驅動”。繼電器驅動就是一個典型的、的功率驅動環節

34、。在這里,繼電器驅動含有兩個意思:一是對繼電器進行驅動,因為繼電器本身對于單片機來說就是一個功率器件:還有就是繼電器去驅動其他負載,比如繼電器可以驅動中間繼電器,可以直接驅動接觸器,所以,繼電器驅動就是單片機與其他大功率負載接口。3.5鍵盤與顯示電路3.5.1鍵盤輸入特點(1)由于機械觸點的彈性作用,一個按鍵開關在閉合時不會馬上穩定地接通,在斷開時也不會一下斷開。因而,在閉合和斷開的瞬間均伴隨著一連串的抖動,抖動時間的長短由按鍵的機械特性決定,一般為510ms,為了確保按鍵的狀態,必須消除按鍵抖動的影響,這也是按鍵抗干擾的主要的一個方面。(2)消除按鍵抖動影響通常有硬件、軟件兩種方法。本論文采

35、用軟件消抖方法。軟件消抖方法即檢測出鍵閉合后執行一個延時程序,5ms10ms的延時,讓前沿抖動消失后再一次檢測鍵的狀態,如果仍保持閉合狀態電平,則確認為真正有鍵按下。當檢測到按鍵釋放后,也要給5ms10ms的延時,待后沿抖動消失后才能轉入該鍵的處理程序。3.5.2LCD1602顯示器說明現在的字符型液晶模塊已經是單片機應用設計中最常用的信息顯示器件了。1602型LCD顯示模塊具有體積小,功耗低,顯示容豐富等特點。1602型LCD可以顯示2行16個字符,有8位數據總線D0D7和RS,R/W,EN三個控制端口,工作電壓為5V,并且具有字符對比度調節和背光功能6。1602型LCD的接口信號說明如表1

36、示。表1型LCD的接口信號說明編號符號引腳說明編號符號引腳說明1VSS電源地9D2Data I/O2VDD電源正極10D3Data I/O3V0液晶顯示偏壓信號11D4Data I/O4RS數據/命令選擇端(H/L)12D5Data I/O5R/W讀寫選擇端(H/L)13D6Data I/O6E使能信號14D7Data I/O7D0Data I/O15BLA背光源正極8D1Data I/O16BLK背光源負極1602型LCD的主要技術參數如表2示。表2型LCD的主要技術參數顯示容量16X2個字符芯片工作電壓4.55.5V工作電流2.0mA(5.0V)模塊最佳工作電壓5.0V字符尺寸2.95X4

37、.35(WXH)mm用直接訪問方式即微處理器把液晶顯示模塊當做存儲器或I/O設備直接掛在總線上,模塊8位數據總線與微處理器的數據總線相連,用讀操作或寫操作信號與地址信號共同產生控制信號3。讀狀態:輸入:RS=L,RW=L, E=H 輸出:D0D7=狀態字讀數據:輸入:RS=H,RW=H, E=H 輸出:無寫指令:輸入:RS=L,RW=L, D0D7=指令碼,E=高脈沖輸出:D0D7=數據寫數據:輸入:RS=H,RW=L, D0D7=數據, E=高脈沖輸出:無其具體電路如圖8所示:圖8電路原理圖3.6 加熱電路和報警裝置3.6.1加熱電路電熱器件由雙向可控硅KS控制,KS由光電耦合器 4N25和

38、晶體管9013觸發。單片機8051的P2.0端輸出的觸發信號,經7407后,送到光電耦合器4N25。P2.0端輸出高電平時,4N25沒有電流輸入,晶體管T截止,雙向晶閘管KS關斷,電熱器不加熱。當P2.0端輸出低電平時,7407輸出低電平,4N25的輸入電流約為18m,輸出端的電流大3.6m,經晶體管9013放大后,雙向可控硅門極的電流可達200 m,雙向可控硅導通,電熱器加熱。電阻的作用是限制觸發電流,當雙向可控硅KS的功率較小時,的值可由30改為1008。圖9加熱電路圖過零檢測電路由變壓器B的其中一個繞組和電容器組成。產生2.5V的交流電壓,通過交連到INT0和INT1端。INT0是過零檢

39、測端,它可對過零的上升信號檢測而產生中斷;INT1也是過零檢測端,它可對過零的下降信號檢測而產生中斷。把INTO和INT1產生的中斷綜合處理,即可得到電源電壓過零的時刻。選用不同的電熱器件,啟動的過程也不一樣。對于電阻率不隨溫度變化的電熱器件,可以直接啟動,即在電壓過零時觸發雙向可控硅KS。對于電阻率隨溫度變化的電熱器件,通常使用降壓啟動方式,即開始通電時,電壓逐漸上升,使電熱器的工作電流在KS允許的圍以。過一定的時間后,電熱器件的工作電壓才達到額定電壓。3.6.2報警裝置首先通過按鍵對要達到的溫度進行設定,通過加熱裝置對水進行加熱,當加熱溫度達到或超過設定值時,將加熱信號送到8051中,通過

40、微處理器處理后,輸出到P1口報警,并通過三極管驅動揚聲器或蜂鳴器報警。如圖10所示:圖10報警裝置的硬件電路圖3.7整體電路設計整體電路包含電源電路、顯示電路、傳感器電路、鍵盤電路、單片機控制電路組成。其整體電路原理圖如圖11所示:圖11整體設計原理圖4、單片機的軟件設計4.1總的程序設計框圖本系統的軟件實現沒有高難度的技巧和算法,但作為一個實用系統,對其可靠性有較高的要求。單片機的I/O口方向是可編程的,在程序中應正確設置其方向,保證單片機的正常工作。關于詳細程序清單在此省略,圖12給出了主程序流程圖,顯示部分控制是通過定時器中斷來實現的9。開始初始化獲取溫度報警與溫度上限比較轉換并顯示Y圖

41、12 主程序流程圖#include<reg52.h>#include<intrins.h>#define uint unsigned int#define uchar unsigned char/1602液晶控制接口/sbit rs=P26;sbit en=P27;/sbit jian_ce=P33;/缺水檢測端口/按鍵/sbit key1=P34;sbit key2=P35;sbit key3=P36;/sbit beep=P20; /蜂鳴器接口/sbit DQ=P22;/溫度傳感器接口/sbit jdq=P12;/繼電器接口uint wen_du; uint sha

42、ng,xia;uchar num;bit auto_flag;/自動狀態bit auto_ok;/自動加熱okbit mode_flag;/手動模式bit mode_ok;/手動加熱ok4.2讀出溫度子程序讀出溫度子程序的主要功能是讀出RAM中的9字節,在讀出時需進行CRC校驗,校驗有錯時不進行溫度數據的改寫。其程序流程圖如圖13示:發DS18B20復位命令發跳過ROM命令發讀取溫度命令讀取操作,CRC校對duduidui dui驗移入溫度暫存器結束CR校驗正確?9字節YNNY圖13讀溫度流程圖/*讀取ds18b20當前溫度*/void deal_with()uint temp1,temp2;

43、uchar a=0;uchar b=0;uchar t=0;Init_DS18B20();WriteOneChar(0xCC); / 跳過讀序號列號的操作WriteOneChar(0x44); / 啟動溫度轉換delay_18B20(100); / this message is wery importantWriteOneChar(0xCC); /跳過讀序號列號的操作WriteOneChar(0xBE); /讀取溫度寄存器等(共可讀9個寄存器) 前兩個就是溫度delay_18B20(100);a=ReadOneChar(); /讀取溫度值低位b=ReadOneChar(); /讀取溫度值高位

44、 wen_du=(b*256+a)>>4)*10; /當前采集溫度值除16得實際溫度值4.3計算溫度子程序計算溫度子程序將RAM中讀取值進行BCD碼的轉換計算,并進行溫度值正負的判定,其程序流程圖如圖14所示。開始溫度值取補碼至“”標志計算小數位溫度“BCD”值至“+”標志計算整數度“BCD”值結束溫度零下?N圖14計算溫度流程圖void write_1602_she(uchar add,uint date)/設定溫度顯示數據uchar shi,ge;shi=date/100;ge=date%100/10;yj1602_write_(0x80+add);yj1602_write_d

45、ate(0x30+shi); /0x30碼制轉換yj1602_write_date(0x30+ge);yj1602_write_date(0Xdf);yj1602_write_date('C');4.4溫度保持在某一設定值子程序溫度保持在某一設定值子程序主要是對溫度低于預定值時進行重新啟動系統進行加熱操作,程序流程圖如圖15所示。YY開始報警并停止加熱是否達到預定?低于預定值?結束N圖15溫度保持在某一設定值子流程圖void bi_jiao()if(auto_flag=1)if(auto_ok=0)if(wen_du>=1000)yj1602_init();jdq=1;/

46、自動加熱時溫度 達到100度,關閉繼電器auto_ok=1;/自動加熱完成beep=0;if(wen_du<=shang-100)if(mode_ok=1)yj1602_init();jdq=0;/手動調溫加熱時溫度 低于設定溫度10度,開啟繼電器mode_ok=0;/開始加熱5、系統聯合調試5.1硬件調試用直觀法檢查電路焊接是否正確,元器件極性是否正確;用數字萬用表測量各引腳之間是否連接正常,避免短接、斷接。5.2軟件調試使用keil uVision3編寫程序,編寫各個程序模塊并聯合調試,直至不再出現錯誤,設置晶振頻率并生成Hex文件。通過ISP下載器將程序下載到單片機AT89C51芯

47、片,觀看單片機是否能工作。5.3整機調試1.連接好各硬件電路。2.將程序下載到單片機,找電路主要點測量電路中電壓,看是否能正確顯示,觀察各外設是否能正常工作。3.將電路連接正常,進行功能測試。 6、結論本設計完成了單片機對電熱水壺的控制。整個系統的關鍵電路是單片機控制電路,該電路是整個控制的核心,完成信號的輸入和輸出的轉換。另一個重要電路是溫度檢測和加熱控制電路,該電路完成了溫度信號的采樣和溫度的控制,并將信號送到單片機的控制電路中。還要通過程序的設計實現各功能,設計安全、可靠,完全能夠滿足實際需要。在本次設計中,學生掌握了一定的單片機硬件結構知識,設計出硬件電路,并通過編程使部分硬件功能得到

48、了實現,使書本上的知識得到了應用。參考文獻1朱冬梅.電水壺技術外觀雙突破J.現代家電,2010,23:58-592郭公兵.電水壺產能與設計趨勢J. 現代家電,2011,19:48-503亮.液晶顯示模塊LCD1602應用J .電子制作,20074施波林. 電水壺管理系統P.CN, G05B19/042,2012-08-015扈羅全. 電水壺加熱盤與其構成的電水壺P.CN, A47J27/21,2012-08-016康華光電子技術基礎模擬部分(第五版)M高等教育,19957時進.數字電子技術基礎M.科學技術8大欽電子技術基礎實驗M高等教育,20009譚浩強C程序設計教程M清華大學,201010王

49、福瑞.單片機測控系統設計大全.航空航天大學,2002年11春恰.數字溫度傳感器DS18B20測溫的應用J.電器時代,2010,10,16-11712泉溪單片機原理與應用實例仿真M航天航空大學,200913林思軒. 電熱水壺結構的一種創新設計J. 家電科技,2009,Z1:55-5814金平.電子系統設計M.國防工業,2007,18-3015Wang Min. The research of measurement and control system of temperature and humidity, carbon dioxide in GreenhouseJ . March 2007附

50、錄整體電路設計:硬件實物圖:PCB圖:程序清單:#include<reg52.h>#include<intrins.h>#define uint unsigned int#define uchar unsigned char/1602液晶控制接口/sbit rs=P26;sbit en=P27;/sbit jian_ce=P33;/缺水檢測端口/按鍵/sbit key1=P34;sbit key2=P35;sbit key3=P36;/sbit beep=P20; /蜂鳴器接口/sbit DQ=P22;/溫度傳感器接口/sbit jdq=P12;/繼電器接口uint w

51、en_du; uint shang,xia;uchar num;bit auto_flag;/自動狀態void Init_DS18B20() uchar x=0; DQ=1; /DQ復位 delay_18B20(8); /稍做延時 DQ=0; /單片機將DQ拉低 delay_18B20(80); /精確延時 大于 480us DQ=1; /拉高總線 delay_18B20(14); x=DQ; /稍做延時后 如果x=0則初始化成功 x=1則初始化失敗 delay_18B20(20);/*ds18b20讀一個字節*/ uchar ReadOneChar()uchar i=0;uchar dat

52、= 0;for (i=8;i>0;i-) DQ = 0; / 給脈沖信號 dat>>=1; DQ = 1; / 給脈沖信號 if(DQ) dat|=0x80; delay_18B20(4); return(dat);/*ds18b20寫一個字節*/ void WriteOneChar(uchar dat) uchar i=0; for (i=8; i>0; i-) DQ = 0; DQ = dat&0x01; delay_18B20(5); DQ = 1; dat>>=1; /*讀取ds18b20當前溫度en=0;delay(1);void yj1602_init() /液晶初始化yj1602_write_(0x38);yj1602_wr

溫馨提示

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

評論

0/150

提交評論