基于51單片機(jī)的智能溫控電扇設(shè)計(jì)_第1頁
基于51單片機(jī)的智能溫控電扇設(shè)計(jì)_第2頁
基于51單片機(jī)的智能溫控電扇設(shè)計(jì)_第3頁
基于51單片機(jī)的智能溫控電扇設(shè)計(jì)_第4頁
基于51單片機(jī)的智能溫控電扇設(shè)計(jì)_第5頁
已閱讀5頁,還剩26頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、畢業(yè)論文(設(shè)計(jì))題 目 基于51單片機(jī)的智能溫控電扇設(shè)計(jì)學(xué)生姓名 學(xué) 號 院 系 專 業(yè) 指導(dǎo)教師 年 月 日目 錄1 引言12 方案設(shè)計(jì)22.1 系統(tǒng)整體設(shè)計(jì)22.2 方案論證22.2.1 溫度傳感器的選擇22.2.2 紅外探測的選擇32.2.3 控制核心的選擇32.2.4 顯示器件的選擇32.2.5 調(diào)速方式的選擇42.2.6 驅(qū)動(dòng)方式選擇43 硬件設(shè)計(jì)43.1系統(tǒng)各器件簡介53.1.1 單線程數(shù)字溫度傳感器DS18B2053.1.2 AT89S51單片機(jī)簡介53.1.3 橋式驅(qū)動(dòng)電路L298N簡介63.1.4 LCD1602簡介73.1.5對射式光電開關(guān)簡介73.2 各部分電路設(shè)計(jì)83.

2、2.1 開關(guān)復(fù)位與晶振電路83.2.2 獨(dú)立控制鍵盤電路83.2.3 LCD顯示電路93.2.4 紅外探測電路93.2.5 溫度采集電路103.2.6 風(fēng)扇驅(qū)動(dòng)電路104 軟件設(shè)計(jì)114.1 主程序流程圖114.2 液晶顯示子程序134.3 DS18B20溫度傳感器子程序144.3.1 溫度讀取程序144.3.2 溫度處理程序174.4 鍵盤掃描子程序184.5 溫度比較處理子程序194.6 電機(jī)控制程序(包含紅外探測)214.7 軟件設(shè)計(jì)中的問題與分析234.7.1 LCD顯示程序的問題234.7.2 DS18B20的顯示程序問題235 硬件調(diào)試235.1 按鍵電路的調(diào)試245.2 溫度傳感

3、器電路的調(diào)試245.3 電機(jī)電路的調(diào)試245.4 紅外感應(yīng)電路的調(diào)試245.5 硬件調(diào)試遇到的問題246 結(jié)論24參考文獻(xiàn):2626基于51單片機(jī)的智能溫控電扇設(shè)計(jì)摘要:風(fēng)扇是人們?nèi)粘I钪斜夭豢扇钡墓ぞ?,尤其是在夏天,作為一種使用頻率很高的電器,備受人們喜愛。本文將以AT89S51為主控芯片,輔以DS18B20溫度傳感器,結(jié)合紅外探測裝置,來實(shí)現(xiàn)一種智能溫控電扇的設(shè)計(jì)。此風(fēng)扇通過液晶顯示器來顯示溫度和風(fēng)速,配備2個(gè)溫度設(shè)定按鍵,由DS18B20讀取外界溫度,紅外探頭探測是否有人,通過設(shè)定的溫度配合程序來調(diào)節(jié)風(fēng)速,最后通過L298N來驅(qū)動(dòng)電機(jī)。經(jīng)過調(diào)試,風(fēng)扇可以按照溫度智能變速,無人自動(dòng)關(guān)閉,

4、實(shí)現(xiàn)了智能溫控的目標(biāo)。關(guān)鍵詞:DS18B20;AT89S51;紅外探頭;液晶顯示器1602;L298N1 引言電扇是人們?nèi)粘I钪谐S玫慕禍毓ぞ?,從開始的吊扇到現(xiàn)在的USB風(fēng)扇,無處不見電扇的蹤跡。雖然如今空調(diào)已經(jīng)走進(jìn)千家萬戶,但是電扇的低位還是無可取代,作為一種節(jié)能環(huán)保,并且廉價(jià)簡單的降溫工具,電扇還在很多人家發(fā)揮著自己獨(dú)特的作用。順應(yīng)時(shí)代潮流,各種多功能的風(fēng)扇逐漸在取代傳統(tǒng)風(fēng)扇。單片機(jī)作為一種智能化程度高,控制精度高,操作簡單,廉價(jià)易得,抗干擾能力強(qiáng)等特點(diǎn),越來越多的應(yīng)用于智能化產(chǎn)品之中。市場上智能風(fēng)扇產(chǎn)品相繼問世,制作方法也多種多樣,功能也逐漸完善,普遍都具有了手動(dòng)變速和定時(shí)關(guān)閉等功能,

5、相對而言,具備人性化,智能化的風(fēng)扇還是很少,使用也并不廣泛,而且在電子工藝高度發(fā)展的今天,智能化的步伐也越來越快,尤其是中國這個(gè)高速發(fā)展的國家,電扇的智能化也該向前邁進(jìn)一個(gè)步伐。在中國市場上風(fēng)扇還是有一定的市場份額的,幾乎每個(gè)家庭都有風(fēng)扇,具備價(jià)格便宜,擺放輕便,體積靈巧等特點(diǎn),使得風(fēng)扇在中小城市以及鄉(xiāng)村將來一段時(shí)間內(nèi)仍然會(huì)占有市場的大部分份額,為提高風(fēng)扇的市場競爭力,使之在技術(shù)含量上有所提高,滿足智能化的要求,智能風(fēng)扇很具競爭力。大學(xué)四年即將結(jié)束,為了檢驗(yàn)自己的學(xué)習(xí)情況,我決定使用之前所學(xué)習(xí)到的硬件只是結(jié)合相關(guān)的軟件基礎(chǔ)來制作一個(gè)基于單片機(jī)的智能溫控風(fēng)扇?;趯θ诵曰c智能化相結(jié)合的考慮,同

