畢業(yè)設(shè)計(jì)(論文)基于單片機(jī)的溫控風(fēng)扇設(shè)計(jì)_第1頁(yè)
畢業(yè)設(shè)計(jì)(論文)基于單片機(jī)的溫控風(fēng)扇設(shè)計(jì)_第2頁(yè)
畢業(yè)設(shè)計(jì)(論文)基于單片機(jī)的溫控風(fēng)扇設(shè)計(jì)_第3頁(yè)
畢業(yè)設(shè)計(jì)(論文)基于單片機(jī)的溫控風(fēng)扇設(shè)計(jì)_第4頁(yè)
畢業(yè)設(shè)計(jì)(論文)基于單片機(jī)的溫控風(fēng)扇設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩33頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、本科畢業(yè)論文設(shè)計(jì)題目:基于單片機(jī)的溫控風(fēng)扇的設(shè)計(jì)學(xué) 院: 專(zhuān) 業(yè):電子信息科學(xué)與技術(shù) 班 級(jí): 學(xué) 號(hào): 學(xué)生姓名: 指導(dǎo)教師: 年 月 TOC o 1-3 u 目 錄 PAGEREF _Toc292836152 h I摘 要 PAGEREF _Toc292836153 h IIIAbstract PAGEREF _Toc292836155 h IV第一章 整體方案設(shè)計(jì) PAGEREF _Toc292836157 h 11.1 前 言 PAGEREF _Toc292836158 h 11.2 系統(tǒng)整體設(shè)計(jì) PAGEREF _Toc292836159 h 1方案論證 PAGEREF _Toc29

2、2836160 h 21.3.1 溫度傳感器的選擇 PAGEREF _Toc292836161 h 21.3.2 控制核心的選擇 PAGEREF _Toc292836162 h 31.3.3 溫度顯示器件的選擇 PAGEREF _Toc292836163 h 31.3.4 調(diào)速方式的選擇 PAGEREF _Toc292836164 h 3第二章 各單元模塊的硬件設(shè)計(jì) PAGEREF _Toc292836165 h 5系統(tǒng)器件簡(jiǎn)介 PAGEREF _Toc292836166 h 52.1.1 DS18B20單線數(shù)字溫度傳感器簡(jiǎn)介 PAGEREF _Toc292836167 h 52.1.2 達(dá)林

3、頓反向驅(qū)動(dòng)器ULN2803簡(jiǎn)介 PAGEREF _Toc292836168 h 52.1.3 AT89C52單片機(jī)簡(jiǎn)介 PAGEREF _Toc292836169 h 62.1.4 LED數(shù)碼管簡(jiǎn)介 PAGEREF _Toc292836170 h 72.2 各局部電路設(shè)計(jì) PAGEREF _Toc292836171 h 82.2.1 開(kāi)關(guān)復(fù)位與晶振電路 PAGEREF _Toc292836172 h 92.2.2 獨(dú)立鍵盤(pán)連接電路 PAGEREF _Toc292836173 h 92.2.3 數(shù)碼管顯示電路 PAGEREF _Toc292836174 h 102.2.4 溫度采集電路 PAGE

4、REF _Toc292836175 h 112.2.5 風(fēng)扇電機(jī)驅(qū)動(dòng)與調(diào)速電路 PAGEREF _Toc292836176 h 12第三章 軟件設(shè)計(jì) PAGEREF _Toc292836177 h 143.1 程序設(shè)置 PAGEREF _Toc292836178 h 143.2 用Keil C51編寫(xiě)程序 PAGEREF _Toc292836179 h 143.3 用Proteus進(jìn)行仿真 PAGEREF _Toc292836180 h 153.3.1 Proteus簡(jiǎn)介 PAGEREF _Toc292836181 h 153.3.2 本設(shè)計(jì)基于Proteus的仿真 PAGEREF _Toc2

5、92836182 h 16第四章 系統(tǒng)調(diào)試 PAGEREF _Toc292836183 h 214.1 軟件調(diào)試 PAGEREF _Toc292836184 h 214.1.1 按鍵顯示局部的調(diào)試 PAGEREF _Toc292836185 h 214.1.2 傳感器DS18B20溫度采集局部調(diào)試 PAGEREF _Toc292836186 h 214.1.3 電動(dòng)機(jī)調(diào)速電路局部調(diào)試 PAGEREF _Toc292836187 h 214.2 硬件調(diào)試 PAGEREF _Toc292836188 h 224.2.1 按鍵顯示局部的調(diào)試 PAGEREF _Toc292836189 h 224.2

6、.2 傳感器DS18B20溫度采集局部調(diào)試 PAGEREF _Toc292836190 h 224.2.3 電動(dòng)機(jī)調(diào)速電路局部調(diào)試 PAGEREF _Toc292836191 h 224.3 系統(tǒng)功能 PAGEREF _Toc292836192 h 234.3.1 系統(tǒng)實(shí)現(xiàn)的功能 PAGEREF _Toc292836193 h 234.3.2 系統(tǒng)功能分析 PAGEREF _Toc292836194 h 23結(jié) 論 PAGEREF _Toc292836195 h 24參考文獻(xiàn) PAGEREF _Toc292836196 h 25致謝 PAGEREF _Toc292836197 h 26附錄1:

7、電路總圖 PAGEREF _Toc292836198 h 27附錄2:程序代碼 PAGEREF _Toc292836199 h 28基于單片機(jī)的溫控風(fēng)扇的設(shè)計(jì) 姓名: 學(xué)號(hào): 學(xué)校: 指導(dǎo)教師:摘 要溫控風(fēng)扇在現(xiàn)代社會(huì)中的生產(chǎn)以及人們的日常生活中都有廣泛的應(yīng)用,如工業(yè)生產(chǎn)中大型機(jī)械散熱系統(tǒng)中的風(fēng)扇、現(xiàn)在筆記本電腦上的廣泛應(yīng)用的智能CPU風(fēng)扇等。本文設(shè)計(jì)了基于單片機(jī)的溫控風(fēng)扇系統(tǒng),采用單片機(jī)作為控制器,利用溫度傳感器DS18B20作為溫度采集元件,并根據(jù)采集到的溫度,通過(guò)一個(gè)達(dá)林頓反向驅(qū)動(dòng)器ULN2803驅(qū)動(dòng)風(fēng)扇電機(jī)。根據(jù)檢測(cè)到的溫度與系統(tǒng)設(shè)定的溫度的比較實(shí)現(xiàn)風(fēng)扇電機(jī)的自動(dòng)啟動(dòng)和停止,并能根溫度

8、的變化自動(dòng)改變風(fēng)扇電機(jī)的轉(zhuǎn)速,同時(shí)用LED八段數(shù)碼管顯示檢測(cè)到的溫度與設(shè)定的溫度。關(guān)鍵詞:?jiǎn)纹瑱C(jī)、DS18B20、溫控、風(fēng)扇第一章 整體方案設(shè)計(jì) 前 言在現(xiàn)代社會(huì)中,風(fēng)扇被廣泛的應(yīng)用,發(fā)揮著舉足輕重的作用,如夏天人們用的散熱風(fēng)扇、工業(yè)生產(chǎn)中大型機(jī)械中的散熱風(fēng)扇以及現(xiàn)在筆記本電腦上廣泛使用的智能CPU風(fēng)扇等。而隨著溫度控制技術(shù)的開(kāi)展,為了降低風(fēng)扇運(yùn)轉(zhuǎn)時(shí)的噪音以及節(jié)省能源等,溫控風(fēng)扇越來(lái)越受到重視并被廣泛的應(yīng)用。在現(xiàn)階段,溫控風(fēng)扇的設(shè)計(jì)已經(jīng)有了一定的成效,可以使風(fēng)扇根據(jù)環(huán)境溫度的變化進(jìn)行自動(dòng)無(wú)級(jí)調(diào)速,當(dāng)溫度升高到一定時(shí)能自動(dòng)啟動(dòng)風(fēng)扇,當(dāng)溫度降到一定時(shí)能自動(dòng)停止風(fēng)扇的轉(zhuǎn)動(dòng),實(shí)現(xiàn)智能控制。隨著單片機(jī)在

