基于單片機(jī)的溫度控制畢業(yè)設(shè)計論文
《基于單片機(jī)的溫度控制畢業(yè)設(shè)計論文》由會員分享,可在線閱讀,更多相關(guān)《基于單片機(jī)的溫度控制畢業(yè)設(shè)計論文(26頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、 基于單片機(jī)的溫度控制 設(shè) 計 者: 學(xué) 號: 班 級: 指導(dǎo)老師: 畢業(yè)設(shè)計(論文)任務(wù)書 專業(yè)(班): 姓名: 課題名稱、主要內(nèi)容和基本要求 課題名稱:基于單片機(jī)的溫度控制 主要內(nèi)容: 隨著人們生活質(zhì)量的提高,酒店廠房及家庭生活中都會見到溫度控制的影子,特別是在某些場合上,我們必須要對周圍溫度進(jìn)行控制,這樣才不會使這些場合在過高的溫下工作從而導(dǎo)致機(jī)器故障或發(fā)生不必要的意外,溫度控制將更好的服務(wù)于社會目前。本設(shè)計主
2、要采用了AVR單片機(jī)Atmega16L作為控制核心設(shè)計的一個溫度控制系統(tǒng)。通過對環(huán)境周圍溫度的測量,來達(dá)到對溫度的控制和調(diào)節(jié)功能。 基本要求: 1. 調(diào)查溫控系統(tǒng)的應(yīng)用及市場前景 2. 掌握溫控系統(tǒng)的工作原理 3. 完成溫控系統(tǒng)硬件設(shè)計、硬件調(diào)試 4. 完成溫控系統(tǒng)軟件設(shè)計調(diào)試 5. 試運(yùn)行、測試,完成作品 6. 完成設(shè)計論文 技術(shù)指標(biāo): 1. 溫度測量范圍:-50℃~110℃ 2. 溫度測量準(zhǔn)確度:0.5℃ 3. DS18B20輸出控制 4. 降溫報警系統(tǒng)的控制 驗(yàn)收標(biāo)準(zhǔn): 1. 畢業(yè)設(shè)計論文符合要求 2. 作品演示功能正常 3. 技術(shù)指標(biāo)達(dá)到要求
3、 進(jìn)度安排 周次 工作內(nèi)容 執(zhí)行情況 上學(xué)期 搜集資料、方案構(gòu)思、明確題目要求,提交開題報告 第1-5周 硬件電路設(shè)計與制作 第6-7周 硬件電路設(shè)計與制作及調(diào)試 第8-10周 軟件設(shè)計 第11-12周 系統(tǒng)程序設(shè)計、調(diào)試 第13-15周 寫設(shè)計報告(論文) 第16周 答辯,演示制作成品、講解設(shè)計思路、回答提問 ----- l 指導(dǎo)教師評語 指導(dǎo)教師簽名: 摘要 本設(shè)計的主要內(nèi)容和特點(diǎn) 隨著時代的進(jìn)步和
4、發(fā)展,人們生活水平的不斷提高,單片機(jī)技術(shù)已經(jīng)普及到我們生活,工作,科研,各個領(lǐng)域,已經(jīng)成為一種比較成熟的技術(shù)。 本設(shè)計所介紹的基于單片機(jī)的溫度控制的主要特點(diǎn)是:具有讀數(shù)方便,測溫范圍廣,測溫準(zhǔn)確,其輸出溫度采用數(shù)字顯示,主要用于對測溫比較準(zhǔn)確的場所,或科研實(shí)驗(yàn)室使用,該設(shè)計控制器使用AVR單片機(jī)Atmega16L作為控制核心;測溫傳感器使用DS18B20,能更好更方便的讀取外部溫度值;降溫控制系統(tǒng)采用低壓直流電風(fēng)扇,當(dāng)溫度高于設(shè)定最高限溫度時,LED燈及蜂鳴器便會發(fā)出報警信號,同是降溫風(fēng)扇也會啟動達(dá)到降溫作用;溫度顯示使用液晶模塊來實(shí)現(xiàn),這樣就能準(zhǔn)確達(dá)到以上要求。 外文資料: Wit
5、h the era of progress and development, the continuous improvement of peoples living standard, SCM technology has spread to our lives, work, research, in various fields, has become a relatively mature technology. The design presented by the SCM based on the temperature control of the main features a
6、re: a reading of convenience, a wide range of temperature measurement, accurate temperature measurement, using figures show that the output temperature, mainly used for more accurate temperature measurement on the premises, or scientific research Laboratory use, the design controller use as a contro
7、l Atmega16L AVR microcontroller core temperature sensors use DS18B20, can be better and more convenient to read the outside temperature; cooling control system uses low-voltage direct current electric fans, when the temperature is higher than the set Limit the maximum temperature, LED lights and buz
8、zer alarm signal will be issued with a cooling fan will start to cool down; temperature that the use of LCD modules to achieve so that we can accurately meet the above requirements. 目錄 一. 前 言 7 二. 方案論證與比較 8 1. 方案一 8 2. 方案二 8 三. 系統(tǒng)的基本原理及使用說明 9 四. 硬件設(shè)計方案 9 1. 單片機(jī)主板電路 10 2. 傳感器數(shù)據(jù)采集電路
9、10 3. 溫度顯示電路 10 4. 報警降溫電路 11 五. 軟件設(shè)計方案 11 1. 主程序 12 2. 讀出溫度子程序 13 3. 溫度轉(zhuǎn)換命令子程序 13 六. 主要器件介紹 14 1. 主控制器 14 2. 顯示液晶模塊 14 3. 溫度傳感器 14 4. 降溫報警系統(tǒng) 18 七. 調(diào)試結(jié)果與設(shè)計體會 19 八. 參考文獻(xiàn) 19 1. 附1:硬件電路圖 20 2. 附2:軟件源代碼 22 3. 附3:使用說明書 27 一. 前 言 隨著電子技術(shù)的發(fā)展,特別是隨著大規(guī)模集成電路的產(chǎn)生,給人們的生活帶來了根本性的變化,如果說微型
10、計算機(jī)的出現(xiàn)使現(xiàn)代的科學(xué)研究得到了質(zhì)的飛躍,那么可編程控制器的出現(xiàn)則是給現(xiàn)代工業(yè)控制測控領(lǐng)域帶來了一次新的革命。在現(xiàn)代社會中,溫度控制不僅應(yīng)用在工廠生產(chǎn)方面,其作用也體現(xiàn)到了各個方面。 隨著人們生活質(zhì)量的提高,酒店廠房及家庭生活中都會見到溫度控制的影子,溫度控制將更好的服務(wù)于社會目前,單片機(jī)控制器在從生活工具到工業(yè)應(yīng)用的各個領(lǐng)域,例如生活工具的電梯、電腦、工業(yè)生產(chǎn)中的現(xiàn)場控制儀表、數(shù)控機(jī)床等。尤其是用單片機(jī)控制器改造落后的設(shè)備具有性價比高、提高設(shè)備的使用壽命、提高設(shè)備的自動化程度的特點(diǎn)。 隨著社會的發(fā)展,人們對環(huán)境溫度的控制要求也越來越高,對于高溫的溫度控制也就相應(yīng)的不斷提高,而我設(shè)計
11、的基于單片機(jī)的溫度控制就是為了達(dá)到這樣的溫度控制要求而進(jìn)行設(shè)計的。我所采用的控制芯片為Atmega16L,此芯片功能強(qiáng)大,能夠滿足設(shè)計要求。通過對電路的設(shè)計,對芯片的外圍擴(kuò)展,來達(dá)到對溫度的控制和調(diào)節(jié)功能 二. 方案論證與比較 1. 方案一 由于本設(shè)計是控溫測溫電路,可以使用熱敏電阻之類的器件利用其感溫效應(yīng),在將隨被測溫度變化的電壓或電流采集過來,進(jìn)行A/D轉(zhuǎn)換后,就可以用單片機(jī)進(jìn)行數(shù)據(jù)的處理,在顯示電路上,就可以將被測溫度顯示出來,這種設(shè)計需要用到A/D轉(zhuǎn)換電路,感溫電路比較麻煩。 2. 方案二 進(jìn)而考慮到用溫度傳感器,在單片機(jī)電路設(shè)計中,大多都是使用傳感器
12、,所以這是非常容易想到的,所以可以采用一只溫度傳感器DS18B20,此傳感器,(在9位分辨率時最多在93.75MS內(nèi)把溫度轉(zhuǎn)換為數(shù) ,)可以很容易直接讀取被測溫度值,進(jìn)行轉(zhuǎn)換,就可以滿足設(shè)計要求。 從以上兩種方案,很容易看出,采用方案二,電路比較簡單,軟件設(shè)計也比較簡單,故采用了方案二。 三. 系統(tǒng)的基本原理及使用說明 基于單片機(jī)的溫度控制電路設(shè)計總體設(shè)計方框圖如圖1所示,主控制器采用單片機(jī)AVR控制,溫度傳感器采用DS18B20,以蜂鳴器實(shí)現(xiàn)報警功能,降溫控制系統(tǒng)采用低壓直流電風(fēng)扇,用液晶來實(shí)現(xiàn)溫度顯示。 單片機(jī)復(fù)位 主 控 制 器 時鐘
13、晶振 液晶顯示 風(fēng)扇控制及報警 溫度傳感器 鍵盤按鍵 圖1總體設(shè)計方框圖 本數(shù)字溫控系統(tǒng)采用了AVR單片機(jī)Atmega16L作為控制核心,通過一個溫度傳感器DS18B20把環(huán)境溫度讀取進(jìn)來,再由液晶模塊將讀取的溫度顯示出來,通過鍵盤按鍵來設(shè)定報警溫度值,當(dāng)溫度達(dá)到預(yù)設(shè)報警溫度值時,利用蜂鳴器、LED指示燈及電機(jī)風(fēng)扇實(shí)現(xiàn)高溫報警及降溫功能。 四. 硬件設(shè)計方案 系統(tǒng)整體硬件電路包括:單片機(jī)主板電路,傳感器數(shù)據(jù)采集電路,溫度顯示電路,報警降溫電路等。(如圖1) 圖1中的按鍵復(fù)位電路是上電復(fù)位加手動復(fù)位,使用比較方便,在程序
14、跑飛時,可以手動復(fù)位,這樣就不用在重啟單片機(jī)電源,就可以實(shí)現(xiàn)復(fù)位;鍵盤按鍵用來設(shè)置報警溫度值從而控制風(fēng)扇及報警;顯示電路直接用液晶模塊顯示,不但顯示直觀、清晰,在硬件電路設(shè)計中還更方便。 1. 單片機(jī)主板電路 主要是用AVR的最小開發(fā)系統(tǒng)為基礎(chǔ)電路,以Atmega16L作為控制核心來實(shí)現(xiàn)(圖1-1)。 (圖1-1) 2. 傳感器數(shù)據(jù)采集電路 主要是通過外接一種改進(jìn)型智能溫度傳感器DS18B20來實(shí)現(xiàn)(圖1-2)。其內(nèi)部結(jié)構(gòu)已包含了數(shù)據(jù)采集轉(zhuǎn)換功能,使用方便,最適合本電路使用。 3. 溫度顯示電路 主要是用一塊16X2字符型液晶顯示模塊來實(shí)現(xiàn)(圖1-3)。它以其微功耗、體積小
15、、顯示內(nèi)容豐富、超薄輕巧的諸多優(yōu)點(diǎn),在袖珍式儀表和低功耗應(yīng)用系統(tǒng)中得到越來越廣泛的應(yīng)用且使用方便直觀。 (圖1-2) (圖1-3) 4. 報警降溫電路 主要是通過兩個鍵盤按鍵對其報警溫度的設(shè)置,以蜂鳴器及LED燈配合低壓直流電風(fēng)扇等組合來實(shí)現(xiàn)對溫度的報警降溫(圖1-4)。 (圖1-4) 五. 軟件設(shè)計方案 系統(tǒng)程序主要包括主程序,讀出溫度子程序,溫度轉(zhuǎn)換命令子程序,鍵盤處理子程序,顯示數(shù)據(jù)刷新子程序等。 1. 主程序 主程序的主要功能是負(fù)責(zé)溫度的實(shí)時顯示、讀出并處理DS18B20測量的當(dāng)前溫度值,并與設(shè)定值相比較從而達(dá)到控溫報警效果,其程序流程
16、見圖2所示。 開始 程序初始化 初次上電 讀出溫度值溫度計算處理顯示數(shù)據(jù)刷新 顯示當(dāng)前溫度 當(dāng)前溫度與設(shè)定值比較 相差? 溫度報警 刷新參數(shù)輸出調(diào)控溫度 Y Y N N 發(fā)溫度轉(zhuǎn)換開始命令 圖2主程序流程圖 圖3讀溫度流程圖 2. 讀出溫度子程序 讀出溫度子程序的主要功能是讀出RAM中的9字節(jié),在讀出時需進(jìn)行CRC校驗(yàn),校驗(yàn)有錯時不進(jìn)行溫度數(shù)據(jù)的改寫。其程序流程圖如圖3所示。 3. 溫度轉(zhuǎn)換命令子程序 溫度轉(zhuǎn)換命令子程序主要是發(fā)溫度轉(zhuǎn)換開始命令,當(dāng)采用12位分辨率時轉(zhuǎn)換時間約為750ms,在本程序設(shè)計中采用1s顯示程序延時法等待轉(zhuǎn)換的完成。溫度轉(zhuǎn)
17、換命令子程序流程圖如上圖,圖4所示 圖4溫度轉(zhuǎn)換流程圖 六. 主要器件介紹 1. 主控制器 本設(shè)計采用了Atmel公司的AVR單片機(jī)Atmega16L作為控制核心。AVR單片機(jī)的單周期指令能夠保證高的執(zhí)行效率和低成本,是精簡指令集CPU中的高性能器件。AVR單片機(jī)可以提供高達(dá)16 MIPS的執(zhí)行時間,具有128K字節(jié)的可編程Flash存儲器,同時具備4096字節(jié)的靜態(tài)RAM。這款A(yù)VR增強(qiáng)型單片機(jī)具有速度快,抗干擾能力強(qiáng),價格低廉等諸多優(yōu)點(diǎn)。 2. 顯示液晶模塊 顯示電路采用了液晶模塊,實(shí)現(xiàn)了當(dāng)前溫度在液晶顯示模塊上實(shí)時顯示。液晶顯示模塊占用了單片機(jī)Atme
18、ga16L的PA0-PA7作為數(shù)據(jù)接口,采用了單片機(jī)的PA0-PA2作為控制端口。PA0引腳選擇液晶顯示模塊的數(shù)據(jù)存儲器或指令存貯器,PA1引腳表明此次操作是讀液晶顯示模塊還是寫液晶顯示模塊,PA2則構(gòu)成上升沿與下降沿完成讀寫時序。 3. 溫度傳感器 圖5 DS18B20內(nèi)部結(jié)構(gòu) DS18B20溫度傳感器是美國DALLAS半導(dǎo)體公司最新推出的一種改進(jìn)型智能溫度傳感器,與傳統(tǒng)的熱敏電阻等測溫元件相比,它能直接讀出被測溫度,并且可根據(jù)實(shí)際要求通過簡單的編程實(shí)現(xiàn)9~12位的數(shù)字值讀數(shù)方式。DS18B20的性能特點(diǎn)如下: ●獨(dú)特的單線接口僅需要一個端口引腳進(jìn)行通信; ●多個DS18B20可
19、以并聯(lián)在惟一的三線上,實(shí)現(xiàn)多點(diǎn)組網(wǎng)功能; ●無須外部器件; ●可通過數(shù)據(jù)線供電,電壓范圍為3.0~5.5V; ●零待機(jī)功耗; ●溫度以9或12位數(shù)字; ●用戶可定義報警設(shè)置; ●報警搜索命令識別并標(biāo)志超過程序限定溫度(溫度報警條件)的器件; ●負(fù)電壓特性,電源極性接反時,溫度計不會因發(fā)熱而燒毀,但不能正常工作; DS18B20采用3腳PR-35封裝或8腳SOIC封裝,其內(nèi)部結(jié)構(gòu)框圖如圖5所示。 64位ROM的結(jié)構(gòu)開始8位是產(chǎn)品類型的編號,接著是每個器件的惟一的序號,共有48位,最后8位是前面56位的CRC檢驗(yàn)碼,這也是多個DS18B20可以采用一線進(jìn)行通信的原因。溫度報
20、警觸發(fā)器TH和TL,可通過軟件寫入戶報警上下限。 DS18B20溫度傳感器的內(nèi)部存儲器還包括一個高速暫存RAM和一個非易失性的可電擦除的EERAM。高速暫存RAM的結(jié)構(gòu)為8字節(jié)的存儲器,結(jié)構(gòu)如圖3所示。頭2個字節(jié)包含測得的溫度信息,第3和第4字節(jié)TH和TL的拷貝,是易失的,每次上電復(fù)位時被刷新。第5個字節(jié),為配置寄存器,它的內(nèi)容用于確定溫度值的數(shù)字轉(zhuǎn)換分辨率。DS18B20工作時寄存器中的分辨率轉(zhuǎn)換為相應(yīng)精度的溫度數(shù)值。該字節(jié)各位的定義如圖6所示。低5位一直為1,TM是工作模式位,用于設(shè)置DS18B20在工作模式還是在測試模式,DS18B20出廠時該位被設(shè)置為0,用戶要去改動,R1和
21、R0決定溫度轉(zhuǎn)換的精度位數(shù),來設(shè)置分辨率。 圖6 DS18B20字節(jié)定義 由表1可見,DS18B20溫度轉(zhuǎn)換的時間比較長,而且分辨率越高,所需要的溫度數(shù)據(jù)轉(zhuǎn)換時間越長。因此,在實(shí)際應(yīng)用中要將分辨率和轉(zhuǎn)換時間權(quán)衡考慮。 高速暫存RAM的第6、7、8字節(jié)保留未用,表現(xiàn)為全邏輯1。第9字節(jié)讀出前面所有8字節(jié)的CRC碼,可用來檢驗(yàn)數(shù)據(jù),從而保證通信數(shù)據(jù)的正確性。 當(dāng)DS18B20接收到溫度轉(zhuǎn)換命令后,開始啟動轉(zhuǎn)換。轉(zhuǎn)換完成后的溫度值就以16位帶符號擴(kuò)展的二進(jìn)制補(bǔ)碼形式存儲在高速暫存存儲器的第1、2字節(jié)。單片機(jī)可以通過單線接口讀出該數(shù)據(jù),讀數(shù)據(jù)時低位在先,高位在后,數(shù)據(jù)
22、格式以0.0625℃/LSB形式表示。 當(dāng)符號位S=0時,表示測得的溫度值為正值,可以直接將二進(jìn)制位轉(zhuǎn)換為十進(jìn)制;當(dāng)符號位S=1時,表示測得的溫度值為負(fù)值,要先將補(bǔ)碼變成原碼,再計算十進(jìn)制數(shù)值。表2是一部分溫度值對應(yīng)的二進(jìn)制溫度數(shù)據(jù)。 DS18B20完成溫度轉(zhuǎn)換后,就把測得的溫度值與RAM中的TH、TL字節(jié)內(nèi)容作比較。若T>TH或T<TL,則將該器件內(nèi)的報警標(biāo)志位置位,并對主機(jī)發(fā)出的報警搜索命令作出響應(yīng)。因此,可用多只DS18B20同時測量溫度并進(jìn)行報警搜索。 在64位ROM的最高有效字節(jié)中存儲有循環(huán)冗余檢驗(yàn)碼(CRC)。主機(jī)ROM的前56位來計算CRC值,并和存入DS18B
23、20的CRC值作比較,以判斷主機(jī)收到的ROM數(shù)據(jù)是否正確。 DS18B20的測溫原理是這這樣的,器件中低溫度系數(shù)晶振的振蕩頻率受溫度的影響很小,用于產(chǎn)生固定頻率的脈沖信號送給減法計數(shù)器1;高溫度系數(shù)晶振隨溫度變化其振蕩頻率明顯改變,所產(chǎn)生的信號作為減法計數(shù)器2的脈沖輸入。器件中還有一個計數(shù)門,當(dāng)計數(shù)門打開時,DS18B20就對低溫度系數(shù)振蕩器產(chǎn)生的時鐘脈沖進(jìn)行計數(shù)進(jìn)而完成溫度測量。計數(shù)門的開啟時間由高溫度系數(shù)振蕩器來決定,每次測量前,首先將-55℃所對應(yīng)的一個基數(shù)分別置入減法計數(shù)器1、溫度寄存器中,計數(shù)器1和溫度寄存器被預(yù)置在-55℃所對應(yīng)的一個基數(shù)值。 減法計數(shù)器1對低溫
24、度系數(shù)晶振產(chǎn)生的脈沖信號進(jìn)行減法計數(shù),當(dāng)減法計數(shù)器1的預(yù)置值減到0時,溫度寄存器的值將加1,減法計數(shù)器1的預(yù)置將重新被裝入,減法計數(shù)器1重新開始對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進(jìn)行計數(shù),如此循環(huán)直到減法計數(shù)器計數(shù)到0時,停止溫度寄存器的累加,此時溫度寄存器中的數(shù)值就是所測溫度值。其輸出用于修正減法計數(shù)器的預(yù)置值,只要計數(shù)器門仍未關(guān)閉就重復(fù)上述過程,直到溫度寄存器值大致被測溫度值。 另外,由于DS18B20單線通信功能是分時完成的,它有嚴(yán)格的時隙概念,因此讀寫時序很重要。系統(tǒng)對DS18B20的各種操作按協(xié)議進(jìn)行。操作協(xié)議為:初使化DS18B20(發(fā)復(fù)位脈沖)—發(fā)ROM功能命令—
25、發(fā)存儲器操作命令—處理數(shù)據(jù)。DS18B20可以采用兩種方式供電,一種是采用電源供電方式,此時DS18B20的1腳接地,2腳作為信號線,3腳接電源。另一種是寄生電源供電方式,如圖7所示單片機(jī)端口接單線總線,為保證在有效的DS18B20時鐘周期內(nèi)提供足夠的電流,可用一個MOSFET管來完成對總線的上拉。 當(dāng)DS18B20處于寫存儲器操作和溫度A/D轉(zhuǎn)換操作時,總線上必須有強(qiáng)的上拉,上拉開啟時間最大為10us。采用寄生電源供電方式時VDD端接地。由于單線制只有一根線,因此發(fā)送接口必須是三態(tài)的。 圖7 DS18B20與單片機(jī)的接口電路 4. 降溫報警系統(tǒng) 降溫報警系統(tǒng)采用低壓直流
26、電風(fēng)扇、蜂鳴器及LED燈等組合來實(shí)現(xiàn)報警降溫功能。報警初值設(shè)定為40,通過按鍵PC.2加一,PC.3減一的功能來設(shè)置報警值,當(dāng)溫度達(dá)到設(shè)置報警值時,LED燈及蜂鳴器便會發(fā)出報警信號,同時直流電風(fēng)扇便會啟動達(dá)到降溫效果。 七. 調(diào)試結(jié)果與設(shè)計體會 經(jīng)過這學(xué)期的畢業(yè)設(shè)計,終于完成了我的基于單片機(jī)的溫度控制的設(shè)計,雖然還不是很完善,但從心底里說,還是高興的,畢竟這次設(shè)計把實(shí)物都做了出來,高興之余不得不深思呀! 在本次設(shè)計的過程中,我發(fā)現(xiàn)很多的問題,如在程序的調(diào)試過程中出事顯示屏幕不斷在閃爍,怎么能使程序正常顯示出當(dāng)前的溫度以及在益出時如何來解決等等。雖然以前課堂上也做過這樣的設(shè)計但這次
27、設(shè)計真的讓我長進(jìn)了很多,我覺得寫好一個程序并不是一件簡單的事。 從這次的畢業(yè)設(shè)計中,我真真正正的意識到,在以后的學(xué)習(xí)中,要理論聯(lián)系實(shí)際,把我們所學(xué)的理論知識用到實(shí)際當(dāng)中,學(xué)習(xí)單機(jī)片機(jī)更是如此,程序只有在經(jīng)常的寫與讀的過程中才能提高,這就是我在這次課程設(shè)計中的最大收獲。在這里我要感謝我的指導(dǎo)老師晏凱老師以及所有在這此畢業(yè)設(shè)計中幫助過我的同學(xué),正因?yàn)橛兴麄兊膸椭也拍茼樌耐瓿蛇@次的作品。 八. 參考文獻(xiàn) [1] 李朝青.單片機(jī)原理及接口技術(shù)(簡明修訂版).杭州:北京航空航天大學(xué)出版社,1998 [2] 李廣弟.單片機(jī)基礎(chǔ)[M].北京:北京航空航天大學(xué)出版社,1994 [
28、3] 閻石.數(shù)字電子技術(shù)基礎(chǔ)(第三版). 北京:高等教育出版社,1989
1. 附1:硬件電路圖
原理圖:
PCB電路圖:
2. 附2:軟件源代碼
#include
29、er[33],buffer1[33]; //定義數(shù)組 void scan_key(); //聲明溫度值設(shè)置子函數(shù) void motor_turn(); // 聲明電機(jī)轉(zhuǎn)動子函數(shù) void scan_key() // 溫度值設(shè)置子函數(shù) { if(PIND.3==0) { adjust++; delay_ms(150); } if(PIND.2==0) { adjust--; delay_ms(150); } } void motor_turn() //電機(jī)轉(zhuǎn)動子函數(shù) { PORTD.5=
30、1; } void main(void) //主函數(shù) { PORTC=0x00; DDRC=0xf2; PORTD=0xff; DDRD=0xf3; PortDS18B20_Init(); //18B20初始化 DS18B20_Init(); lcd_init(16); //1602初始化 while (1) { scan_key(); if(ResetOK_Flag==1) //讀18B20溫度值 {
31、 wendu=ReadTemp(); } else { DS18B20_Init(); } scan_key(); lcd_clear(); lcd_gotoxy(0,0); sprintf(buffer,"the temp is %d",wendu); // lcd_puts(buffer); //顯示當(dāng)前溫度 lcd_gotox
32、y(0,1); sprintf(buffer1,"the adjust is %d",adjust); // lcd_puts(buffer1); //顯示當(dāng)前設(shè)置溫度 delay_ms(10); if(wendu>=adjust) //比較當(dāng)前溫度與設(shè)置溫度 { motor_turn();
33、 //電機(jī)轉(zhuǎn)動 PORTD.4=1; //驅(qū)動蜂鳴器 PORTD.1=1; //LED顯示 delay_ms(80); PORTD.4=0; PORTD.1=0; delay_ms(80); } else {
34、 PORTD.5=0; //電機(jī)停止 PORTD.4=0; //關(guān)閉蜂鳴器 PORTD.1=0; //LED熄滅 } }; } 3. 附3:使用說明書 風(fēng)扇接口 散熱風(fēng)扇 復(fù)位按鍵 5V電源 DS18B20 LED指示燈 蜂鳴器 報警設(shè)置按鍵 加1 減1 Atme
35、ga16L芯片 液晶顯示模塊 圖7 基于單片機(jī)的溫度控制實(shí)物圖如圖7所示,本設(shè)計在使用上非常簡單,主要是通過外接供給5V電源來驅(qū)動Atmega16L芯片運(yùn)行,使液晶顯示模塊點(diǎn)亮,再通過DS18B20將外界溫度讀取進(jìn)來顯示在液晶顯示模塊上(顯示當(dāng)前溫度及初始化報警溫度值31)。左上角的一個復(fù)位按鍵在程序跑飛時可以過通此按鈕進(jìn)行手動復(fù)位,這樣就不用在重啟單片機(jī)電源,就可以實(shí)現(xiàn)復(fù)位。這工作時,用戶可通右邊的過兩個報警設(shè)置按鍵(PD.3加一,PD.2減一)來設(shè)置溫度報警值,當(dāng)溫度達(dá)到預(yù)設(shè)置的報警值時,LED指示燈及蜂鳴器便會發(fā)出報警信號,同時直流散熱風(fēng)扇便會啟動達(dá)到降溫效果。 26
- 溫馨提示:
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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。