6、時(shí)基于對價(jià)格的考慮,本設(shè)計(jì)決定制作一個(gè)基于51單片機(jī)的智能溫控風(fēng)扇,該風(fēng)扇具有隨溫度自動(dòng)調(diào)節(jié)風(fēng)速的功能,并且在無人時(shí)可以自動(dòng)關(guān)閉,而且可以根據(jù)每個(gè)人的不同情況來設(shè)定基準(zhǔn)溫度,從而實(shí)現(xiàn)了人性化與智能化的雙重目標(biāo)。2 方案設(shè)計(jì)2.1 系統(tǒng)整體設(shè)計(jì)本設(shè)計(jì)的整體思路是:利用溫度傳感器DS18B20來檢測環(huán)境溫度,并直接輸出數(shù)字溫度給51單片機(jī)進(jìn)行處理,并將實(shí)時(shí)溫度、設(shè)置溫度、風(fēng)速顯示在液晶1602上。設(shè)置溫度輔以2個(gè)可調(diào)按鍵,一個(gè)提高設(shè)置溫度,一個(gè)降低設(shè)置溫度,設(shè)置溫度只能是整數(shù)型式,檢測到的環(huán)境溫度可以精確到小數(shù)點(diǎn)后一位。本系統(tǒng)還配備一個(gè)紅外探頭,探測出風(fēng)范圍內(nèi)是否有人,若無人則自動(dòng)關(guān)閉風(fēng)扇。同時(shí)采

7、用單片機(jī)模擬PWM脈寬調(diào)制方式來改變直流電扇電機(jī)的轉(zhuǎn)速。系統(tǒng)整體結(jié)構(gòu)框圖1所示:AT89S51晶振L298NLCD1602DS18B20復(fù)位紅外探頭獨(dú)立鍵盤直流電機(jī)圖1整體系統(tǒng)結(jié)構(gòu)圖2.2 方案論證本設(shè)計(jì)要求實(shí)現(xiàn)在溫度變化的情況下風(fēng)扇直流電機(jī)轉(zhuǎn)速隨之改變,并且能夠在無人的情況和溫度低于設(shè)定溫度的時(shí)候自行停止,需要比較高的溫度分辨率和穩(wěn)定的探測工具以及可靠的電機(jī)控制部件。2.2.1 溫度傳感器的選擇在本設(shè)計(jì)中,溫度傳感器的方案有以下兩種:方案一:采用熱敏電阻。熱敏電阻的特性就是阻值可以隨溫度的變化而變化,采用熱敏電阻作為檢測溫度的核心部件,然后通過放大電路放大信號,經(jīng)過AD0809數(shù)模轉(zhuǎn)換講放大

8、的微弱電壓變化信號轉(zhuǎn)化了數(shù)字信號輸入單片機(jī)處理。方案二:單總線數(shù)字溫度計(jì)DS18B20。作為一款優(yōu)秀的數(shù)字集成溫度傳感器,DS18B20可以直接檢測并輸出數(shù)字信號給單片機(jī)進(jìn)行處理。對于方案一,如若采用熱敏電阻作為溫度檢測元件,則價(jià)格方面比較便宜,元件易得,但是熱敏電阻的缺點(diǎn)顯而易見,對于溫度細(xì)微變化反應(yīng)不敏感,而且在后續(xù)的放大和轉(zhuǎn)換電路中還會(huì)造成失真和誤差,并且熱敏電阻的變化曲線非線性,每個(gè)熱敏電阻都不同,還需要單獨(dú)測試描繪出曲線,雖然可以通過軟件來實(shí)現(xiàn)誤差的修正,但是這會(huì)使得電路的復(fù)雜性增加,并且在人體所在實(shí)際環(huán)境中難以檢測到小的溫度變化。所以這個(gè)方案在本設(shè)計(jì)中難以勝任。對于方案二,DS18

9、B20測量范圍從-55到+125,增量值為0.5,人體所處的環(huán)境溫度包括其中,分辨率較高,所獲取的溫度誤差小,并且對溫度變化反應(yīng)靈敏。DS18B20最具優(yōu)勢的是其溫度值在器件內(nèi)部直接轉(zhuǎn)化成數(shù)字信號輸出,簡化了系統(tǒng)設(shè)計(jì),又由于該溫度傳感器采用了單總線技術(shù),使得其接口與單片機(jī)接口變得非常簡潔,抗干擾能力也得到了提高,所以本系統(tǒng)采用這個(gè)方案。2.2.2 紅外探測的選擇方案一:熱釋電紅外探測模塊。作為一款應(yīng)用很廣的紅外探測模塊,具有靈敏度高,可靠性高,低電壓工作模式等特點(diǎn),被廣泛的應(yīng)用與各種場合中。但是與本設(shè)計(jì)卻有一個(gè)沖突,該模塊使用環(huán)境應(yīng)盡量避免流動(dòng)的風(fēng),流動(dòng)的風(fēng)也會(huì)對感應(yīng)器造成干擾。所以方案一不適

10、用。方案二:對射式光電開關(guān)。對射式光電開關(guān)是一款有紅外線發(fā)射管跟紅外線接收管配對使用的光電開關(guān)。對射式光電開關(guān)在電路中起到了通過光來傳播電路,當(dāng)有物體阻擋著紅外線發(fā)射管跟接受管時(shí),電路會(huì)停止工作。使用這個(gè)特性,我們就能判斷是否有人,外界干擾就沒有了,非常適合這個(gè)系統(tǒng),所以就采用這種方案。2.2.3 控制核心的選擇本設(shè)計(jì)采用AT89S51單片機(jī)作為控制核心,通過軟件編程的方法進(jìn)行溫度的實(shí)時(shí)檢測與判斷,并在I/O口上輸出控制信號,控制電機(jī)工作。AT89S51具有較大的存儲空間,工作電壓低,性能高,片內(nèi)含4K字節(jié)的只讀程序存儲器ROM和128字節(jié)的隨即數(shù)據(jù)存儲器RAM,兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng),

11、價(jià)格便宜,與本系統(tǒng)的設(shè)計(jì)相符合。2.2.4 顯示器件的選擇方案一:LED共陰極數(shù)碼顯示管。方案二:LCD液晶顯示屏1602。對于方案一,成本相對低廉,功耗也低,在黑暗空間也可以看的清楚,可視距離較遠(yuǎn),同時(shí)顯示溫度的程序也相對而言簡單,所以這種顯示方式也得到了廣泛應(yīng)用。但是它采用的顯示方式是動(dòng)態(tài)掃描,各個(gè)LED逐個(gè)點(diǎn)亮,會(huì)產(chǎn)生閃爍,在這個(gè)溫度實(shí)時(shí)變化的環(huán)境中閃爍可能太快,數(shù)據(jù)可能不能很好的展示出來,故此方案不采用。對于方案二,液晶顯示屏顯示字符清晰,自帶背光,還能顯示符號,并且不會(huì)不斷閃爍,顯示性能一流,并且考慮到此設(shè)計(jì)不只是要顯示溫度,還要顯示電機(jī)和紅外的狀態(tài),所以從設(shè)計(jì)完善的角度來考慮,選擇