9、各個(gè)領(lǐng)域的廣泛應(yīng)用,許多用單片機(jī)作控制的溫度控制系統(tǒng)也應(yīng)運(yùn)而生,如基于單片機(jī)的溫控風(fēng)扇系統(tǒng)。它使風(fēng)扇根據(jù)環(huán)境溫度的變化實(shí)現(xiàn)自動(dòng)啟停,使風(fēng)扇轉(zhuǎn)速隨著環(huán)境溫度的變化而變化,實(shí)現(xiàn)了風(fēng)扇的智能控制。它的設(shè)計(jì)為現(xiàn)代社會(huì)人們的生活以及生產(chǎn)帶來(lái)了諸多便利,在提高人們的生活質(zhì)量、生產(chǎn)效率的同時(shí)還能節(jié)省風(fēng)扇運(yùn)轉(zhuǎn)所需的能量。本文設(shè)計(jì)了由ATMEL公司的8052系列單片機(jī)AT89C52作為控制器,采用DALLAS公司的溫度傳感器DS18B20作為溫度采集元件,并通過(guò)一個(gè)達(dá)林頓反向驅(qū)動(dòng)器ULN2803驅(qū)動(dòng)風(fēng)扇電機(jī)的轉(zhuǎn)動(dòng)。同時(shí)使系統(tǒng)檢測(cè)到得環(huán)境溫度以及系統(tǒng)預(yù)設(shè)的溫度動(dòng)態(tài)的顯示在LED數(shù)碼管上。根據(jù)系統(tǒng)檢測(cè)到得環(huán)境溫度與

10、系統(tǒng)預(yù)設(shè)溫度的比較,實(shí)現(xiàn)風(fēng)扇電機(jī)的自動(dòng)啟停以及轉(zhuǎn)速的自動(dòng)調(diào)節(jié)。1.2 系統(tǒng)整體設(shè)計(jì)本設(shè)計(jì)的整體思路是:利用溫度傳感器DS18B20檢測(cè)環(huán)境溫度并直接輸出數(shù)字溫度信號(hào)給單片機(jī)AT89C52進(jìn)行處理,在LED數(shù)碼管上顯示當(dāng)前環(huán)境溫度值以及預(yù)設(shè)溫度值。其中預(yù)設(shè)溫度值只能為整數(shù)形式,檢測(cè)到的當(dāng)前環(huán)境溫度可精確到小數(shù)點(diǎn)后一位。同時(shí)采用PWM脈寬調(diào)制方式來(lái)改變直流風(fēng)扇電機(jī)的轉(zhuǎn)速。并通過(guò)兩個(gè)按鍵改變預(yù)設(shè)溫度值,一個(gè)提高預(yù)設(shè)溫度,另一個(gè)降低預(yù)設(shè)溫度值。系統(tǒng)結(jié)構(gòu)框圖如下:DS18B20溫度顯示獨(dú)立鍵盤(pán)AT89C52直流電機(jī)PWM驅(qū)動(dòng)電路晶振復(fù)位1.3方案論證本設(shè)計(jì)要實(shí)現(xiàn)風(fēng)扇直流電機(jī)的溫度控制,使風(fēng)扇電機(jī)能根據(jù)環(huán)

11、境溫度的變化自動(dòng)啟停及改變轉(zhuǎn)速,需要比較高的溫度變化分辨率以及穩(wěn)定可靠的換擋停機(jī)控制部件1 李學(xué)龍. 使用單片機(jī)控制的智能遙控電風(fēng)扇控制器J.電子電路制作,2003,9:1315.。1.3.1 溫度傳感器的選擇在本設(shè)計(jì)中,溫度傳感器的選擇有以下兩種方案:方案一:采用熱敏電阻作為檢測(cè)溫度的核心元件,并通過(guò)運(yùn)算放大器放大,由于熱敏電阻會(huì)隨溫度變化而變化,進(jìn)而產(chǎn)生輸出電壓變化的微弱電壓變化信號(hào),再經(jīng)模數(shù)轉(zhuǎn)換芯片ADC0809將微弱電壓變化信號(hào)轉(zhuǎn)化為數(shù)字信號(hào)輸入單片機(jī)處理。方案二:采用數(shù)字式的集成溫度傳感器DS18B20作為溫度檢測(cè)的核心元件,由其檢測(cè)并直接輸出數(shù)字溫度信號(hào)給單片機(jī)進(jìn)行處理。對(duì)于方案一

12、,采用熱敏電阻作為溫度檢測(cè)元件,有價(jià)格廉價(jià),元件易購(gòu)的優(yōu)點(diǎn),但熱敏電阻對(duì)溫度的細(xì)微變化不太敏感,在信號(hào)采集、放大以及轉(zhuǎn)換的過(guò)程中還會(huì)產(chǎn)生失真和誤差,并且由于熱敏電阻的R-T關(guān)系的非線性,其自身電阻對(duì)溫度的變化存在較大誤差,雖然可以通過(guò)一定電路來(lái)修正,但這不僅將使電路變得更加復(fù)雜,而且在人體所處環(huán)境溫度變化過(guò)程中難以檢測(cè)到小的溫度變化。故該方案不適合本系統(tǒng)。對(duì)于方案二,由于數(shù)字式集成溫度傳感器DS18B20的高度集成化,大大降低了外接放大轉(zhuǎn)化等電路的誤差因數(shù),溫度誤差變得很小,并且由于其檢測(cè)溫度的原理與熱敏電阻檢測(cè)的原理有著本質(zhì)的不同,使得其溫度分辨力極高。溫度值在器件內(nèi)部轉(zhuǎn)化成數(shù)字量直接輸出,

13、簡(jiǎn)化了系統(tǒng)程序設(shè)計(jì),又由于該溫度傳感器采用先進(jìn)的單總線技術(shù),與單片機(jī)的接口變得非常簡(jiǎn)潔,抗干擾能力強(qiáng),因此該方案適用于本系統(tǒng)。1.3.2 控制核心的選擇在本設(shè)計(jì)中采用AT89C52單片機(jī)作為控制核心,通過(guò)軟件編程的方法進(jìn)行溫度檢測(cè)和判斷,并在其I/O口輸出控制信號(hào)。AT89C52單片機(jī)工作電壓低,性能高,片內(nèi)含8k字節(jié)的只讀程序存儲(chǔ)器ROM和256字節(jié)的隨機(jī)數(shù)據(jù)存儲(chǔ)器RAM,它兼容標(biāo)準(zhǔn)的MCS-51指令系統(tǒng),單片價(jià)格也不貴,適合本設(shè)計(jì)系統(tǒng)。1.3.3 溫度顯示器件的選擇方案一:應(yīng)用動(dòng)態(tài)掃描的方式,采用LED共陰極數(shù)碼管顯示溫度。方案二:采用LCD液晶顯示屏顯示溫度。對(duì)于方案一,該方案本錢(qián)很低,

14、顯示溫度明確醒目,即使在黑暗空間也能清楚看見(jiàn),功耗極低,同時(shí)溫度顯示程序的編寫(xiě)也相對(duì)簡(jiǎn)單,因而這種顯示方式得到了廣泛應(yīng)用。但缺乏的地方是它采用動(dòng)態(tài)掃描的顯示方式,各個(gè)LED數(shù)碼管是逐個(gè)點(diǎn)亮的,因此會(huì)產(chǎn)生閃爍,但由于人眼的視覺(jué)暫留時(shí)間為20MS,故當(dāng)數(shù)碼管掃描周期小于這個(gè)時(shí)間時(shí)人眼不會(huì)感覺(jué)到閃爍,因此只要描頻率設(shè)置得當(dāng)即可采用該方案。對(duì)于方案二,液晶顯示屏具有顯示字符優(yōu)美,其不僅能顯示數(shù)字還能顯示字符甚至圖形,這是LED數(shù)碼管無(wú)法比較的。但是液晶顯示模塊的元件價(jià)格昂貴,顯示驅(qū)動(dòng)程序的編寫(xiě)也較復(fù)雜,從簡(jiǎn)單實(shí)用的原那么考慮,本系統(tǒng)采用方案一。1.3.4 調(diào)速方式的選擇方案一:采用數(shù)模轉(zhuǎn)換芯片DAC0

15、832來(lái)控制,由單片機(jī)根據(jù)當(dāng)前環(huán)境溫度值輸出相應(yīng)數(shù)字量到DAC0832中,再由DAC0832產(chǎn)生相應(yīng)模擬信號(hào)控制晶閘管的導(dǎo)通角,從而通過(guò)無(wú)級(jí)調(diào)速電路實(shí)現(xiàn)風(fēng)扇電機(jī)轉(zhuǎn)速的自動(dòng)調(diào)節(jié)。方案二:采用單片機(jī)軟件編程實(shí)現(xiàn)PWM脈沖寬度調(diào)制調(diào)速的方法。PWM是英文Pulse Width Modulation的縮寫(xiě),它是按一定的規(guī)律改變脈沖序列的脈沖寬度,以調(diào)節(jié)輸出量和波形的一種調(diào)節(jié)方式,在PWM驅(qū)動(dòng)控制的調(diào)節(jié)系統(tǒng)中,最常用的是矩形波PWM信號(hào),在控制時(shí)需要調(diào)節(jié)PWM波得占空比。占空比是指高電平持續(xù)時(shí)間在一個(gè)周期時(shí)間內(nèi)的百分比。在控制電機(jī)的轉(zhuǎn)速時(shí),占空比越大,轉(zhuǎn)速就越快,假設(shè)全為高電平,占空比為100%時(shí),轉(zhuǎn)速