12、此方案更有優(yōu)勢。2.2.5 調(diào)速方式的選擇方案一:采用數(shù)模轉(zhuǎn)化芯片DAC0832來控制,有單片機(jī)根據(jù)當(dāng)前環(huán)境溫度輸出數(shù)值到DAC0832中,再由DAC0832產(chǎn)生相應(yīng)的模擬信號控制晶閘管的導(dǎo)通腳,從而采用無級調(diào)速電路實(shí)現(xiàn)電扇電機(jī)轉(zhuǎn)速的調(diào)節(jié)。方案二:采用單片機(jī)軟件模擬PWM調(diào)速的方法。PWM是一種按照一定的規(guī)律改變脈沖序列的脈沖寬度,以調(diào)節(jié)輸出量和波形的一種調(diào)節(jié)方式,在PWM驅(qū)動(dòng)控制的調(diào)節(jié)系統(tǒng)中,最常用的是矩形波PWM信號,在控制時(shí)調(diào)節(jié)PWM波的占空比。占空比是指高電平在一個(gè)周期時(shí)間內(nèi)的百分比。在控制電機(jī)的轉(zhuǎn)速時(shí),占空比越大,轉(zhuǎn)速就越快,若全為高電平時(shí)占空比為100%,此時(shí)轉(zhuǎn)速達(dá)到最大。用單片機(jī)

13、的I/O口輸出PWM信號時(shí),有如下三種方法:(1)利用軟件延時(shí)。當(dāng)高電平延時(shí)時(shí)間到時(shí),對I/O口電平取反,使其變成低電平,再延時(shí)一定時(shí)間,反之在低電平延時(shí)到時(shí),對I/O口電平取反,如此循環(huán)即可得到PWM信號。本設(shè)計(jì)就是采用了這種方法。(2)利用定時(shí)器。控制方法與(1)相同,只是在該方法中利用單片機(jī)的定時(shí)器來進(jìn)行高低電平的轉(zhuǎn)變,而不是利用軟件的延時(shí)。應(yīng)用此方法時(shí)編程相對復(fù)雜,故不予以采用。(3)利用單片機(jī)自帶的PWM控制器。STC系列單片機(jī)自帶PWM控制器,但本系統(tǒng)使用的AT89系列單片機(jī)沒有此功能,所以不能使用。對于方案一,該方案能實(shí)現(xiàn)對直流電機(jī)的無級調(diào)速,速度變化靈敏,但是D/A轉(zhuǎn)換芯片價(jià)格

14、較高,性價(jià)比不高,不采用。對于方案二,相對于其他方案來說,采用軟件模擬PWM實(shí)現(xiàn)調(diào)速的過程,具有個(gè)高的性價(jià)比與靈活性,充分的發(fā)揮了單片機(jī)自身的性能,對本系統(tǒng)的實(shí)現(xiàn)又提供了一條有效的途徑。所以綜合考慮還是選擇方案二的第一種。2.2.6 驅(qū)動(dòng)方式選擇方案一:達(dá)林頓反向驅(qū)動(dòng)器ULN2803。方案二:電橋驅(qū)動(dòng)電路L298N。對于方案一,作為一款反向驅(qū)動(dòng)器,ULN2803應(yīng)用廣泛,驅(qū)動(dòng)效果也很好,與TTL信號兼容性很好,但是在后續(xù)的硬件電路中表現(xiàn)不佳,風(fēng)扇轉(zhuǎn)速改變不明顯,而且在最高檔出現(xiàn)斷檔的情況,風(fēng)扇不轉(zhuǎn),在修改硬件電路,修改程序后依舊效果不佳,驅(qū)動(dòng)力明顯不足,故方案一中途停用。對于方案二,由于之前已

15、經(jīng)有使用過,對L298N這個(gè)橋式驅(qū)動(dòng)模塊的應(yīng)用上手快速,驅(qū)動(dòng)能力也比ULN2803好很多,驅(qū)動(dòng)風(fēng)扇5檔變速的實(shí)際效果明顯,故采用方案二。3 硬件設(shè)計(jì)系統(tǒng)主要器件包括溫度傳感器DS18B20、AT89S51單片機(jī)、液晶顯示屏LCD1602、橋式驅(qū)動(dòng)模塊L298N、對射式光電開關(guān)開關(guān)和風(fēng)扇。輔助元件包括電容電阻、晶振、電源、按鍵、變壓器等。3.1系統(tǒng)各器件簡介3.1.1 單線程數(shù)字溫度傳感器DS18B20此溫度傳感器是美國DALLAS半導(dǎo)體公司繼DS1820之后推出的一種改進(jìn)型智能溫度傳感器DS18B20。作為新一帶數(shù)字檢測元件,DS1820是世界上第一片支持 "一線總線"接口

16、的溫度傳感器,在其內(nèi)部使用了在板(ON-BOARD)專利技術(shù)。全部傳感元件及轉(zhuǎn)換電路集成在形如一只三極管的集成電路內(nèi)。一線總線獨(dú)特而且經(jīng)濟(jì)的特點(diǎn),使用戶可輕松地組建傳感器網(wǎng)絡(luò),為測量系統(tǒng)的構(gòu)建引入全新概念?,F(xiàn)在,新一代的DS18B20體積更小、更經(jīng)濟(jì)、更靈活。使你可以充分發(fā)揮“一線總線”的優(yōu)點(diǎn)。DS18B20可以程序設(shè)定912位的分辨率,精度為±0.5°C??蛇x更小的封裝方式,更寬的電壓適用范圍。分辨率設(shè)定,及用戶設(shè)定的報(bào)警溫度存儲在EEPROM中,掉電后依然保存。測溫范圍為-55125,最大分辨率可達(dá)0.0625。DS18B20減少了外部的硬件電路,直接輸出數(shù)字信號,具有

17、低成本和易使用的特點(diǎn)。圖2溫度傳感器DS18B203.1.2 AT89S51單片機(jī)簡介AT89S51是一個(gè)低功耗,高性能COMS 8位單片機(jī),片內(nèi)含4Kbytes ISP的反復(fù)可讀寫1000次的Flash只讀程序儲存器,器件采用ATMEL公司的高密度、非易失性存儲技術(shù)制造,兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng)及80C51引腳結(jié)構(gòu),芯片內(nèi)集成了8位中央處理器和IPS Flash存儲單元,AT89S51在眾多嵌入式系統(tǒng)中得到了廣泛的應(yīng)用。AT89S51具有完整的輸入輸出和控制端口、以及內(nèi)部程序存儲空間。與我們通常意義上的微機(jī)原理類似,可以通過外接A/D,D/A轉(zhuǎn)換電路及運(yùn)放芯片實(shí)現(xiàn)對傳感器傳送信息的采集,