16、到達(dá)最大 2 藍(lán)厚榮.單片機(jī)的PWM控制技術(shù)J .工業(yè)控制計(jì)算機(jī),2021,233:97982。用單片機(jī)I/O口輸出PWM信號(hào)時(shí),有如下三種方法:(1) 利用軟件延時(shí)。當(dāng)高電平延時(shí)時(shí)間到時(shí),對(duì)I/O口電平取反,使其變成低電平,然后再延時(shí)一定時(shí)間;當(dāng)?shù)碗娖窖訒r(shí)時(shí)間到時(shí),再對(duì)該I/O口電平取反,如此循環(huán)即可得到PWM信號(hào)。在本設(shè)計(jì)中應(yīng)用了此方法。(2) 利用定時(shí)器??刂品椒ㄅc(1)相同,只是在該方法中利用單片機(jī)的定時(shí)器來(lái)定時(shí)進(jìn)行上下電平的轉(zhuǎn)變,而不是用軟件延時(shí)。應(yīng)用此方法時(shí)編程相對(duì)復(fù)雜。(3) 利用單片機(jī)自帶的PWM控制器。在STC12系列單片機(jī)中自身帶有PWM控制器,但本系統(tǒng)所用到得AT89系列

17、單片機(jī)無(wú)此功能。對(duì)于方案一,該方案能夠?qū)崿F(xiàn)對(duì)直流風(fēng)扇電機(jī)的無(wú)級(jí)調(diào)速,速度變化靈敏,但是D/A轉(zhuǎn)換芯片的價(jià)格較高,與其溫控狀態(tài)下無(wú)級(jí)調(diào)速功能相比性價(jià)比不高。 對(duì)于方案二,相對(duì)于其他用硬件或者軟硬件相結(jié)合的方法實(shí)現(xiàn)對(duì)電機(jī)進(jìn)行調(diào)速而言,采用PWM 用純軟件的方法來(lái)實(shí)現(xiàn)調(diào)速過(guò)程,具有更大的靈活性,并可大大降低本錢(qián),能夠充分發(fā)揮單片機(jī)的功能,對(duì)于簡(jiǎn)單速度控制系統(tǒng)的實(shí)現(xiàn)提供了一種有效的途徑。綜合考慮選用方案二。第二章 各單元模塊的硬件設(shè)計(jì)系統(tǒng)主要器件包括DS18B20溫度傳感器、AT89C52單片機(jī)、五位LED共陰數(shù)碼管、風(fēng)扇直流電機(jī)、達(dá)林頓反向驅(qū)動(dòng)器ULN2803。輔助元件包括電阻電容、晶振、電源、按鍵

18、、撥碼開(kāi)關(guān)等。系統(tǒng)器件簡(jiǎn)介2.1.1 DS18B20單線數(shù)字溫度傳感器簡(jiǎn)介DS18B20數(shù)字溫度傳感器,是采用美國(guó)DALLAS半導(dǎo)體公司生產(chǎn)的DS18B20可組網(wǎng)數(shù)字溫度傳感器芯片封裝而成,它具有微型化、低功耗、高性能、抗干擾能力強(qiáng)、易配微處理器等優(yōu)點(diǎn),可直接將溫度轉(zhuǎn)化成串行數(shù)字信號(hào)供處理器處理。適用于各種狹小空間設(shè)備數(shù)字測(cè)溫和控制領(lǐng)域。DS18B20的主要特征:測(cè)量的結(jié)果直接以數(shù)字信號(hào)的形式輸出,以“一線總線方式串行傳送給CPU,同時(shí)可傳送CRC校驗(yàn)碼,具有極強(qiáng)的抗干擾糾錯(cuò)能力;溫度測(cè)量范圍在-55+125之間,在-10+85時(shí)精度為;可檢測(cè)溫度分辨率為93 郭天祥.3443。DS18B20

19、內(nèi)部結(jié)構(gòu)主要有四局部:64位ROM、溫度傳感器、非揮發(fā)的溫度報(bào)警觸發(fā)器TH和TL、配置存放器。其管腳有三個(gè),其中DQ為數(shù)字信號(hào)端,GND為電源地,VDD為電源輸入端。 達(dá)林頓反向驅(qū)動(dòng)器ULN2803簡(jiǎn)介本系統(tǒng)要用單片機(jī)控制風(fēng)扇直流電機(jī),需要加驅(qū)動(dòng)電路,為直流電機(jī)提供足夠大的驅(qū)動(dòng)電流。在本系統(tǒng)驅(qū)動(dòng)電路中,選用達(dá)林頓反向驅(qū)動(dòng)器ULN2803來(lái)驅(qū)動(dòng)風(fēng)扇直流電機(jī)。ULN2803在使用時(shí)接口簡(jiǎn)單,操作方便,可為電機(jī)提供較大的驅(qū)動(dòng)電流,它實(shí)際上是一個(gè)集成芯片,單塊芯片可同時(shí)驅(qū)動(dòng)8個(gè)電機(jī)。每個(gè)電機(jī)由單片機(jī)的一個(gè)I/O口控制,單片機(jī)I/O口輸出的為5V的TTL信號(hào)。ULN2803由8個(gè)NPN達(dá)林頓晶體管組裝而

20、成,共18個(gè)引腳,引腳18分別是8路驅(qū)動(dòng)器的輸入端,輸入信號(hào)可直接是TTL或CMOS信號(hào);引腳1118分別是8路驅(qū)動(dòng)器的輸出端;引腳9為接地線,引腳10為電源輸入。當(dāng)輸入TTL信號(hào)為5V或CMOS信號(hào)為615V時(shí),輸出的最大電壓為50V,最大電流為500mA,工作溫度范圍為070。本系統(tǒng)選用的電機(jī)為12V直流無(wú)刷電機(jī),可用ULN2803來(lái)驅(qū)動(dòng)。2.1.3 AT89C52單片機(jī)簡(jiǎn)介AT89C52是51系列單片機(jī)的一個(gè)型號(hào),它是由ATMEL公司生產(chǎn)的一個(gè)低電壓、高性能的8位單片機(jī),片內(nèi)器件采用ATMEL公司的非易失性、高密度存儲(chǔ)技術(shù)生產(chǎn),與標(biāo)準(zhǔn)的MCS-51指令系統(tǒng)兼容,同時(shí)片內(nèi)置有通用8位中央處

21、理器和8k 字節(jié)的可反復(fù)擦寫(xiě)的只讀程序存儲(chǔ)器ROM以及256 字節(jié)的數(shù)據(jù)存儲(chǔ)器RAM,在許多許多較復(fù)雜的控制系統(tǒng)中AT89C52單片機(jī)得到了廣泛的應(yīng)用。AT89C52有40個(gè)引腳,各引腳介紹如下:VCC:+5V電源線;GND:接地線。P0口:。這8條引腳共有兩種不同的功能,分別使用于兩種不同的情況。第一種情況是單片機(jī)不帶片外存儲(chǔ)器,P0口可以作為通用I/O口使用,P0.7P0.0用于傳送CPU的輸入/輸出數(shù)據(jù),此時(shí)它需外接一上拉電阻才能正常工作。第二種情況是單片機(jī)帶片外存儲(chǔ)器,其各引腳在CPU訪問(wèn)片外存儲(chǔ)器時(shí)先是用于傳送片外存儲(chǔ)器的低8位地址,然后傳送CPU對(duì)片外存儲(chǔ)器的讀寫(xiě)數(shù)據(jù)4 胡漢才.單

22、片機(jī)原理及其接口技術(shù)M第2版.北京:清華大學(xué)出版社.2004.第63頁(yè).4。P1口:P1口是一個(gè)內(nèi)部含上拉電阻的8位雙向I/O口。它也可作為通用的I/O口使用,與P0口一樣用于傳送用戶的輸入輸出數(shù)據(jù),所不同的是它片內(nèi)含上拉電阻而P0口沒(méi)有,故P0口在做該用途時(shí)需外接上拉電阻而P1口那么無(wú)需。在FLASH編程和校驗(yàn)時(shí),P1口用于輸入片內(nèi)EPROM的低8位地址。 P2口:P2口為一個(gè)內(nèi)部上拉電阻的8位雙向I/O口,它可以作為通用I/O口使用,傳送用戶的輸入/輸出數(shù)據(jù),同時(shí)可與P0口的第二功能配合,用于輸出片外存儲(chǔ)器的高8位地址,共同選中片外存儲(chǔ)單元,但此時(shí)不能傳送存儲(chǔ)器的讀寫(xiě)數(shù)據(jù)。在一些型號(hào)的單片