18、且能夠提供以點(diǎn)陣或LCD液晶及外接按鍵實(shí)現(xiàn)人機(jī)交互,能對內(nèi)部眾多I/O端口連接步進(jìn)電機(jī)對外圍設(shè)備進(jìn)行精確操控,具有強(qiáng)大的工控能力。AT89S51系列單片機(jī)編寫程序簡單。其語法結(jié)構(gòu)與我們常用的計(jì)算機(jī)C語言基本相同,不同之處在于增加了控制具體引腳工作的語句和命令,相對于計(jì)算機(jī)C語言,單片機(jī)C語言更簡練和明確,可以控制每個(gè)引腳的輸入輸出狀態(tài)。其主要語句集中在例如:“ifelse”、“while”、“for”等循環(huán)與判斷語句上,相比計(jì)算機(jī)C語言更簡單。使用AT89S51系列單片機(jī)編程,可以在沒有實(shí)物單片機(jī)的情況下在普通電腦上進(jìn)行程序編寫甚至是調(diào)試工作。一般工作中使用Keil公司開發(fā)的51單片機(jī)編程軟件

19、進(jìn)行編程,它采用目前流行的開發(fā)環(huán)境,集編輯,編譯和仿真于一體。在該軟件上用戶可以編寫匯編語言或C語言源程序,并利用該軟件生成單片機(jī)能運(yùn)行的程序。AT89S51價(jià)格便宜,適合對大批量的計(jì)量儀器進(jìn)行規(guī)?;脑欤鋯纹蹆r(jià)不超過5元。圖3AT89S51引腳圖 DIP封裝3.1.3 橋式驅(qū)動(dòng)電路L298N簡介本系統(tǒng)要用單片機(jī)控制風(fēng)扇直流電機(jī),需要加驅(qū)動(dòng)電路,為直流電機(jī)提供足夠大的驅(qū)動(dòng)電流,并能在模擬PWM波的情況下實(shí)現(xiàn)風(fēng)扇轉(zhuǎn)速的改變。在本系統(tǒng)驅(qū)動(dòng)電路中,選用橋式驅(qū)動(dòng)電路L298N來驅(qū)動(dòng)風(fēng)扇直流電機(jī)。L298N在使用時(shí)接口簡單,操作方便,可為電機(jī)提供穩(wěn)定的驅(qū)動(dòng)電流,可以同時(shí)驅(qū)動(dòng)兩臺直流電機(jī),可以在模擬P

20、WM波的情況下很好的輸出信號,實(shí)現(xiàn)風(fēng)扇轉(zhuǎn)速的平滑改變。L298N是專用驅(qū)動(dòng)集成電路,屬于H橋集成電路,與L293D的差別是其輸出電流增大,功率增強(qiáng)。其輸出電流為2A,最高電流4A,最高工作電壓50V,可以驅(qū)動(dòng)感性負(fù)載,如大功率直流電機(jī),(二相、三相、四相)步進(jìn)電機(jī),伺服電機(jī),電磁閥等,特別是其輸入端可以與單片機(jī)直接相聯(lián),從而很方便地受單片機(jī)控制。當(dāng)驅(qū)動(dòng)直流電機(jī)時(shí),可以直接控制兩路電機(jī),并可以實(shí)現(xiàn)電機(jī)正轉(zhuǎn)與反轉(zhuǎn),實(shí)現(xiàn)此功能只需改變輸入端的邏輯電平。模塊接口說明:+5V:芯片電壓5V。VCC:電機(jī)電壓,最大可接50V。GND:共地接法。EN1、EN2:高電平有效,EN1、EN2分別為 IN1和IN

21、2、IN3和IN4的使能端。IN1IN4:輸入端,輸入端電平和輸出端電平是對應(yīng)的。圖4L298N模塊3.1.4 LCD1602簡介字符型液晶顯示模塊是一種專門用于顯示字母、數(shù)字、符號等點(diǎn)陣式LCD,目前常用16*1,16*2,20*2和40*2行等的模塊。一般1602字符型液晶顯示器實(shí)物如圖:圖5LCD1602LCD1602主要技術(shù)參數(shù):顯示容量:16×2個(gè)字符芯片工作電壓:4.55.5V工作電流:2.0mA(5.0V)模塊最佳工作電壓:5.0V字符尺寸:2.95×4.35(W×H)mm第1腳:VSS為地電源。第2腳:VDD接5V正電源。第3腳:VL為液晶顯示器對

22、比度調(diào)整端,接正電源時(shí)對比度最弱,接地時(shí)對比度最高,對比度過高時(shí)會(huì)產(chǎn)生“鬼影”,使用時(shí)可以通過一個(gè)10K的電位器調(diào)整對比度。第4腳:RS為寄存器選擇,高電平時(shí)選擇數(shù)據(jù)寄存器、低電平時(shí)選擇指令寄存器。第5腳:R/W為讀寫信號線,高電平時(shí)進(jìn)行讀操作,低電平時(shí)進(jìn)行寫操作。當(dāng)RS和R/W共同為低電平時(shí)可以寫入指令或者顯示地址,當(dāng)RS為低電平R/W為高電平時(shí)可以讀忙信號,當(dāng)RS為高電平R/W為低電平時(shí)可以寫入數(shù)據(jù)。第6腳:E端為使能端,當(dāng)E端由高電平跳變成低電平時(shí),液晶模塊執(zhí)行命令。第714腳:D0D7為8位雙向數(shù)據(jù)線。第15腳:背光源正極。第16腳:背光源負(fù)極。3.1.5對射式光電開關(guān)簡介圖6對射式光