23、機(jī)中,P2口還可以配合P1口傳送片內(nèi)EPROM的12位地址中的高4位地址。P3口:P3口引腳是8個(gè)帶內(nèi)部上拉電阻的雙向I/O口,當(dāng)P3口寫(xiě)入1后,它們被內(nèi)部上拉為高電平。它也可作為通用的I/O口使用,傳送用戶的輸入輸出數(shù)據(jù),P3口也作為一些特殊功能端口使用,如下所示:RXD串行數(shù)據(jù)接收口:TXD串行數(shù)據(jù)發(fā)送口:外部中斷0輸入:外部中斷1輸入:T0記數(shù)器0計(jì)數(shù)輸入:T1記時(shí)器1外部輸入:外部RAM寫(xiě)選通信號(hào):外部RAM讀選通信號(hào) 圖2.1.1 AT89C51單片機(jī) RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)機(jī)器周期的高電平狀態(tài)。ALE/:地址鎖存允許/編程線,當(dāng)訪問(wèn)片外存儲(chǔ)器時(shí),A

24、LE/線上輸出一個(gè)高電位脈沖,其下降沿用于把這個(gè)片外存儲(chǔ)器低8位地址鎖存到外部專(zhuān)用地址鎖存器,以便空出P0.7P0.0引腳線去傳送隨后而來(lái)的片外存儲(chǔ)器讀寫(xiě)數(shù)據(jù)。在不訪問(wèn)片外存儲(chǔ)器時(shí),單片機(jī)自動(dòng)在ALE/線上輸出頻率為1/6晶振頻率的脈沖序列。:外部程序存儲(chǔ)器ROM的選通信號(hào)。在由外部程序存儲(chǔ)器取指期間,每個(gè)機(jī)器周期兩次有效。但在訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的信號(hào)將不出現(xiàn)。/VPP:允許訪問(wèn)片外存儲(chǔ)器/編程電源線,當(dāng)保持低電平時(shí),那么在此期間允許使用片外程序存儲(chǔ)器,不管是否有內(nèi)部程序存儲(chǔ)器。當(dāng)端保持高電平時(shí),那么允許使用片內(nèi)程序存儲(chǔ)器。在FLASH編程期間,此引腳也用于施加12V編程電源VP

25、P。XTAL1和XTAL2:片內(nèi)振蕩電路輸入線,這兩個(gè)端子用來(lái)外接石英晶體和微調(diào)電容,即用來(lái)連接單片機(jī)片內(nèi)OSC的定時(shí)反應(yīng)回路。2.1.4 LED數(shù)碼管簡(jiǎn)介本系統(tǒng)選用五個(gè)LED數(shù)碼管來(lái)進(jìn)行溫度顯示。LED又稱(chēng)為數(shù)碼管,它主要是由8段發(fā)光二極管組成的不同組合,其中 ag為數(shù)字和字符顯示段,dp為小數(shù)點(diǎn)的顯示,通過(guò)ag這7個(gè)發(fā)光二極管點(diǎn)亮的不同組合,可以顯示09和AF共16個(gè)數(shù)字和字母。LED數(shù)碼管可以分為共陰極和共陽(yáng)極兩種結(jié)構(gòu),如下列圖2.1.2(a)和圖2.1.2(b) 所示。共陰極結(jié)構(gòu)把8個(gè)發(fā)光二極管陰極連在一起,共陽(yáng)極結(jié)構(gòu)把8個(gè)發(fā)光二極管陽(yáng)極連在一起。通過(guò)單片機(jī)引腳輸出上下電平,可使數(shù)碼管

26、顯示相應(yīng)的數(shù)字或字母,這種使數(shù)碼管顯示字形的數(shù)據(jù)稱(chēng)字形碼,又稱(chēng)段選碼5 胡全.51單片機(jī)的數(shù)碼管動(dòng)態(tài)顯示技術(shù)J .信息技術(shù),2021,13:25265。數(shù)碼管引腳分配圖 圖2.1.2 七段LED數(shù)碼管表 7段LED的段選碼表顯示字符共陰極段碼共陽(yáng)極段碼顯示字符共陰極段碼共陽(yáng)極段碼03fHC0H87fH80H106HF9H96fH90H25bHA4HA77H88H34fHB0HB7fH83H466H99HC39HC6H56dH92HD3fHA1H67dH82HE79H86H707HF8HF71H8EH一個(gè)共陰極數(shù)碼管接至單片機(jī)的電路,要想顯示數(shù)字“7須a、b、c這3個(gè)顯示段發(fā)光 即這3個(gè)字段為高

27、電平只要在P0口輸入0000011107H即可。這里07H即為數(shù)字7的段選碼。字形與段選碼的關(guān)系見(jiàn)表2.1.1所示。 各局部電路設(shè)計(jì) 開(kāi)關(guān)復(fù)位與晶振電路在單片機(jī)應(yīng)用系統(tǒng)中,除單片機(jī)本身需要復(fù)位以外,外部擴(kuò)展I/O接口電路也需要復(fù)位,因此需要一個(gè)包括上電和按鈕復(fù)位在內(nèi)的系統(tǒng)同步復(fù)位電路。單片機(jī)上的XTAL1和XTAL2用來(lái)外接石英晶體和微調(diào)電容,即用來(lái)連接單片機(jī)片內(nèi)OSC的定時(shí)反應(yīng)回路。本設(shè)計(jì)中開(kāi)關(guān)復(fù)位與晶振電路如下列圖所示,當(dāng)按下按鍵開(kāi)關(guān)S1時(shí),系統(tǒng)復(fù)位一次。其中電容C1、C2為20pF,C3為10uF,電阻R2、R3為10k,晶振為11.0592MHz。圖2.2.1 系統(tǒng)復(fù)位與晶振電路 獨(dú)立

28、鍵盤(pán)連接電路鍵盤(pán)包括2個(gè)獨(dú)立按鍵S2和S3,一端與單片機(jī)的和口相連,另一端接地,當(dāng)按下任一鍵時(shí),P1口讀取低電平有效。系統(tǒng)上電后,進(jìn)入鍵盤(pán)掃描子程序,以查詢的方式確定各按鍵,完成溫度初值的設(shè)定。其中按鍵S1為加按鍵,每按下一次,系統(tǒng)對(duì)最初設(shè)定值加一,按鍵S2為減按鍵,每按下一次,系統(tǒng)對(duì)初設(shè)定值進(jìn)行減一計(jì)算。其接線圖如下:圖2.2.2 獨(dú)立鍵盤(pán)連接電路 數(shù)碼管顯示電路本設(shè)計(jì)制作中選用5位共陰極數(shù)碼管作為顯示模塊,它和單片機(jī)硬件的接口如下圖。其中前3位數(shù)碼管DS1、DS2、DS3用于顯示溫度傳感器實(shí)時(shí)檢測(cè)采集到的溫度,可精確到0.1攝氏度,顯示范圍為099.9攝氏度;后2位數(shù)碼管DS4、DS5用于

29、顯示系統(tǒng)設(shè)置的初值溫度,只能顯示整數(shù)的溫度值,顯示范圍為099攝氏度。5位數(shù)碼管的段選a、b、c、d、e、f、g、dp線分別與單片機(jī)的P0.0P0.7口連接,其中P0口需接一10K的上拉電阻,以使單片機(jī)的P0口能夠輸出上下電平。5位數(shù)碼管的位選W1W5分別與單片機(jī)的P2.0P2.4口相連接,只要P2.0P2.4中任一位中輸出低電平,那么選中與該位相連的數(shù)碼管。圖2.2.3 數(shù)碼管顯示電路 溫度采集電路DS18B20數(shù)字溫度傳感器通過(guò)其內(nèi)部計(jì)數(shù)時(shí)鐘周期來(lái)的作用,實(shí)現(xiàn)了特有的溫度測(cè)量功能。低溫系數(shù)振蕩器輸出的時(shí)鐘信號(hào)通過(guò)由高溫度系數(shù)振蕩器產(chǎn)生的門(mén)周期而被計(jì)數(shù),計(jì)數(shù)器預(yù)先置有與-55相對(duì)應(yīng)的一個(gè)基權(quán)

30、值。如果計(jì)數(shù)器計(jì)數(shù)到0時(shí),高溫度系數(shù)振蕩周期還未結(jié)束,那么表示測(cè)量的溫度值高于-55,被預(yù)置在-55的溫度存放器中的值就增加1,然后這個(gè)過(guò)程不斷重復(fù),直到高溫度系數(shù)振蕩周期結(jié)束為止。此時(shí)溫度存放器中的值即為被測(cè)溫度值,這個(gè)值以16位二進(jìn)制形式存放在存儲(chǔ)器中,通過(guò)主機(jī)發(fā)送存儲(chǔ)器讀命令可讀出此溫度值,讀取時(shí)低位在前,高位在后,依次進(jìn)行。由于溫度振蕩器的拋物線特性的影響,其內(nèi)用斜率累加器進(jìn)行補(bǔ)償 6 李鋼,趙彥峰.1-Wire總線數(shù)字溫度傳感器DSI8B20原理及應(yīng)用J.現(xiàn)代電子技術(shù),2005,28(21):7779.6。DS18B20在使用時(shí),一般都采用單片機(jī)來(lái)實(shí)現(xiàn)數(shù)據(jù)采集。只須將DS18B20信

31、號(hào)線與單片機(jī)1位I/O線相連,且單片機(jī)的1位I/O線可掛接多個(gè)DS18B20,就可實(shí)現(xiàn)單點(diǎn)或多點(diǎn)溫度檢測(cè)7 DS18B20的接口設(shè)計(jì)J.計(jì)算機(jī)測(cè)量與控制,2007,10(4):278280.。在本設(shè)計(jì)中將DS18B20接在P1.7口實(shí)現(xiàn)溫度的采集。其與單片機(jī)的連接如圖2.2.4。圖2.2.4 溫度采集電路 風(fēng)扇電機(jī)驅(qū)動(dòng)與調(diào)速電路本設(shè)計(jì)中由單片機(jī)的I/O口輸出PWM脈沖,通過(guò)一個(gè)達(dá)林頓反向驅(qū)動(dòng)器ULN2803驅(qū)動(dòng)12V直流無(wú)刷風(fēng)扇電機(jī)以及實(shí)現(xiàn)風(fēng)扇電機(jī)速度的調(diào)節(jié)。鍵盤(pán)控制設(shè)置溫度,通過(guò)軟件向單片機(jī)輸入相應(yīng)控制指令,由單片機(jī)通過(guò)口輸出與轉(zhuǎn)速相應(yīng)的PWM脈沖,經(jīng)過(guò)ULN2803驅(qū)動(dòng)風(fēng)扇直流電機(jī)控制電路

32、,實(shí)現(xiàn)電機(jī)轉(zhuǎn)速與啟停的自動(dòng)控制8 王會(huì)明,侯加林. 智能電風(fēng)扇控制器的研制J. 電子與自動(dòng)化,1998,5(4):2526.。當(dāng)環(huán)境溫度升高時(shí),直流電機(jī)的轉(zhuǎn)速會(huì)相應(yīng)按照設(shè)定的等級(jí)有所提高;當(dāng)環(huán)境溫度下降時(shí),電機(jī)的轉(zhuǎn)速會(huì)相應(yīng)的下降;當(dāng)環(huán)境溫度低于設(shè)置溫度時(shí),電機(jī)停止轉(zhuǎn)動(dòng),而環(huán)境溫度又高于預(yù)設(shè)溫度時(shí),電機(jī)重新啟動(dòng)。電路如圖2.2.5所示,風(fēng)扇電機(jī)的一端接12V電源,另一端接ULN2803的OUT7引腳,ULN2803的IN7引腳與單片機(jī)的P3.1引腳相連,通過(guò)控制單片機(jī)的P3.1引腳輸出PWM信號(hào),由此控制風(fēng)扇直流電機(jī)的速度與啟停。圖2.2.5 風(fēng)扇電機(jī)驅(qū)動(dòng)與調(diào)速電 系統(tǒng)選用的風(fēng)扇電機(jī)為12V直流

33、無(wú)刷電機(jī),單達(dá)林頓反向驅(qū)動(dòng)器ULN2803輸入TTL信號(hào)為5V或CMOS信號(hào)為615V時(shí),輸出的最大電壓為50V,最大電流為500mA,工作溫度范圍為070。本系統(tǒng)中單片機(jī)I/O口輸出的TTL信號(hào)為5V,因此此風(fēng)扇電機(jī)可以用ULN2803來(lái)驅(qū)動(dòng)。第三章 軟件設(shè)計(jì) 程序設(shè)置程序設(shè)計(jì)局部主要包括主程序、DS18B20初始化函數(shù)、DS18B20溫度轉(zhuǎn)換函數(shù)、溫度讀取函數(shù)、鍵盤(pán)掃描函數(shù)、數(shù)碼管顯示函數(shù)、溫度處理函數(shù)以及風(fēng)扇電機(jī)控制函數(shù)。DS18B20初始化函數(shù)完成對(duì)DS18B20的初始化;DS18B20溫度轉(zhuǎn)換函數(shù)完成對(duì)環(huán)境溫度的實(shí)時(shí)采集;溫度讀取函數(shù)完成主機(jī)對(duì)溫度傳感器數(shù)據(jù)的讀取及數(shù)據(jù)換算,鍵盤(pán)掃描

34、函數(shù)那么根據(jù)需要完成初值的加減設(shè)定;溫度處理函數(shù)對(duì)采集到的溫度進(jìn)行分析出理,為電機(jī)轉(zhuǎn)速的變化提供條件;風(fēng)扇電機(jī)控制函數(shù)那么根據(jù)溫度的數(shù)值完成對(duì)電機(jī)轉(zhuǎn)速及啟停的控制。主程序流程圖如圖3.1.1:調(diào)用鍵盤(pán)掃描函數(shù)主程序開(kāi)始調(diào)用數(shù)碼管顯示函數(shù)程序初始化調(diào)用溫度處理函數(shù)調(diào)用DS18B20初始化函數(shù)調(diào)用風(fēng)扇電機(jī)控制函數(shù)調(diào)用DS18B20溫度轉(zhuǎn)換函數(shù)結(jié)束 調(diào)用溫度讀取函數(shù)圖3.1.1 主程序流程圖 用Keil C51編寫(xiě)程序Keil C51是美國(guó)Keil Software公司開(kāi)發(fā)的51系列兼容單片機(jī)C語(yǔ)言的軟件開(kāi)發(fā)系統(tǒng),與單片機(jī)匯編語(yǔ)言相比,C語(yǔ)言在不僅語(yǔ)句簡(jiǎn)單靈活,而且編寫(xiě)的函數(shù)模塊可移植性強(qiáng)9 65.

35、,因而易學(xué)易用,效率高。隨著單片機(jī)開(kāi)發(fā)技術(shù)的不斷開(kāi)展,從普遍使用匯編語(yǔ)言到逐漸使用高級(jí)語(yǔ)言開(kāi)發(fā),單片機(jī)的開(kāi)發(fā)軟件也在不斷開(kāi)展,Keil軟件是目前使用較多的MCS-51系列單片機(jī)開(kāi)發(fā)的軟件。Keil C51軟件不僅提供了豐富的庫(kù)函數(shù),而且它強(qiáng)大的集成開(kāi)發(fā)調(diào)試工具為程序編輯調(diào)試帶來(lái)便利,在開(kāi)發(fā)大型軟件時(shí)更能表達(dá)高級(jí)語(yǔ)言的優(yōu)勢(shì)。在使用時(shí)要先建立一個(gè)工程,然后添加文件并編寫(xiě)程序,編寫(xiě)好后再編輯調(diào)試。Keil C51的使用界面如圖3.2.1。圖3.2.1 Keil C51的使用界面 用Proteus進(jìn)行仿真3.3.1 Proteus簡(jiǎn)介Proteus軟件是來(lái)自英國(guó)Labcenter electronic

36、s公司的EDA工具軟件。Proteus軟件有十多年的歷史,在全球廣泛使用,它不僅和其它EDA工具一樣有原理布圖、PCB自動(dòng)或人工布線及電路仿真的功能,而且更重要的功能是,他的電路仿真是互動(dòng)的,可以根據(jù)仿真實(shí)時(shí)觀察到得現(xiàn)象驗(yàn)證設(shè)計(jì)的正確性及準(zhǔn)確性并及時(shí)改變程序代碼、原理圖連接以及元件屬性等。它還能配合系統(tǒng)配置的虛擬儀器來(lái)顯示和輸出,如示波器、邏輯分析儀等10 孫號(hào).Proteus軟件在設(shè)計(jì)電子電路中的應(yīng)用J .儀表技術(shù),2021,8:7475,效果很好。Proteus有4個(gè)功能模塊:智能原理圖設(shè)計(jì)、完善的電路仿真功能、獨(dú)特的單片機(jī)協(xié)同仿真功能以及實(shí)用的PCB設(shè)計(jì)平臺(tái)。其內(nèi)部元件庫(kù)含有豐富的元件,