23、電開關(guān)光電開關(guān)E18的技術(shù)參數(shù):1、輸出電流 DC/SCR/繼電器 Control output:100mA/5V供電2、消耗電流DC<25mA3、響應(yīng)時(shí)間 <2ms4、指向角:15°,有效距離3-50CM可調(diào)5、檢測物體:透明或不透明體6、工作環(huán)境溫度:-25+557、標(biāo)準(zhǔn)檢測物體:太陽光10000LX以下 白熾燈3000LX以下8、外殼材料:塑料電氣特性: U:5VDC I:100mA Sn:3-50CM3.2 各部分電路設(shè)計(jì)3.2.1 開關(guān)復(fù)位與晶振電路單片機(jī)系統(tǒng)中,有兩個(gè)非常重要的電路,一個(gè)是開關(guān)復(fù)位電路,用來對單片機(jī)本身和其外部擴(kuò)展I/O接口電路進(jìn)行復(fù)位,還有一

24、個(gè)是晶振電路,用于產(chǎn)生諧振,使單片機(jī)得以工作。電路圖如圖7所示:圖7晶振電路與復(fù)位電路單片機(jī)的XTAL1和XTAL2用來外界石英晶體和微調(diào)電容,連接單片機(jī)內(nèi)OSC的定時(shí)反饋電路。如圖所示,當(dāng)按下按鍵開關(guān)是,系統(tǒng)復(fù)位一次。其中電容C1、C2為20pF,C3為10uF,電阻R1為10k,晶振為12MHz。3.2.2 獨(dú)立控制鍵盤電路本設(shè)計(jì)還有兩個(gè)獨(dú)立按鍵,分別連接單片機(jī)的P3.2口和P3.3口,如圖8所示:圖8按鍵電路獨(dú)立按鍵S1和S2一端與單片機(jī)相連,另一端接地,當(dāng)按下時(shí),P3口讀取低電平有效。系統(tǒng)上電進(jìn)入工作后,掃描按鍵子程序,此時(shí)可以設(shè)定溫度。其中S1為加按鍵,S2為減按鍵,每按下一次后,都

25、會(huì)使對應(yīng)的預(yù)設(shè)值加一或者減一。3.2.3 LCD顯示電路本設(shè)計(jì)采用的是LCD1602A作為顯示模塊,它與單片機(jī)的連接如圖9所示。其中第一行顯示溫度與紅外探測結(jié)果,溫度顯示到小數(shù)點(diǎn)后2位。第二行顯示設(shè)定溫度與風(fēng)扇的風(fēng)力等級。圖9LCD連接電路3.2.4 紅外探測電路紅外光電開關(guān)一共有三個(gè)接口,一個(gè)接+5V,一個(gè)接地,還有一端與單片機(jī)相連,輸出高電平或者低電平信號,在電路中直接用按鍵開關(guān)代替了,就是按鍵電路中的開關(guān)S3。3.2.5 溫度采集電路DS18B20數(shù)字溫度傳感器通過其內(nèi)部計(jì)數(shù)時(shí)鐘周期來的作用,實(shí)現(xiàn)了特有的溫度測量功能。低溫系數(shù)振蕩器輸出的時(shí)鐘信號通過由高溫度系數(shù)振蕩器產(chǎn)生的門周期而被計(jì)數(shù)

26、,計(jì)數(shù)器預(yù)先置有與-55相對應(yīng)的一個(gè)基權(quán)值。如果計(jì)數(shù)器計(jì)數(shù)到0時(shí),高溫度系數(shù)振蕩周期還未結(jié)束,則表示測量的溫度值高于-55,被預(yù)置在-55的溫度寄存器中的值就增加1,然后這個(gè)過程不斷重復(fù),直到高溫度系數(shù)振蕩周期結(jié)束為止。此時(shí)溫度寄存器中的值即為被測溫度值,這個(gè)值以16位二進(jìn)制形式存放在存儲器中,通過主機(jī)發(fā)送存儲器讀命令可讀出此溫度值,讀取時(shí)低位在前,高位在后,依次進(jìn)行。由于溫度振蕩器的拋物線特性的影響,其內(nèi)用斜率累加器進(jìn)行補(bǔ)償。DS18B20由于直接可以輸出數(shù)字信號,所以可以直接輸出給單片機(jī),但是需要在輸出口上接一個(gè)上拉電阻來確保工作,連接圖如圖10所示:圖10DS18B20連接電路3.2.6

27、 風(fēng)扇驅(qū)動(dòng)電路本設(shè)計(jì)采用單片機(jī)模擬PWM波的方式通過I/O口輸出TTL信號,再通過一個(gè)電機(jī)驅(qū)動(dòng)模塊L298N來驅(qū)動(dòng)12V直流無刷電機(jī)工作,從而實(shí)現(xiàn)電扇轉(zhuǎn)速的調(diào)節(jié)。紅外探測控制電機(jī)開關(guān),鍵盤改變設(shè)置的溫度,然后和預(yù)設(shè)的溫度進(jìn)行比較,通過軟件判斷后由單片機(jī)的P3.4口輸出脈沖信號,經(jīng)由L298N驅(qū)動(dòng)風(fēng)扇直流電機(jī)電路,實(shí)現(xiàn)電機(jī)的啟動(dòng)和轉(zhuǎn)速的改變。當(dāng)環(huán)境溫度改變時(shí),電機(jī)的轉(zhuǎn)速會(huì)按照設(shè)定的程序相對進(jìn)行改變,溫度升高轉(zhuǎn)速變快,溫度降低,轉(zhuǎn)速變慢,溫度過低時(shí)自動(dòng)停止,無人狀態(tài)下也會(huì)自動(dòng)停止。當(dāng)有人出現(xiàn)后,并且溫度高于預(yù)設(shè)溫度,電機(jī)重新開始工作。如圖12所示:圖11L298N驅(qū)動(dòng)電路圖12直流電機(jī)連接電路4

28、軟件設(shè)計(jì)軟件編寫有C語言和匯編語言兩種,這兩種語言我都有所了解,兩種語言各有特點(diǎn)。C語言具有編寫簡單,容易上手的特點(diǎn),而且看起來?xiàng)l理清晰,便于修改,能夠快速準(zhǔn)確的找到錯(cuò)誤并進(jìn)行改正。相對于匯編語言,作為一種低級的機(jī)器語言,讀程序相對繁瑣,但程序?qū)懞煤笠馑济髁?,效率也要高于C語言編寫的程序,具有很好的開發(fā)功能。結(jié)合自身實(shí)際,我還是選擇了C語言,容易上手,可以更好的調(diào)試與編譯程序。顯示設(shè)定溫度程序初始化調(diào)用鍵盤掃描函數(shù)顯示溫度讀取預(yù)設(shè)溫度值與預(yù)設(shè)溫度進(jìn)行比較讀取DS18B20溫度值主程序開始調(diào)用電機(jī)控制函數(shù)判斷是否有人顯示有人/無人顯示風(fēng)速等級有人無人4.1 主程序流程圖圖13主程序流程圖主程序如