37、支持總線結(jié)構(gòu)以及智能化的連線功能;支持主流CPU如ARM、8051/52、AVR及其通用外設(shè)模型的實(shí)時(shí)仿真等,為單片機(jī)的開(kāi)發(fā)應(yīng)用等帶來(lái)極大的便利。軟件使用的主界面如圖3.3.1。圖3.3.1 Proteus使用界面 本設(shè)計(jì)基于Proteus的仿真 首先啟動(dòng)Proteus軟件并建立一工程,然后根據(jù)原理圖調(diào)出相應(yīng)的原件,再根據(jù)要求改變各原件的屬性并把各個(gè)原件按原理圖連接起來(lái)。在原理圖繪制連接好后再把編譯好的程序加載到其中11 樓俊軍.基于Proteus和Keil的單片機(jī)演奏樂(lè)曲的實(shí)現(xiàn)J.科技信息,2021,23:第50頁(yè)。最后根據(jù)系統(tǒng)要實(shí)現(xiàn)的功能分步進(jìn)行仿真12 王文海,周歡喜.用Proteus實(shí)

38、現(xiàn)51單片機(jī)的動(dòng)態(tài)仿真調(diào)試J .IT技術(shù),2006,20:1011。把溫度傳感器DS18B20溫度設(shè)置為26.4攝氏度,用鍵盤(pán)S2調(diào)節(jié)系統(tǒng)預(yù)設(shè)的溫度為22攝氏度。點(diǎn)擊開(kāi)始按鈕,系統(tǒng)開(kāi)始仿真,待一段時(shí)間穩(wěn)定后,觀察到此時(shí)風(fēng)扇直流電機(jī)的轉(zhuǎn)速為+14.2r/s,如圖3.3.2所示。圖3.3.2 Proteus仿真效果圖一當(dāng)把溫度傳感器DS18B20溫度設(shè)置為28.4攝氏度,用鍵盤(pán)S2調(diào)節(jié)系統(tǒng)預(yù)設(shè)的溫度為22攝氏度。點(diǎn)擊開(kāi)始按鈕,系統(tǒng)開(kāi)始仿真,待一段時(shí)間穩(wěn)定后,觀察到此時(shí)直流風(fēng)扇電機(jī)的轉(zhuǎn)速為+23.3 r/s,如圖3.3.3所示。圖3.3.3 Proteus仿真效果圖二 當(dāng)把溫度傳感器DS18B20溫

39、度設(shè)置為33.4攝氏度,用鍵盤(pán)S2調(diào)節(jié)系統(tǒng)預(yù)設(shè)的溫度為22攝氏度。點(diǎn)擊開(kāi)始按鈕,系統(tǒng)開(kāi)始仿真,待一段時(shí)間穩(wěn)定后,觀察到此時(shí)直流風(fēng)扇電機(jī)的轉(zhuǎn)速為+32.0 r/s,如圖3.3.4所示。圖3.3.4 Proteus仿真效果圖三在上一步仿真的根底上(溫度傳感器DS18B20溫度設(shè)置為33.4攝氏度,系統(tǒng)預(yù)設(shè)的溫度為22攝氏度),用鍵盤(pán)S2調(diào)節(jié)系統(tǒng)預(yù)設(shè)溫度至34攝氏度,此時(shí)可知系統(tǒng)預(yù)設(shè)溫度大于溫度傳感器檢測(cè)到的溫度,觀察到直流風(fēng)扇電機(jī)的轉(zhuǎn)速逐漸變慢,最后轉(zhuǎn)速變?yōu)?,符合系統(tǒng)要實(shí)現(xiàn)的功能,如圖3.3.5所示。圖3.3.5 Proteus仿真效果圖四 通過(guò)以上仿真可以看出,直流風(fēng)扇電機(jī)在系統(tǒng)設(shè)定溫度一定的

40、情況下,其轉(zhuǎn)速隨著環(huán)境溫度溫度傳感器檢測(cè)到的溫度的增加而增大。當(dāng)環(huán)境溫度低于系統(tǒng)預(yù)設(shè)的溫度時(shí),風(fēng)扇自動(dòng)停止運(yùn)轉(zhuǎn),實(shí)現(xiàn)了系統(tǒng)所設(shè)計(jì)的功能。當(dāng)然,在此沒(méi)有實(shí)現(xiàn)風(fēng)扇直流電機(jī)的無(wú)級(jí)調(diào)速,本系統(tǒng)實(shí)現(xiàn)的是電機(jī)在隨環(huán)境溫度變化的四個(gè)等級(jí)的速度變化,環(huán)境溫度在一定小范圍內(nèi)變化風(fēng)扇電機(jī)轉(zhuǎn)速是不變的,只有超過(guò)了設(shè)定的某一界限時(shí)轉(zhuǎn)速才會(huì)變化。第四章 系統(tǒng)調(diào)試 軟件調(diào)試 按鍵顯示局部的調(diào)試起初根據(jù)設(shè)計(jì)編寫(xiě)的系統(tǒng)程序:程序的鍵盤(pán)接口采用P1口,數(shù)碼管顯示采用P0口控制LED的斷碼,P2口控制LED的位碼,從而實(shí)現(xiàn)鍵盤(pán)功能及數(shù)碼管的顯示。經(jīng)過(guò)編譯沒(méi)有出錯(cuò),但在仿真調(diào)試時(shí),數(shù)碼管顯示的只是亂碼,沒(méi)有正確的顯示溫度,按鍵功能

41、也不靈,當(dāng)按下鍵時(shí),顯示并不變化。經(jīng)過(guò)查找分析,發(fā)現(xiàn)鍵盤(pán)掃描程序沒(méi)有沒(méi)有按鍵消抖局部,按鍵在按下與松手時(shí),都會(huì)有一定程度的抖動(dòng),從而可能使單片機(jī)做出錯(cuò)誤的判斷,導(dǎo)致按鍵條件預(yù)設(shè)溫度時(shí)失靈,甚至根本不能工作。因此必須在按鍵掃描程序中參加消抖局部,即在按鍵按下與松手時(shí)參加延時(shí)判斷,以檢測(cè)鍵盤(pán)是否真的按下或已完全松手。數(shù)碼管不能正確的顯示,主要是因?yàn)樗詳?shù)碼管的段碼都由P0口傳送,而數(shù)碼管顯示又采用了動(dòng)態(tài)掃描的方式,但在程序中卻沒(méi)有設(shè)置顯示段碼的暫存器,導(dǎo)致當(dāng)P0口傳送段碼時(shí)發(fā)生混亂,不能正確識(shí)別段碼。應(yīng)在系統(tǒng)中參加鎖存器,或是在程序中設(shè)定存儲(chǔ)段碼的空間。在鍵盤(pán)參加了消抖程序,數(shù)碼管顯示程序中參加了

42、段碼的存儲(chǔ)空間后,數(shù)碼管能夠正常的顯示,按鍵也能夠工作,到達(dá)了較好的效果。 傳感器DS18B20溫度采集局部調(diào)試 由于數(shù)字式集成溫度傳感器DS18B20的高度集成化,為軟件的設(shè)計(jì)和調(diào)試帶來(lái)了極大的簡(jiǎn)便,小體積、低功耗、高精度為控制電機(jī)的精度和穩(wěn)定提供了可能。軟件設(shè)計(jì)采用P3.1口為數(shù)字溫度輸入口,但是需要對(duì)輸入的數(shù)字信號(hào)進(jìn)行處理后才能顯示,從而多了溫度轉(zhuǎn)換程序。通過(guò)軟件設(shè)計(jì),實(shí)現(xiàn)了對(duì)環(huán)境溫度的連續(xù)檢測(cè),由于硬件LED個(gè)數(shù)的限制,只顯示了預(yù)設(shè)溫度的整數(shù)局部。在溫度轉(zhuǎn)換程序中,為了能夠正確的檢測(cè)并顯示溫度的小數(shù)位,程序中把檢測(cè)的溫度與10相乘后,再按一個(gè)三位的整數(shù)來(lái)處理。如把24.5變?yōu)?45來(lái)處

43、理,這樣為程序的編寫(xiě)帶來(lái)了方便。 電動(dòng)機(jī)調(diào)速電路局部調(diào)試在本設(shè)計(jì)中,采用了達(dá)林頓反向驅(qū)動(dòng)器ULN2803驅(qū)動(dòng)直流電機(jī),其可驅(qū)動(dòng)八個(gè)直流電機(jī),本系統(tǒng)僅驅(qū)動(dòng)一個(gè)。軟件設(shè)置了口輸出不同的PWM波形,通過(guò)達(dá)林頓反向驅(qū)動(dòng)器ULN2803驅(qū)動(dòng)直流電機(jī)轉(zhuǎn)動(dòng),通過(guò)軟件中程序設(shè)定,根據(jù)不同溫度輸出不同的PWM波,從而得到不同的占空比控制風(fēng)扇直流電機(jī)。程序?qū)崿F(xiàn)了口的PWM波形輸出,當(dāng)外界溫度低于設(shè)置溫度時(shí),電機(jī)不轉(zhuǎn)動(dòng)或自動(dòng)停止轉(zhuǎn)動(dòng);當(dāng)外界溫度高于設(shè)置溫度時(shí),電機(jī)的轉(zhuǎn)速升高或是自動(dòng)開(kāi)始轉(zhuǎn)動(dòng),且外界溫度與設(shè)置溫度的差值越大,電機(jī)轉(zhuǎn)速越高,即占空比增加。在本系統(tǒng)中風(fēng)扇電機(jī)的轉(zhuǎn)速可實(shí)現(xiàn)四級(jí)調(diào)速。通過(guò)溫度傳感器檢測(cè)的溫度與

44、系統(tǒng)預(yù)設(shè)溫度值的比較,實(shí)現(xiàn)轉(zhuǎn)速變換。當(dāng)檢測(cè)到的溫度比預(yù)設(shè)的溫度每增加5攝氏度時(shí),風(fēng)扇電機(jī)轉(zhuǎn)速增加一級(jí)。 硬件調(diào)試 按鍵顯示局部的調(diào)試 系統(tǒng)按鍵局部實(shí)現(xiàn)了以下功能:按下口鍵,LED的后兩位顯示溫度值增一;按下口鍵,LED的后兩位顯示溫度值減一。調(diào)試過(guò)程中出現(xiàn)了當(dāng)按鍵時(shí)間過(guò)長(zhǎng)時(shí),設(shè)置的溫度值不是增一或者減一,而是增加后減少幾個(gè)值,出現(xiàn)這種情況的主要元嬰可能是按鍵的去抖動(dòng)延時(shí)時(shí)間過(guò)長(zhǎng)造成,改良方法為將對(duì)應(yīng)的按鍵去抖動(dòng)延時(shí)時(shí)間適量增加,但也不應(yīng)過(guò)長(zhǎng),否那么將出現(xiàn)按鍵無(wú)效的情形。系統(tǒng)顯示局部實(shí)現(xiàn)了以下功能:LED顯示的前三位實(shí)現(xiàn)了環(huán)境溫度整數(shù)局部與小數(shù)局部的連續(xù)顯示,LED的后兩位能根據(jù)按鍵的調(diào)整顯示所

45、需要的設(shè)計(jì)溫度。且LED的顯示效果很好,很穩(wěn)定。 傳感器DS18B20溫度采集局部調(diào)試將DS18B20芯片接在系統(tǒng)板對(duì)應(yīng)的口,通過(guò)插針在對(duì)應(yīng)系統(tǒng)板的右下側(cè)三口即為對(duì)應(yīng)的VCC、和GND,可將芯片直接插在該插針上,因此即為方便。系統(tǒng)調(diào)試中為驗(yàn)證DS18B20是否能在系統(tǒng)板上工作,將手心靠攏或者捏住芯片,即可發(fā)現(xiàn)LED顯示的前兩位溫度也迅速升高,驗(yàn)證了DS18B20能在系統(tǒng)板上工作。由于DS18B20為3個(gè)引腳,因此在調(diào)試過(guò)程中因注意其各個(gè)引腳的對(duì)應(yīng)位置,以免將其接反而是芯片不能工作甚至燒毀芯片。 電動(dòng)機(jī)調(diào)速電路局部調(diào)試系統(tǒng)本局部的設(shè)計(jì)中重在軟件設(shè)計(jì),因?yàn)橥鈬尿?qū)動(dòng)電路只是將送來(lái)的PWM信號(hào)放大從

46、而驅(qū)動(dòng)電機(jī)轉(zhuǎn)動(dòng)。系統(tǒng)軟件設(shè)置在P3.1口輸出使電機(jī)轉(zhuǎn)動(dòng)的PWM占空比,當(dāng)環(huán)境溫度高于設(shè)置溫度時(shí),電機(jī)開(kāi)始轉(zhuǎn)動(dòng),假設(shè)此時(shí)用高于環(huán)境溫度的熱源靠近測(cè)溫芯片DS18B20時(shí),發(fā)現(xiàn)電機(jī)的轉(zhuǎn)速在升高,并越來(lái)越快,當(dāng)?shù)竭_(dá)一定值時(shí),發(fā)現(xiàn)電機(jī)的轉(zhuǎn)速不再升高;將熱源離開(kāi)測(cè)溫芯片DS18B20時(shí),發(fā)現(xiàn)電機(jī)的轉(zhuǎn)速開(kāi)始下降,轉(zhuǎn)速到達(dá)一定值時(shí),假設(shè)將設(shè)置溫度升高到環(huán)境溫度以上,發(fā)現(xiàn)電機(jī)又停止了轉(zhuǎn)動(dòng)。系統(tǒng)采用的直流電機(jī)為12V的額定電壓,而該驅(qū)動(dòng)電路在采用單片機(jī)電源時(shí)的輸出電壓最高不過(guò)5V,因此在調(diào)試過(guò)程中只采用了原有的5V直流電機(jī)來(lái)調(diào)試,且得到了可觀的控制效果。 系統(tǒng)功能 系統(tǒng)實(shí)現(xiàn)的功能本系統(tǒng)能夠?qū)崿F(xiàn)單片機(jī)系統(tǒng)檢測(cè)環(huán)境

47、溫度的變化,然后根據(jù)環(huán)境溫度變化來(lái)控制風(fēng)扇直流電機(jī)輸入占空比的變化,從而產(chǎn)生不同的轉(zhuǎn)動(dòng)速度,亦可根據(jù)鍵盤(pán)調(diào)節(jié)不同的設(shè)置溫度,再由環(huán)境溫度與設(shè)置溫度的差值來(lái)控制電機(jī)。當(dāng)環(huán)境溫度低于設(shè)置溫度時(shí),電機(jī)停止轉(zhuǎn)動(dòng);當(dāng)環(huán)境溫度高于設(shè)置溫度時(shí),單片機(jī)對(duì)應(yīng)輸出口輸出不同占空比的PWM信號(hào),控制電機(jī)開(kāi)始轉(zhuǎn)動(dòng),并隨著環(huán)境溫度與設(shè)置溫度的差值的增加電機(jī)的轉(zhuǎn)速逐漸升高。 系統(tǒng)還能動(dòng)態(tài)的顯示當(dāng)前溫度和設(shè)置溫度,并能通過(guò)鍵盤(pán)調(diào)節(jié)當(dāng)前的設(shè)置溫度。 系統(tǒng)功能分析 系統(tǒng)總體上由五局部來(lái)組成,既按鍵與復(fù)位電路、數(shù)碼管顯示電路、溫度檢測(cè)電路、電機(jī)驅(qū)動(dòng)電路。首先考濾的是溫度檢測(cè)電路,該局部是整個(gè)系統(tǒng)的首要局部,首先要檢測(cè)到環(huán)境溫度,

48、才能用單片機(jī)來(lái)判斷溫度的上下,然后通過(guò)單片機(jī)控制直流風(fēng)扇電機(jī)的轉(zhuǎn)速;其次是電機(jī)驅(qū)動(dòng)電路,該局部需要使用外圍電路將單片機(jī)輸出的PWM信號(hào)轉(zhuǎn)化為平均電壓輸出,根據(jù)不同的PWM波形得到不同的平均電壓,從而控制電機(jī)的轉(zhuǎn)速,電路的設(shè)計(jì)中采用了達(dá)林頓反向驅(qū)動(dòng)器ULN2803,實(shí)現(xiàn)較好的控制效果;再次是數(shù)碼管的動(dòng)態(tài)顯示電路,該局部的功能實(shí)現(xiàn)對(duì)環(huán)境溫度和設(shè)置溫度的顯示,其中DS18B20采集環(huán)境溫度,按鍵實(shí)現(xiàn)不同設(shè)置溫度的調(diào)整,實(shí)現(xiàn)了對(duì)環(huán)境溫度和設(shè)置溫度的及時(shí)連續(xù)顯示。結(jié) 論 本次設(shè)計(jì)的系統(tǒng)以單片機(jī)為控制核心,以溫度傳感器DS18B20檢測(cè)環(huán)境溫度,實(shí)現(xiàn)了根據(jù)環(huán)境溫度變化調(diào)節(jié)不同的風(fēng)扇電機(jī)轉(zhuǎn)速,在一定范圍能能