29、下:void main(void) /初始化uint ltemp; /初始化溫度dianji=0; /初始化電機(jī)int1=0;int2=0;init(); /初始化液晶顯示屏read_temp(); /讀取測溫子程序,讀取溫度數(shù)值delay(1000); /延時(shí) while(1) /循環(huán)開始 delay(2);ltemp=read_temp(); /溫度賦值write_com(0x80+2); /將溫度顯示到液晶屏 write_data(0x30+ltemp%10000/1000); write_data(0x30+ltemp%1000/100); write_data(0x2e);write

30、_data(0x30+ltemp%100/10);write_data(0x30+ltemp%10);write_data(0xdf);keyscan(); /讀取鍵盤子程序delay(2);write_com(0x80+0x40+4); /將設(shè)定溫度顯示到液晶屏write_data(0x30+set%100/10);write_data(0x30+set%10);write_data(0xdf);deal(ltemp/100); /運(yùn)行溫度判斷子程序dianjik(); /運(yùn)行電機(jī)控制子程序write_com(0x80+0x40+15); /將風(fēng)扇轉(zhuǎn)速顯示到液晶屏write_data(0x3

31、0+h);write_com(0x80+15); /將紅外探測結(jié)果顯示到液晶屏 write_data(0x30+r); 4.2 液晶顯示子程序液晶LCD1602的子程序要按照說明上的時(shí)序圖來完成。要想讓LCD顯示的話,首先要對LCD進(jìn)行初始化。在完成LCD的初始化后,還需要定義字符的位置,并且定義寫數(shù)據(jù)的函數(shù)。其第一行的地址是40H4FH,第二行的地址是從80H8FH,然后才能根據(jù)要顯示字符的ASC碼對該字符進(jìn)行顯示。其流程圖14所示:初始化函數(shù)寫指令函數(shù)(位置)寫數(shù)據(jù)函數(shù)(數(shù)字和字符)圖14液晶顯示程序流程圖子程序如下:/*初始化函數(shù)*void init(void) uint i; E=0;

32、RW=0; RS=0;delay(10);/延時(shí)10mswrite_com(0x01);/清屏delay(5);write_com(0x38);/設(shè)顯示模式delay(5);write_com(0x0c);/開顯示不顯光標(biāo) 光標(biāo)不閃delay(5);write_com(0x06);/地址自動(dòng)加一 光標(biāo)自動(dòng)加一delay(5);write_com(0x80);for(i=0;i<16;i+)write_data(table2i); write_com(0x80+0x40);for(i=0;i<16;i+)write_data(table1i); /*寫指令函數(shù)*void write_

33、com(uchar command)RS=0;/指令RW=0;/寫入P0=command;delay(5);E=1;/允許delay(10);E=0;/*寫數(shù)據(jù)函數(shù)*void write_data(uchar dat)RS=1;/數(shù)據(jù)P0=dat;delay(5);E=1;/允許delay(10);E=0;4.3 DS18B20溫度傳感器子程序4.3.1 溫度讀取程序DS18B20溫度讀取程序負(fù)責(zé)把DS18B20測得的外界數(shù)據(jù)經(jīng)過AD轉(zhuǎn)化為數(shù)字,然后將數(shù)據(jù)存入寄存器中,供溫度處理程序進(jìn)行下一步操作。其流程圖15所示:傳感器初始化讀取應(yīng)答信號從DS18B20讀取一個(gè)字節(jié)向DS18B20寫入一個(gè)字

34、節(jié)延遲至少750ms輸出數(shù)據(jù)圖15DS18B20程序流程圖子程序如下:/*延時(shí)函數(shù)*void delayus(uint z)uchar i;for(i=0;i<z;i+);/*將DS18B20傳感器初始化,讀取應(yīng)答信號*uchar clean_ds18b20()uchar k;/儲存DS18B20是否存在的標(biāo)志,k=0,表示存在;k=1,表示不存在dq=1;/先將數(shù)據(jù)線拉高delayus(5);/延時(shí)dq=0;/再將數(shù)據(jù)線從高拉低,要求保持480960usdelayus(30);/略微延時(shí),以向DS18B20發(fā)出一持續(xù)480960us的低電平復(fù)位脈沖 dq=1;/釋放數(shù)據(jù)線(將數(shù)據(jù)線拉高

35、)delayus(3);/延時(shí)(釋放總線后需等待1560us讓DS18B20輸出存在脈沖)k=dq;/讓單片機(jī)檢測是否輸出了存在脈沖(dq=0表示存在)delayus(25);/延時(shí)足夠長時(shí)間,等待存在脈沖輸出完畢return k;/返回檢測成功標(biāo)志/*從DS18B20讀取一個(gè)字節(jié)數(shù)據(jù)*uchar read_ds18b20_date()uchar value,i;/儲存讀出的一個(gè)字節(jié)數(shù)據(jù)for(i=0;i<8;i+)/讀8位dq=1; /先將數(shù)據(jù)線拉高 _nop_(); /等待一個(gè)機(jī)器周期 dq=0;/單片機(jī)從DS18B20讀書據(jù)時(shí),將數(shù)據(jù)線從高拉低即啟動(dòng)讀時(shí)序value>>

36、=1;dq=1;/將數(shù)據(jù)線"人為"拉高,為單片機(jī)檢測DS18B20的輸出電平作準(zhǔn)備if(dq)/如果讀到的數(shù)據(jù)是1,則將1存入valuevalue|=0x80;delayus(6);if(!dq) /如果讀到的數(shù)據(jù)是0,則將0存入valuevalue|=0x00;delayus(6);return value;/返回讀出的十進(jìn)制數(shù)據(jù)/*向DS18B20寫入一個(gè)字節(jié)數(shù)據(jù)*void write_ds18b20_date(uchar date)uchar num;for(num=0;num<8;num+)dq=1; /先將數(shù)據(jù)線拉高 _nop_(); /等待一個(gè)機(jī)器周期 d

37、q=0;/將數(shù)據(jù)線從高拉低時(shí)即啟動(dòng)寫時(shí)序dq=date&0x01;/利用與運(yùn)算取出要寫的某位二進(jìn)制數(shù)據(jù),并將其送到數(shù)據(jù)線上等待DS18B20采樣 date>>=1;delayus(4); /4usdq=1;/釋放數(shù)據(jù)線delayus(4);/稍作延時(shí),給硬件一點(diǎn)反應(yīng)時(shí)間4.3.2 溫度處理程序溫度處理程序?qū)⑸弦话巡僮髦凶x取的溫度值進(jìn)行轉(zhuǎn)換,將二進(jìn)制數(shù)轉(zhuǎn)化為十進(jìn)制數(shù),然后輸出數(shù)字,直接交給顯示程序顯示。等待轉(zhuǎn)化完成初始化讀取高八位和低八位啟動(dòng)溫度測量等待初始化完成處理數(shù)據(jù)輸出十進(jìn)制整數(shù)其流程圖16所示:圖16溫度處理子程序流程圖其子程序如下:/*做好讀溫度的準(zhǔn)備*uint r

38、ead_temp()uint g,d,m;uint c;m=1;m=clean_ds18b20();/初始化完成m=0while(m); /等待初始化完成write_ds18b20_date(0xcc);/跳過romwrite_ds18b20_date(0x44);/啟動(dòng)溫度測量delayus(100);m=clean_ds18b20();while(m); /等待轉(zhuǎn)化完成write_ds18b20_date(0xcc);/跳過romwrite_ds18b20_date(0xbe);/讀數(shù)據(jù)命令d=read_ds18b20_date();/讀低8位數(shù)據(jù)g=read_ds18b20_date()

39、; /讀高3位數(shù)據(jù)g<<=4;g=g+(d>>4); /整數(shù)部分g=g*100;d=(d&0x0f)*0.0625*100; c=g+d;return c; 4.4 鍵盤掃描子程序本設(shè)計(jì)配備兩個(gè)輸入按鍵,分別可以對設(shè)定溫度進(jìn)行加減,此子程序用來檢測按鍵輸入。流程圖17所示:掃描按鍵判斷是否按下設(shè)定溫度加一(減一)延時(shí)判斷是否按下圖17鍵盤掃描流程圖子程序如下:/*鍵盤輸入*void keyscan(void)if(key1=0)/判斷key1是否按下 delay(10);/延時(shí)判斷key1是否按下if(key1=0)set+;/設(shè)定溫度加1if(key1=100

40、)set=18;while(!key1);if(key2=0)/判斷key2是否按下 delay(10);/延時(shí)判斷key2是否按下if(key2=0)set-;/設(shè)定溫度減1if(set=0)set=18;while(!key2);4.5 溫度比較處理子程序溫控風(fēng)扇設(shè)定5個(gè)檔位,根據(jù)溫度的變化來變化風(fēng)扇的轉(zhuǎn)速。輸出的型式采用高地電平的交替變換,檔位越高,輸出高電平的次數(shù)越多,相應(yīng)的輸出低點(diǎn)平的次數(shù)變少,反之,檔位越低,輸出的高電平次數(shù)越少,相應(yīng)的輸出的高電平的次數(shù)變多。低于設(shè)定溫度時(shí),風(fēng)扇不轉(zhuǎn),大于最大擋位時(shí)滿負(fù)荷運(yùn)轉(zhuǎn)。流程如圖18所示:讀取溫度溫度比較低于設(shè)定溫度設(shè)置為2檔設(shè)置為1檔風(fēng)扇不

41、轉(zhuǎn)高于設(shè)定溫度+7低于設(shè)定溫度+7低于設(shè)定溫度+5低于設(shè)定溫度+3低于設(shè)定溫度+1設(shè)置為3檔設(shè)置為4檔設(shè)置為5檔否否否否否是是是是是是圖18溫度比較處理流程圖子程序如下:/*溫度處理函數(shù)*void deal(uint temp) /溫度處理if(temp<=set)/溫度低于設(shè)置值h=0;l=5; else if(temp>set)&&(temp<=(set+1)/溫度低于設(shè)定值+1h=1;l=4; else if(temp>(set+1)&&(temp<=(set+3)/溫度高于設(shè)定值+1,小于設(shè)定值+3h=2;l=3; else

42、 if(temp>(set+3)&&(temp<=(set+5)/溫度高于設(shè)定值+3,小于設(shè)定值+5h=3;l=2;else if(temp>(set+5)&&(temp<=(set+7)/溫度值高于設(shè)定值+5,小于設(shè)定值+7h=4;l=1;else if(temp>(set+7)/溫度高于設(shè)定值+7 h=5; l=0;4.6 電機(jī)控制程序(包含紅外探測)本設(shè)計(jì)最終驅(qū)動(dòng)電機(jī)的子程序,包含了紅外檢測。首先進(jìn)行紅外檢測判斷,若沒有人,電機(jī)不轉(zhuǎn),若有人,承接上函數(shù)設(shè)定的檔位,模擬PWM波輸出,一次輸出5個(gè)電平,1檔就輸出一個(gè)高電平,四個(gè)低

43、電平,2檔輸出兩個(gè)高電平,三個(gè)低電平,依次類推。開始電機(jī)不轉(zhuǎn)電機(jī)輸輸出模擬PWM波紅外探測是否有人模擬PWM高低電平次數(shù)流程圖如圖19所示:圖19紅外探測電機(jī)輸出流程圖子程序如下:/*電機(jī)模擬PWM控制程序*void dianjik() uchar q;for(q=0;q<l&red=0;q+)/紅外感應(yīng)有人,輸出設(shè)定的低電平次數(shù)dianji=0;int1=0;int2=0;r=1; delay(100); for(q=0;q<h&&red=0;q+)/紅外感應(yīng)有人,輸出設(shè)定的高電平次數(shù)dianji=1;int1=1;int2=0;r=1;delay(100

44、);for(q=0;q<l&red=1;q+)/紅外感應(yīng)沒人,不輸出dianji=0;int1=0;int2=0;r=0; delay(10); for(q=0;q<h&&red=1;q+)/紅外感應(yīng)沒人,不輸出dianji=1;int1=0;int2=0;r=0;delay(10);4.7 軟件設(shè)計(jì)中的問題與分析4.7.1 LCD顯示程序的問題由于LCD要顯示的數(shù)據(jù)有四個(gè),溫度、檔位、紅外探測、設(shè)定溫度,所以如何合理的安排輸出順序很重要,合理的輸出順序才能對應(yīng)外部正確的表現(xiàn)。每個(gè)數(shù)據(jù)在輸出后都要有一定的延時(shí),這樣才能清楚的顯示在LCD屏幕上。由于本程序是基

45、于溫度的,所以第一個(gè)輸出的就是溫度值;然后本程序要執(zhí)行的是溫度的比較,所以第二個(gè)輸出的必然是設(shè)定溫度,設(shè)定溫度還要同時(shí)讀取鍵盤程序,實(shí)時(shí)跟隨鍵盤輸入的改變而改變;第三個(gè)輸出的就是比較溫度后的設(shè)定風(fēng)速了,顯示的風(fēng)速就是檔位數(shù);最后輸出的就是紅外探測的結(jié)果,以0和1來表示,1為有人,處于工作狀態(tài),0為無人,處于待機(jī)狀態(tài)。剛開始調(diào)試程序的時(shí)候,數(shù)值沒在LCD上顯示,后來發(fā)現(xiàn)是主函數(shù)忘記了調(diào)用子函數(shù),使得數(shù)據(jù)沒有輸入,后來經(jīng)過修改和調(diào)整,終于在LCD上正常顯示出來了。合理的程序使得程序顯示狀態(tài)井然有序。4.7.2 DS18B20的顯示程序問題在本設(shè)計(jì)中,DS18B20的顯示是最核心的數(shù)據(jù),所有其他數(shù)據(jù)

46、都與之相對應(yīng)改變,電機(jī)的轉(zhuǎn)速也與之相關(guān),但是在程序調(diào)試過程中,發(fā)現(xiàn)了一個(gè)問題,每次給單片機(jī)上電之后,總有那么不到一秒鐘的時(shí)間,溫度顯示的值是85,不斷電的情況下復(fù)位沒有出現(xiàn)這種情況,只有每次啟動(dòng)的時(shí)候出現(xiàn)。當(dāng)顯示85后,其他的數(shù)據(jù)也隨之變?yōu)閷?yīng)值,風(fēng)扇也有一個(gè)短暫的轉(zhuǎn)動(dòng),這對于這個(gè)設(shè)計(jì)來說無疑是一個(gè)很致命的缺陷。開始查找原因,從DS18B20的數(shù)據(jù)手冊中發(fā)現(xiàn),每次上電后,DS18B20的暫存器中存儲的數(shù)據(jù)就是85,在讀取數(shù)據(jù)后,內(nèi)部的AD要使用750ms的時(shí)間來進(jìn)行數(shù)據(jù)的轉(zhuǎn)換然后重新寫入新的數(shù)據(jù),所以在這段時(shí)間中,顯示的數(shù)值就是85了,看來這是硬件上不可避免的過程,但是硬件上不能改變的話,我可

47、以使用軟件的方法來進(jìn)行變動(dòng),我最后采取的方法是在循環(huán)程序開始之前,先讀取一次DS18B20的數(shù)值,然后給與一個(gè)1s的延時(shí),使得AD轉(zhuǎn)換完成,然后在開始循環(huán),這樣,這個(gè)問題終于得以解決了。5 硬件調(diào)試硬件電路的調(diào)試相對來說比較簡單。調(diào)試的功能包括按鍵電路,DS18B20,電機(jī)電路和紅外傳感電路。5.1 按鍵電路的調(diào)試按鍵電路實(shí)現(xiàn)的功能是在按鍵按下后能執(zhí)行設(shè)定溫度的改變,這項(xiàng)采用實(shí)物調(diào)試,按鍵按下之后,溫度隨之改變。5.2 溫度傳感器電路的調(diào)試溫度傳感器DS18B20的調(diào)試在實(shí)物上進(jìn)行,當(dāng)用手指去加熱溫度傳感器DS18B20的時(shí)候,LCD示數(shù)開始隨溫度的上升而改變,變化明顯而且刷新頻率適中,可以清

48、晰的看到所顯示的溫度。5.3 電機(jī)電路的調(diào)試電機(jī)電路進(jìn)行調(diào)試,不斷的將設(shè)定溫度降低,觀察電機(jī)轉(zhuǎn)速的變化。電機(jī)隨設(shè)定溫度與實(shí)際溫度差值的改變而改變,轉(zhuǎn)速變化較為平滑,達(dá)到了預(yù)期的效果。5.4 紅外感應(yīng)電路的調(diào)試紅外感應(yīng)電路直接測試,在前方無人時(shí),系統(tǒng)處于待機(jī)狀態(tài),電機(jī)不轉(zhuǎn)動(dòng)。當(dāng)前方有人時(shí),電機(jī)開始轉(zhuǎn)動(dòng)(在溫度高于預(yù)設(shè)溫度的時(shí)候)。5.5 硬件調(diào)試遇到的問題本次設(shè)計(jì)中遇到的最困難的問題就是出在了電機(jī)的驅(qū)動(dòng)上,剛開始的設(shè)計(jì)使用的達(dá)林頓ULN2803反向驅(qū)動(dòng)器來驅(qū)動(dòng)電機(jī),可是在軟件無誤,硬件連接無誤的情況下,電機(jī)轉(zhuǎn)動(dòng)表現(xiàn)出來的是變速效果不明顯,最高檔時(shí)停轉(zhuǎn)現(xiàn)象的發(fā)生。再不斷的修改軟件和硬件電路無果的情

49、況下,放棄了這個(gè)驅(qū)動(dòng),改用橋式驅(qū)動(dòng)電路L298N,所有的問題迎刃而解,反向驅(qū)動(dòng)的驅(qū)動(dòng)力不連續(xù),而且驅(qū)動(dòng)力在小電流的輸入輸出時(shí)不足,使得電機(jī)驅(qū)動(dòng)產(chǎn)生了非常不理想的效果。6 結(jié)論此次的設(shè)計(jì)遇到的每個(gè)問題對我來說都是一個(gè)很大的挑戰(zhàn),在老師的幫助和自己的探索中,我完成了“基于51單片機(jī)的智能溫控電扇設(shè)計(jì)”,設(shè)計(jì)了硬件電路,獨(dú)立完成了軟件編寫。在設(shè)計(jì)中,實(shí)現(xiàn)了預(yù)期的功能,成功設(shè)計(jì)出了LCD顯示模塊、DS18B20測溫模塊、溫控變速模塊,紅外探測模塊,以及進(jìn)行了系統(tǒng)的仿真,從實(shí)踐中鞏固了所學(xué)的知識,并且在探索中學(xué)習(xí)到了新的知識。通過這次設(shè)計(jì),我又對單片機(jī)的知識有了一定的拓展,對處理問題的能力有了一定的提高,這次設(shè)計(jì)中的電機(jī)驅(qū)動(dòng)就是一個(gè)很好的挑戰(zhàn),雖然一開始走了彎路,沒有能夠很好的處理好這個(gè)變速的問題,但是

溫馨提示

  • 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)僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論