49、實(shí)現(xiàn)轉(zhuǎn)速的連續(xù)調(diào)節(jié),LED數(shù)碼管能連續(xù)穩(wěn)定的顯示環(huán)境溫度和設(shè)置溫度,并能通過(guò)兩個(gè)獨(dú)立按鍵調(diào)節(jié)不同的設(shè)置溫度,從而改變環(huán)境溫度與設(shè)置溫度的差值,進(jìn)而改變電機(jī)轉(zhuǎn)速。實(shí)現(xiàn)了基于單片機(jī)的溫控風(fēng)扇的設(shè)計(jì)。本系統(tǒng)設(shè)計(jì)可推廣到各種電動(dòng)機(jī)的控制系統(tǒng)中,實(shí)現(xiàn)電動(dòng)機(jī)的轉(zhuǎn)速調(diào)節(jié)。在生產(chǎn)生活中,本系統(tǒng)可用于簡(jiǎn)單的日常風(fēng)扇的智能控制,為生活帶來(lái)便利;在工業(yè)生產(chǎn)中,可以改變不同的輸入信號(hào),實(shí)現(xiàn)對(duì)不同信號(hào)輸入控制電機(jī)的轉(zhuǎn)速,進(jìn)而實(shí)現(xiàn)生產(chǎn)自動(dòng)化,如在電力系統(tǒng)中可以根據(jù)不同的負(fù)荷到達(dá)不同的電壓信號(hào),再由電壓信號(hào)調(diào)節(jié)不同的發(fā)電機(jī)轉(zhuǎn)速,進(jìn)而調(diào)節(jié)發(fā)電量,實(shí)現(xiàn)電力系統(tǒng)的自動(dòng)化調(diào)節(jié)。綜上所述,該系統(tǒng)的設(shè)計(jì)和研究在社會(huì)生產(chǎn)和生活中具有重要

50、地位。參考文獻(xiàn)1 李學(xué)龍.使用單片機(jī)控制的智能遙控電風(fēng)扇控制器J.電子電路制作,2003,9:1315.2 藍(lán)厚榮.單片機(jī)的PWM控制技術(shù)J.工業(yè)控制計(jì)算機(jī).2021,23(3):97983 郭天祥.3444 胡漢才.單片機(jī)原理及其接口技術(shù)M第2版.北京:清華大學(xué)出版社.2004.4977.5 胡全. 51單片機(jī)的數(shù)碼管動(dòng)態(tài)顯示技術(shù)J .信息技術(shù),2021,13:25266 李鋼,趙彥峰.1-Wire總線數(shù)字溫度傳感器DSI8B20原理及應(yīng)用J.現(xiàn)代電子技術(shù),2005,28(21):7779.7DS18B20的接口設(shè)計(jì)J.計(jì)算機(jī)測(cè)量與控制,2007,10(4):278280.8 王會(huì)明,侯加林

51、.智能電風(fēng)扇控制器的研制J.電子與自動(dòng)化,1998,5(4):2526.9 譚浩強(qiáng).C程序設(shè)計(jì)M第三版.北京:清華大學(xué)出版社.2005.3765.10 孫號(hào). Proteus軟件在設(shè)計(jì)電子電路中的應(yīng)用J.儀表技術(shù),2021,8:747511 樓俊軍.基于Proteus和Keil的單片機(jī)演奏樂(lè)曲的實(shí)現(xiàn)J .科技信息,2021,23:第50頁(yè)12 王文海,周歡喜.用Proteus實(shí)現(xiàn)51單片機(jī)的動(dòng)態(tài)仿真調(diào)試J.IT技術(shù),2006,20:101113 丁建軍,陳定方,周?chē)?guó)柱. 基于AT89C51的智能電風(fēng)扇控制系統(tǒng)J.湖北工學(xué)院學(xué)報(bào),2003,18(2):6063.14 王會(huì)明,侯加林. 智能電風(fēng)扇

52、控制器的研制J. 電子與自動(dòng)化,1998,5(4):2526.15 劉進(jìn)山. 基于MCS-51電風(fēng)扇智能調(diào)速器的設(shè)計(jì)J. 廣州:電子質(zhì)量,2004,10(10):71.16 YU Qihao,CHENG Guodong,NIU Fujun. The application of auto-temperature-controlled ventilation embankment in Qinghai-Tibet Railway J. Science in China SerD Earth Sciences,2004,1(47):168176.17 YLai,Y,Wang. Threedimen

53、sional nonlinear analysis for temperature characteristic of ventilated embankment in permafrost regions J. Cold Regions Science and Technology,2004,38(2):165184.18 Cheng Guodong. Linearity engineering in permafrost areas J. Journal of Glaciology and Geocryology(in Chinese),2001,23(3):213217.19 B Sch

54、neierApplied Crytography:Algorithms,and Source Code in CJNew York:Jone Wiley& Sons. 1994301307.20 Intel: Benjamin Jun,Paul KocherThe lntel Random Number GeneratorJWhite Paper Prepared for lntel Corporation,April 22,l999:45致謝在此衷心感謝我的導(dǎo)師宋宗倫教授。本文的設(shè)計(jì)工作是在宋教授的悉心指導(dǎo)下完成的,從論文的選題、研究方案的制定、技術(shù)路線的選擇到系統(tǒng)的開(kāi)發(fā)設(shè)計(jì),各個(gè)方面都離不

55、開(kāi)宋教授熱情耐心的幫助和教導(dǎo)。他嚴(yán)肅的科學(xué)態(tài)度,嚴(yán)謹(jǐn)?shù)闹螌W(xué)精神,精益求精的工作作風(fēng),深深地感染和鼓勵(lì)著我。同時(shí)也要感謝在本次論文的設(shè)計(jì)過(guò)程中不斷給予我?guī)椭⒅С峙c鼓勵(lì)的老師和同學(xué),是他們讓我更加有信心堅(jiān)持下去,是他們讓我更加順利的把一個(gè)個(gè)問(wèn)題解決,最終順利的完本錢(qián)文的設(shè)計(jì)。四年的學(xué)習(xí)生涯馬上就要畫(huà)上句號(hào)了,畢業(yè)前所有的努力與付出都凝聚在這篇論文里面。相信它雖然算不上上乘之作,但確實(shí)是我用心血澆灌的答卷。在此我也要感謝我的同學(xué)們,正是和他們四年的朝夕相處,一起上課一起討論問(wèn)題,讓我逐漸有了對(duì)問(wèn)題的思考認(rèn)識(shí),從而更好地規(guī)劃自己的學(xué)業(yè)。四年的求學(xué)時(shí)光給我留下了美好的回憶,它將成為我今后人生旅途中新的

56、起點(diǎn)。最后,感謝我的爸爸媽媽。焉得諼草,言樹(shù)之背,養(yǎng)育之恩,無(wú)以回報(bào),你們永遠(yuǎn)健康快樂(lè)是我最大的心愿。附錄1:電路總圖附圖1 電路總圖附錄2:程序代碼#include #define uchar unsigned char#define uint unsigned intsbit DQ=P17;sbit key1=P13;sbit key2=P14;sbit dianji=P31;float ff;uint y3;uchar shi,ge,xiaoshu,sheding=20,gaonum,dinum;uchar code dispcode= /段碼0 x3f,0 x06,0 x5b,0 x4

57、f, 0 x66,0 x6d,0 x7d,0 x07, 0 x7f,0 x6f,0 x77,0 x7c, 0 x39,0 x5e,0 x79,0 x71; uchar code tablel= /帶小數(shù)點(diǎn)的段碼0 xbf,0 x86,0 xdb,0 xcf,0 xe6,0 xed,0 xfd,0 x87,0 xff,0 xef;uchar dispbitcode= /位選0 xfe,0 xfd,0 xfb,0 xf7, 0 xef,0 xdf,0 xbf,0 x7f; uchar dispbuf8=0,0,0,0,0,0,0,0; void Delay(uint num)/ 延時(shí)函數(shù)while( -num );void digitalshow(uchar a4,uchar a3,uchar a2,uchar a1,uchar a0

溫馨提示

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

評(píng)論

0/150

提交評(píng)論