實時風(fēng)扇散熱系統(tǒng)設(shè)計

上傳人:水****8 文檔編號:46491335 上傳時間:2021-12-13 格式:DOC 頁數(shù):52 大?。?08KB
收藏 版權(quán)申訴 舉報 下載
實時風(fēng)扇散熱系統(tǒng)設(shè)計_第1頁
第1頁 / 共52頁
實時風(fēng)扇散熱系統(tǒng)設(shè)計_第2頁
第2頁 / 共52頁
實時風(fēng)扇散熱系統(tǒng)設(shè)計_第3頁
第3頁 / 共52頁

下載文檔到電腦,查找使用更方便

8 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《實時風(fēng)扇散熱系統(tǒng)設(shè)計》由會員分享,可在線閱讀,更多相關(guān)《實時風(fēng)扇散熱系統(tǒng)設(shè)計(52頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、 JIU JIANG UNIVERSITY 畢 業(yè) 論 文(設(shè) 計) 題 目 實時風(fēng)扇散熱系統(tǒng)設(shè)計 英文題目 Design of real-time fan cooling system 院 系 電子工程學(xué)院 專 業(yè) 電子信息工程 姓 名 楊 永 強 年 級 二零零八 級 指導(dǎo)教師 查 兵 二

2、零一二年五月 最新 精品 Word 歡迎下載 可修改 摘 要 溫控風(fēng)扇在現(xiàn)代社會中的生產(chǎn)以及人們的日常生活中都有廣泛的應(yīng)用,如工業(yè)生產(chǎn)中大型機械散熱系統(tǒng)中的風(fēng)扇、現(xiàn)在筆記本電腦上的廣泛應(yīng)用的智能CPU風(fēng)扇等。本文設(shè)計了基于單片機的溫控風(fēng)扇系統(tǒng),采用單片機作為控制器,利用溫度傳感器DS18B20作為溫度采集元件,并根據(jù)采集到的溫度,通過二個三極管組成的達(dá)林頓管驅(qū)動風(fēng)扇電機。根據(jù)檢測到的溫度與系統(tǒng)設(shè)定的溫度的比較實現(xiàn)風(fēng)扇電機的自動啟動和停止,并能根溫度的變化分自動和手動改變風(fēng)扇電機的轉(zhuǎn)速,同時用LCD1602顯示檢測到的溫度與風(fēng)扇的轉(zhuǎn)速。LCD1602第一行實現(xiàn)了環(huán)境溫度顯示

3、。LCD1602第二行自動控制時能根據(jù)按鍵的調(diào)整顯示所需要的溫度初始值和風(fēng)扇轉(zhuǎn)速;手動控制時,顯示轉(zhuǎn)速級別和自動調(diào)整的轉(zhuǎn)速,兩者形成對比,讓用戶更明智地切換為自動控制還是手動控制。 關(guān)鍵詞:單片機;自動;手動;溫控;風(fēng)扇 The Format Criterion of Master’s Degree Paper of DUT Abstract Fan in modern society production and peoples daily life have a wide range of applications, such as industrial

4、production in large mechanical cooling system of fan, now a laptop on a wide range of applications in intelligent CPU fan. This paper introduces the design of MCU based temperature control fan system, by using a single chip microcomputer as controller, use of temperature sensor DS18B20 as a temperat

5、ure acquisition component, and according to the collected temperature, through the two three transistor composed of Darlington tube driving fan motor. According to the detected temperature and a set temperature comparison of implementation system of fan motor for automatic start and stop, and root t

6、emperature changes automatically or manually changing the fan motor speed, at the same time using LCD1602 to display the detected temperature and fan speed. LCD1602 the first line to achieve environmental temperature display. LCD1602 second line automatic control according to the button to adjust th

7、e display to the desired temperature the initial value and the fan speed; the manual control, display speed level and automatic adjustment of the speed, both contrast, allows users to more judicious switch for automatic or manual control. Key words: single chip microcomputer; automatic; manual; t

8、emperature control; fan 目 錄 摘 要 I Abstract II 目 錄 III 引 言 1 第1章 整體方案設(shè)計 2 1.1 系統(tǒng)整體設(shè)計 2 1.2方案論證 2 3 3 3 4 第2章 各單元模塊的硬件設(shè)計 6 2.1系統(tǒng)器件簡介 6 6 6 8 2.2 各部分電路設(shè)計 10 10 10 11 12 13 Manual與自動Automatic的切換 14 第3章 軟件設(shè)計 15 3.1 程序設(shè)置 15 3.2 用Keil C51編寫程序 16 3.3 用

9、Proteus進(jìn)行仿真 17 17 18 第4章 系統(tǒng)調(diào)試 24 4.1 軟件調(diào)試 24 24 24 24 4.2 硬件調(diào)試 25 25 25 25 4.3 系統(tǒng)功能 26 26 27 結(jié) 論 28 參 考 文 獻(xiàn) 29 附錄A 電路總圖 30 附錄B 程序代碼 31 1 main.c 31 2 18b20.c 38 3 LCD1602.c 41 致  謝 46 引 言 在現(xiàn)代社會中,風(fēng)扇被廣泛的應(yīng)用,發(fā)揮著舉足輕重的作用,如夏天人們用的散熱風(fēng)扇、工業(yè)生產(chǎn)中大型機械中的散熱風(fēng)扇以及現(xiàn)在筆記本電腦上廣泛使用的

10、智能CPU風(fēng)扇等。而隨著溫度控制技術(shù)的發(fā)展,為了降低風(fēng)扇運轉(zhuǎn)時的噪音以及節(jié)省能源等,溫控風(fēng)扇越來越受到重視并被廣泛的應(yīng)用。在現(xiàn)階段,溫控風(fēng)扇的設(shè)計已經(jīng)有了一定的成效,可以使風(fēng)扇根據(jù)環(huán)境溫度的變化進(jìn)行自動無級調(diào)速,當(dāng)溫度升高到一定時能自動啟動風(fēng)扇,當(dāng)溫度降到一定時能自動停止風(fēng)扇的轉(zhuǎn)動,實現(xiàn)智能控制。 隨著單片機在各個領(lǐng)域的廣泛應(yīng)用,許多用單片機作控制的溫度控制系統(tǒng)也應(yīng)運而生,如基于單片機的溫控風(fēng)扇系統(tǒng)。它使風(fēng)扇根據(jù)環(huán)境溫度的變化實現(xiàn)自動啟停,使風(fēng)扇轉(zhuǎn)速隨著環(huán)境溫度的變化而變化,實現(xiàn)了風(fēng)扇的智能控制。它的設(shè)計為現(xiàn)代社會人們的生活以及生產(chǎn)帶來了諸多便利,在提高人們的生活質(zhì)量、生產(chǎn)效率的同時還能節(jié)省

11、風(fēng)扇運轉(zhuǎn)所需的能量。 本文設(shè)計了由宏晶科技生產(chǎn)的STC89C52作為控制器,采用DALLAS公司的溫度傳感器DS18B20作為溫度采集元件,并通過二個三極管組成的達(dá)林頓驅(qū)動器驅(qū)動風(fēng)扇電機的轉(zhuǎn)動。同時使系統(tǒng)檢測到得環(huán)境溫度以及系統(tǒng)預(yù)設(shè)的溫度動態(tài)的顯示在LCD1602上。根據(jù)系統(tǒng)檢測到的環(huán)境溫度與系統(tǒng)預(yù)設(shè)溫度的比較,實現(xiàn)風(fēng)扇電機的自動啟停以及轉(zhuǎn)速的自動調(diào)節(jié),另外添加了拓展,人性化控制:手動控制。 第1章 整體方案設(shè)計 1.1 系統(tǒng)整體設(shè)計 本設(shè)計的整體思路是:利用溫度傳感器DS18B20檢測環(huán)境溫度并直接輸出數(shù)字溫度信號給單片機STC89C

12、52進(jìn)行處理,在LCD1602顯示當(dāng)前環(huán)境溫度值以及風(fēng)速值。同時采用PWM脈寬調(diào)制方式來改變直流風(fēng)扇電機的轉(zhuǎn)速。并通過兩個按鍵手動改變轉(zhuǎn)速值,一個提高轉(zhuǎn)速,另一個降低轉(zhuǎn)速值。系統(tǒng)結(jié)構(gòu)框圖如下: DS18B20 LCD1602溫度顯示 獨立按鍵和撥碼開關(guān) STC89C52 直流電機 PWM驅(qū)動電路 復(fù)位 晶振 1.2方案論證 本設(shè)計要實現(xiàn)風(fēng)扇直流電機的溫度控制,使風(fēng)扇電機能根據(jù)環(huán)境溫度的變化自動和手動啟停及改變轉(zhuǎn)速,需要比較高的溫度變化分辨率以及穩(wěn)定可靠的換擋停機控制部件。 在本設(shè)計中,溫度傳感

13、器的選擇有以下兩種方案: 方案一:采用熱敏電阻作為檢測溫度的核心元件,并通過運算放大器放大,由于熱敏電阻會隨溫度變化而變化,進(jìn)而產(chǎn)生輸出電壓變化的微弱電壓變化信號,再經(jīng)模數(shù)轉(zhuǎn)換芯片ADC0809將微弱電壓變化信號轉(zhuǎn)化為數(shù)字信號輸入單片機處理。 方案二:采用數(shù)字式的集成溫度傳感器DS18B20作為溫度檢測的核心元件,由其檢測并直接輸出數(shù)字溫度信號給單片機進(jìn)行處理。 對于方案一,采用熱敏電阻作為溫度檢測元件,有價格便宜,元件易購的優(yōu)點,但熱敏電阻對溫度的細(xì)微變化不太敏感,在信號采集、放大以及轉(zhuǎn)換的過程中還會產(chǎn)生失真和誤差,并且由于熱敏電阻的R-T關(guān)系的非線性,其自身電阻對溫度的變化存在較大誤

14、差,雖然可以通過一定電路來修正,但這不僅將使電路變得更加復(fù)雜,而且在人體所處環(huán)境溫度變化過程中難以檢測到小的溫度變化。故該方案不適合本系統(tǒng)。 對于方案二,由于數(shù)字式集成溫度傳感器DS18B20的高度集成化,大大降低了外接放大轉(zhuǎn)化等電路的誤差因數(shù),溫度誤差變得很小,并且由于其檢測溫度的原理與熱敏電阻檢測的原理有著本質(zhì)的不同,使得其溫度分辨力極高。溫度值在器件內(nèi)部轉(zhuǎn)化成數(shù)字量直接輸出,簡化了系統(tǒng)程序設(shè)計,又由于該溫度傳感器采用先進(jìn)的單總線技術(shù),與單片機的接口變得非常簡潔,抗干擾能力強,因此該方案適用于本系統(tǒng)。 在本設(shè)計中采用STC89C52單片機作為控制核心,通過軟件編程的方法進(jìn)行溫度檢測

15、和判斷,并在其I/O口輸出控制信號。STC89C52單片機工作電壓低,性能高,片內(nèi)含8k字節(jié)的只讀程序存儲器ROM和512字節(jié)的隨機數(shù)據(jù)存儲器RAM,它兼容標(biāo)準(zhǔn)的MCS-51指令系統(tǒng),單片價格也不貴,適合本設(shè)計系統(tǒng)。 方案一:應(yīng)用動態(tài)掃描的方式,采用LED共陰極數(shù)碼管顯示溫度。 方案二:采用LCD液晶顯示屏顯示溫度。 對于方案一,該方案成本很低,顯示溫度明確醒目,即使在黑暗空間也能清楚看見,功耗極低,同時溫度顯示程序的編寫也相對簡單,因而這種顯示方式得到了廣泛應(yīng)用。但不足的地方是它采用動態(tài)掃描的顯示方式,各個LED數(shù)碼管是逐個點亮的,因此會產(chǎn)生閃爍,但由于人眼的視覺暫留時間為20MS

16、,故當(dāng)數(shù)碼管掃描周期小于這個時間時人眼不會感覺到閃爍,因此只要描頻率設(shè)置得當(dāng)即可采用該方案。 對于方案二,液晶顯示屏具有顯示字符優(yōu)美,其不僅能顯示數(shù)字還能顯示字符甚至圖形,這是LED數(shù)碼管無法比擬的。本系統(tǒng)采用方案二。 方案一:采用數(shù)模轉(zhuǎn)換芯片DAC0832來控制,由單片機根據(jù)當(dāng)前環(huán)境溫度值輸出相應(yīng)數(shù)字量到DAC0832中,再由DAC0832產(chǎn)生相應(yīng)模擬信號控制晶閘管的導(dǎo)通角,從而通過無級調(diào)速電路實現(xiàn)風(fēng)扇電機轉(zhuǎn)速的自動調(diào)節(jié)。 方案二:采用單片機軟件編程實現(xiàn)PWM(脈沖寬度調(diào)制)調(diào)速的方法。PWM是英文Pulse Width Modulation的縮寫,它是按一定的規(guī)律改變脈沖序列的脈

17、沖寬度,以調(diào)節(jié)輸出量和波形的一種調(diào)節(jié)方式,在PWM驅(qū)動控制的調(diào)節(jié)系統(tǒng)中,最常用的是矩形波PWM信號,在控制時需要調(diào)節(jié)PWM波得占空比。占空比是指高電平持續(xù)時間在一個周期時間內(nèi)的百分比。在控制電機的轉(zhuǎn)速時,占空比越大,轉(zhuǎn)速就越快,若全為高電平,占空比為100%時,轉(zhuǎn)速達(dá)到最大。用單片機I/O口輸出PWM信號時,有如下三種方法: (1) 利用軟件延時。當(dāng)高電平延時時間到時,對I/O口電平取反,使其變成低電平,然后再延時一定時間;當(dāng)?shù)碗娖窖訒r時間到時,再對該I/O口電平取反,如此循環(huán)即可得到PWM信號。 (2) 利用定時器。控制方法與(1)相同,只是在該方法中利用單片機的定時器來定時進(jìn)行高低電平

18、的轉(zhuǎn)變,而不是用軟件延時。應(yīng)用此方法時編程相對復(fù)雜。在本設(shè)計中應(yīng)用了此方法。 (3) 利用單片機自帶的PWM控制器。在12系列單片機中自身帶有PWM控制器,但本系統(tǒng)所用到得STC89系列單片機無此功能。 對于方案一,該方案能夠?qū)崿F(xiàn)對直流風(fēng)扇電機的無級調(diào)速,速度變化靈敏,但是D/A轉(zhuǎn)換芯片的價格較高,與其溫控狀態(tài)下無級調(diào)速功能相比性價比不高。 對于方案二,相對于其他用硬件或者軟硬件相結(jié)合的方法實現(xiàn)對電機進(jìn)行調(diào)速而言,采用PWM 用純軟件的方法來實現(xiàn)調(diào)速過程,具有更大的靈活性,并可大大降低成本,能夠充分發(fā)揮單片機的功能,對于簡單速度控制系統(tǒng)的實現(xiàn)提供了一種有效的途徑。綜合考慮選用方案二。

19、 第2章 各單元模塊的硬件設(shè)計 系統(tǒng)主要器件包括DS18B20溫度傳感器、AT89C52單片機、LCD1602、風(fēng)扇直流電機、達(dá)林頓驅(qū)動。輔助元件包括電阻電容、晶振、電源、按鍵、撥碼開關(guān)等。 2.1系統(tǒng)器件簡介 DS18B20數(shù)字溫度傳感器,是采用美國DALLAS半導(dǎo)體公司生產(chǎn)的DS18B20可組網(wǎng)數(shù)字溫度傳感器芯片封裝而成,它具有微型化、低功耗、高性能、抗干擾能力強、易配微處理器等優(yōu)點,可直接將溫度轉(zhuǎn)化成串行數(shù)字信號供處理器處理。 適用于各種狹小空間設(shè)備數(shù)字測溫和控制領(lǐng)域。 DS18B20的主要特征:測量的結(jié)果直接以數(shù)字信號的形式輸出,以“一線總線”方式串行傳送給CPU,

20、同時可傳送CRC校驗碼,具有極強的抗干擾糾錯能力;溫度測量范圍在-55℃~+125℃之間,在-10℃~+85℃時精度為0.5℃;可檢測溫度分辨率為9~12位,對應(yīng)的可分辨溫度分別為0.5℃,0.25℃,0.125℃和0.0625℃,可實現(xiàn)高精度測溫;它單線接口的獨特性,使它與微處理器連接時僅需一條端口線即可實現(xiàn)與微處理器的雙向通信;支持多點組網(wǎng)功能,即多個DS18B20可以并聯(lián)在唯一的三線上,實現(xiàn)組網(wǎng)多點測溫的功能;工作電壓范圍寬,其范圍在3.0~5.5V。 DS18B20內(nèi)部結(jié)構(gòu)主要有四部分:64位ROM、溫度傳感器、非揮發(fā)的溫度報警觸發(fā)器TH和TL、配置寄存器。其管腳有三個,其中DQ為數(shù)

21、字信號端,GND為電源地,VDD為電源輸入端。 LCD1602液晶顯示模塊基本技術(shù): (1)、主要功能 A、 40通道點陣LCD 驅(qū)動; B、 可選擇當(dāng)作行驅(qū)動或列驅(qū)動; C、 輸入/輸出信號:輸出,能產(chǎn)生202個LCD驅(qū)動波形;輸入,接受控制器送出的串行數(shù)據(jù)和控制信號,偏壓(V1∽V6); D、 通過單片機控制將所測的頻率信號讀數(shù)顯示出來 (2)引腳和指令功能 表2.1 模塊引腳功能表 ] 符 號 名 稱 功 能 1 Vss 接地 0V 2 VDD 電路電源 5V10% 3 VEE 液晶驅(qū)動電壓 保證VDD-VEE=

22、4.5∽5V電壓差 4 RS 寄存器選擇信號 H:數(shù)據(jù)寄存器 L:指令寄存器 5 R/W 讀/寫信號 H:讀 L:寫 6 E 片選信號 下降沿觸發(fā),鎖存數(shù)據(jù) 7-14 DB0-DB7 數(shù)據(jù)線 數(shù)據(jù)傳輸 表2.2 寄存器選擇功能表: RS R/W 操 作 0 0 指令寄存器(IR)寫入 0 1 忙標(biāo)志和地址計數(shù)器讀出 1 0 數(shù)據(jù)寄存器(DR)寫入 1 1 數(shù)據(jù)寄存器讀出 (注:忙標(biāo)志為"1"時,表明正在進(jìn)行內(nèi)部操作,此時不能輸入指令或數(shù)據(jù),要等內(nèi)部操作結(jié)束,即忙標(biāo)志為"0"時。) (

23、3) 指令功能 格式:RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 共11種指令:清除,返回,輸入方式設(shè)置,顯示開關(guān),控制,移位,功能設(shè)置,CGRAM地址設(shè) 置,DDRAM地址設(shè)置,讀忙標(biāo)志,寫數(shù)據(jù)到CG/DDRAM,讀數(shù)據(jù)由CG/DDRAM。 (4)初始化方法 用戶所編的顯示程序,開始必須進(jìn)行初始化,否則模塊無法正常顯示,下面介紹兩種初始化方法; 利用內(nèi)部復(fù)位電路進(jìn)行初始化 下面指令是在初始化過程中執(zhí)行的。 清屏(DISPLAY CLEAR); 功能設(shè)置(FUNCTION SET); DL = 1: 8Bit 接口數(shù)據(jù);

24、 顯示開/關(guān)控制(DISPLAY ON/OFF CONTROL) D = 0: 顯示關(guān); C = 0: 光標(biāo)關(guān); B = 0: 消隱關(guān) 輸入方式設(shè)置(ENTRY MODE SET ) I/D = 1:(增量): S = 0: 無移位: 2單片機簡介 STC89C52是51系列單片機的一個型號,它是由宏晶公司生產(chǎn)的一個低電壓、高性能的8位單片機,片內(nèi)器件采用宏晶公司的非易失性、高密度存儲技術(shù)生產(chǎn),與標(biāo)準(zhǔn)的MCS-51指令系統(tǒng)兼容,同時片內(nèi)置有通用8位中央處理器和8k 字節(jié)的可反復(fù)擦寫的只讀程序存儲器ROM以及512 字節(jié)的數(shù)據(jù)存儲器RAM,在許多許多較復(fù)雜的控制系統(tǒng)中STC89C5

25、2單片機得到了廣泛的應(yīng)用。STC89C52有40個引腳,各引腳介紹如下: VCC:+5V電源線;GND:接地線。 P0口:P0.7~P0.0,這組引腳共8條,其中P0.7為最高位,P0.0為最低位。這8條引腳共有兩種不同的功能,分別使用于兩種不同的情況。第一種情況是單片機不帶片外存儲器,P0口可以作為通用I/O口使用,P0.7~P0.0用于傳送CPU的輸入/輸出數(shù)據(jù),此時它需外接一上拉電阻才能正常工作。第二種情況是單片機帶片外存儲器,其各引腳在CPU訪問片外存儲器時先是用于傳送片外存儲器的低8位地址,然后傳送CPU對片外存儲器的讀寫數(shù)據(jù)。 P1口:P1口是一個內(nèi)部含上拉電阻的8位雙向I/

26、O口。它也可作為通用的I/O口使用,與P0口一樣用于傳送用戶的輸入輸出數(shù)據(jù),所不同的是它片內(nèi)含上拉電阻而P0口沒有,故P0口在做該用途時需外接上拉電阻而P1口則無需。在FLASH編程和校驗時,P1口用于輸入片內(nèi)EPROM的低8位地址。 P2口:P2口為一個內(nèi)部上拉電阻的8位雙向I/O口,它可以作為通用I/O口使用,傳送用戶的輸入/輸出數(shù)據(jù),同時可與P0口的第二功能配合,用于輸出片外存儲器的高8位地址,共同選中片外存儲單元,但此時不能傳送存儲器的讀寫數(shù)據(jù)。在一些型號的單片機中,P2口還可以配合P1口傳送片內(nèi)EPROM的12位地址中的高4位地址。 P3口:P3口引腳是8個帶內(nèi)部上拉電阻的雙向

27、I/O口,當(dāng)P3口寫入1后,它們被內(nèi)部上拉為高電平。它也可作為通用的I/O口使用,傳送用戶的輸入輸出數(shù)據(jù),P3口也作為一些特殊功能端口使用,如下所示: P3.0:RXD(串行數(shù)據(jù)接收口) P3.2:(外部中斷0輸入) P3.3:(外部中斷1輸入) P3.4:T0(記數(shù)器0計數(shù)輸入) P3.5:T1(記時器1外部輸入) P3.6:(外部RAM寫選通信號) P3.7:(外部RAM讀選通信號) RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時, 要保持RST腳兩個機器周期的高電平狀態(tài)。 ALE/:地址鎖存允許/編程線,當(dāng)

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

29、平時,則允許使用片內(nèi)程序存儲器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。 XTAL1和XTAL2:片內(nèi)振蕩電路輸入線,這兩個端子用來外接石英晶體和微調(diào)電容,即用來連接單片機片內(nèi)OSC的定時反饋回路。 2.2 各部分電路設(shè)計 在單片機應(yīng)用系統(tǒng)中,除單片機本身需要復(fù)位以外,外部擴展I/O接口電路也需要復(fù)位,因此需要一個包括上電和按鈕復(fù)位在內(nèi)的系統(tǒng)同步復(fù)位電路。單片機上的XTAL1和XTAL2用來外接石英晶體和微調(diào)電容,即用來連接單片機片內(nèi)OSC的定時反饋回路。本設(shè)計中開關(guān)復(fù)位與晶振電路如下圖所示,當(dāng)按下按鍵開關(guān)S1時,系統(tǒng)復(fù)位一次。其中電容C1、C2為20pF,C

30、3為10uF,電阻R2、R3為10k,晶振為11.0592MHz。 本設(shè)計制作中選用LCD1602作為顯示模塊,它和單片機硬件的接口如圖所示。其中LCD1602使能端接法: /*--------------------------------------------------------- LCD數(shù)據(jù)、控制口定義 ---------------------------------------------------------*/ #define LCD_DATA P2 //LCD的數(shù)據(jù)口 sbit

31、LCD_BUSY = P2^7; //LCD忙信號位 sbit LCD_RS = P1^1 ; //LCD寄存器選擇 sbit LCD_RW = P1^2 ; //LCD讀寫控制 sbit LCD_EN = P1^3 ; //LCD使能信號*/ DS18B20數(shù)字溫度傳感器通過其內(nèi)部計數(shù)時鐘周期來的作用,實現(xiàn)了特有的溫度測量功能。低溫系數(shù)振蕩器輸出的時鐘信號通過由高溫度系數(shù)振蕩器產(chǎn)生的門周期而被計數(shù),計數(shù)器預(yù)先置有與-55℃相對應(yīng)的一個基權(quán)值。如果計數(shù)器計數(shù)到0時,高溫度系數(shù)振蕩周期還未結(jié)束,則表示測量

32、的溫度值高于-55℃,被預(yù)置在-55℃的溫度寄存器中的值就增加1℃,然后這個過程不斷重復(fù),直到高溫度系數(shù)振蕩周期結(jié)束為止。此時溫度寄存器中的值即為被測溫度值,這個值以16位二進(jìn)制形式存放在存儲器中,通過主機發(fā)送存儲器讀命令可讀出此溫度值,讀取時低位在前,高位在后,依次進(jìn)行。由于溫度振蕩器的拋物線特性的影響,其內(nèi)用斜率累加器進(jìn)行補償。 本設(shè)計中由單片機的I/O口輸出PWM脈沖,通過一個達(dá)林頓管驅(qū)動12V直流無刷風(fēng)扇電機以及實現(xiàn)風(fēng)扇電機速度的調(diào)節(jié)。 鍵盤控制設(shè)置溫度,通過軟件向單片機輸入相應(yīng)控制指令,由單片機通過P1.4口輸出與轉(zhuǎn)速相應(yīng)的PWM脈沖,經(jīng)二個9013三極管組成的達(dá)

33、林頓管驅(qū)動風(fēng)扇直流電機控制電路,實現(xiàn)電機轉(zhuǎn)速與啟停的自動控制。當(dāng)環(huán)境溫度升高時,直流電機的轉(zhuǎn)速會相應(yīng)按照設(shè)定的等級有所提高;當(dāng)環(huán)境溫度下降時,電機的轉(zhuǎn)速會相應(yīng)的下降;當(dāng)環(huán)境溫度低于設(shè)置溫度時,電機停止轉(zhuǎn)動,而環(huán)境溫度又高于預(yù)設(shè)溫度時,電機重新啟動。 系統(tǒng)選用的風(fēng)扇電機為12V直流無刷電機,單達(dá)林頓驅(qū)動器輸入TTL信號為5V,輸出的最大電壓為12V,最大電流為300mA,工作溫度范圍為0~70℃。本系統(tǒng)中單片機I/O口輸出的TTL信號為5V,因此此風(fēng)扇電機可以用由二個9013三極管組成的達(dá)林頓管來驅(qū)動。 Manual與自動Automatic的切換 在實現(xiàn)了本次論文設(shè)計的要求外,

34、本次設(shè)計增做了一個拓展功能,為了實現(xiàn)個性化調(diào)節(jié),為主人人性化的增作了一個手動控制,同時設(shè)有手動與自動切換開關(guān),接單片機控制芯片的P3.5,當(dāng)此開關(guān)閉合為自動,同時LCD1602顯示為a,當(dāng)此開關(guān)斷開為手動,此時LCD11602顯示為m。 手動Manual與自動Automatic的切換 第3章 軟件設(shè)計 3.1 程序設(shè)置 程序設(shè)計部分主要包括主程序、DS18B20初始化函數(shù)、DS18B20溫度轉(zhuǎn)換函數(shù)、溫度讀取函數(shù)、鍵盤掃描函數(shù)、數(shù)碼管顯示函數(shù)、溫度處理函數(shù)以及風(fēng)扇電機控制函數(shù)。DS18B20初始化函數(shù)完成對DS18B20的初始化;DS18B20溫度轉(zhuǎn)換函數(shù)完成對環(huán)境溫度的實時采集

35、;溫度讀取函數(shù)完成主機對溫度傳感器數(shù)據(jù)的讀取及數(shù)據(jù)換算,鍵盤掃描函數(shù)則根據(jù)需要完成初值的加減設(shè)定;溫度處理函數(shù)對采集到的溫度進(jìn)行分析處理,為電機轉(zhuǎn)速的變化提供條件;風(fēng)扇電機控制函數(shù)則根據(jù)溫度的數(shù)值完成對電機轉(zhuǎn)速及啟停的控制。 調(diào)用LCD1602 顯示函數(shù) 主程序開始 程序初始化 調(diào)用鍵盤掃 描函數(shù) 調(diào)用DS18B20 初始化函數(shù) 調(diào)用溫度處 理函數(shù) 調(diào)用DS18B20 溫度轉(zhuǎn)換函數(shù) 調(diào)用風(fēng)扇電 機控制函數(shù) 結(jié)束 調(diào)用溫度讀 取函數(shù) 3.2 用Keil C51編寫程序 Keil C5

36、1是美國Keil Software公司開發(fā)的51系列兼容單片機C語言的軟件開發(fā)系統(tǒng),與單片機匯編語言相比,C語言在不僅語句簡單靈活,而且編寫的函數(shù)模塊可移植性強,因而易學(xué)易用,效率高。隨著單片機開發(fā)技術(shù)的不斷發(fā)展,從普遍使用匯編語言到逐漸使用高級語言開發(fā),單片機的開發(fā)軟件也在不斷發(fā)展,Keil軟件是目前使用較多的MCS-51系列單片機開發(fā)的軟件。 Keil C51軟件不僅提供了豐富的庫函數(shù),而且它強大的集成開發(fā)調(diào)試工具為程序編輯調(diào)試帶來便利,在開發(fā)大型軟件時更能體現(xiàn)高級語言的優(yōu)勢。在使用時要先建立一個工程,然后添加文件并編寫程序,編寫好后再編輯調(diào)試。 3.3 用Proteus進(jìn)

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

38、支持總線結(jié)構(gòu)以及智能化的連線功能;支持主流CPU(如ARM、8051/52、AVR)及其通用外設(shè)模型的實時仿真等,為單片機的開發(fā)應(yīng)用等帶來極大的便利。 軟件使用的主界面如圖 首先啟動Proteus軟件并建立一工程,然后根據(jù)原理圖調(diào)出相應(yīng)的原件,再根據(jù)要求改變各原件的屬性并把各個原件按原理圖連接起來。在原理圖繪制連接好后再把編譯好的程序加載到其中。最后根據(jù)系統(tǒng)要實現(xiàn)的功能分步進(jìn)行仿真。 一 自動模式: 運行仿真,首先進(jìn)入系統(tǒng)歡迎界面,第一幅畫面,首行顯示Graduationdesign第二行顯示 JJU A0821 27# ,P3.5接的撥碼開關(guān)處于低電平,

39、接著第二幅畫面首行顯示 202112designedby,第二行顯示 Yang Yong Qiang如圖: 第三幅畫面:第一行顯示Rights Reserved!第二行顯示 starting... 一 自動模式: 在自動模式中進(jìn)入溫度讀取顯示畫面:第一行顯示溫度Tempture is 16℃,第二行顯示init13 speed is 07 a。Tempture表示溫度;init表示自動控制溫度初始化,13為初始設(shè)置溫度為13℃就是到了13℃左右才開始轉(zhuǎn)動,speed表示風(fēng)扇速度等級,a表示此狀態(tài)為自動,對應(yīng)英文Automatic。接P35的撥碼按鍵為自

40、動與手動控制切換的開關(guān),當(dāng)其斷開時,P35就檢測到高電平,風(fēng)扇為手動控制狀態(tài),相應(yīng)位置顯示小寫字母m,對應(yīng)英文Manual。 這時DS18B20的預(yù)設(shè)溫度為16℃,LCD1602相應(yīng)位置顯示16℃,對應(yīng)風(fēng)扇的轉(zhuǎn)速等級為07,P3.5檢測低電平,自動a符合,PWM輸出脈寬如下圖 ℃圖 設(shè)置DS18B20使其溫度上升為20℃,此時風(fēng)扇速度顯示為11,PWM輸出脈寬相對16℃時明顯增加,如下圖 ℃圖 設(shè)置溫度繼續(xù)升高為30℃時,此時風(fēng)扇速度顯示為21,脈寬明顯繼續(xù)增加如下圖 ℃圖 二 手動模式: 當(dāng)完成了此次畢業(yè)設(shè)計題目的要求后,我添加了額外的手動控制,手動控

41、制由連接在P3.5接口的撥碼開關(guān)選擇,然后按復(fù)位按鍵重啟,手動控制開始。 手動控制開始后,按連接在P3.6端口的加按鍵,PWM波形輸出占空比增加,風(fēng)扇速度增加;按連接在P3.7端口的減按鍵,PWM波形輸出占空比減少,風(fēng)扇速度減小。 按加按鍵,輸出占空比增大,風(fēng)扇速度增大,如下圖 按減按鍵,輸出占空比減少,風(fēng)扇速度減少,如下圖 第4章 系統(tǒng)調(diào)試 4.1 軟件調(diào)試 起初根據(jù)設(shè)計編寫的系統(tǒng)程序:程序的鍵盤接口采用P3口,LCD1602顯示采用P2口送入數(shù)據(jù),從而實現(xiàn)鍵盤功能及LCD1602的顯示。經(jīng)過編譯沒有出錯,但在仿真調(diào)試時,LCD1602顯示的只

42、是亂碼,沒有正確的顯示溫度,按鍵功能也不靈,當(dāng)按下鍵時,顯示并不變化。 經(jīng)過查找分析,發(fā)現(xiàn)鍵盤掃描程序沒有沒有按鍵消抖部分,按鍵在按下與松手時,都會有一定程度的抖動,從而可能使單片機做出錯誤的判斷,導(dǎo)致按鍵條件預(yù)設(shè)溫度時失靈,甚至根本不能工作。因此必須在按鍵掃描程序中加入消抖部分,即在按鍵按下與松手時加入延時判斷,以檢測鍵盤是否真的按下或已完全松手。 LCD1602不能正確顯示主要是DSB18B20讀取溫度需要嚴(yán)格的時間控制,且耗時較長,導(dǎo)致其它的程序運行時短時間內(nèi)妨礙了溫度的讀取。 由于數(shù)字式集成溫度傳感器DS18B20的高度集成化,為軟件的設(shè)計和調(diào)試帶來了極大的簡便,小體積、低功

43、耗、高精度為控制電機的精度和穩(wěn)定提供了可能。軟件設(shè)計采用P1.4口為數(shù)字溫度輸入口,但是需要對輸入的數(shù)字信號進(jìn)行處理后才能顯示,從而多了溫度轉(zhuǎn)換程序。通過軟件設(shè)計,實現(xiàn)了對環(huán)境溫度的連續(xù)檢測。 在本設(shè)計中,采用了達(dá)林頓驅(qū)動器驅(qū)動直流電機。軟件設(shè)置了P1.4口輸出不同的PWM波形,通過達(dá)林頓驅(qū)動直流電機轉(zhuǎn)動,通過軟件中程序設(shè)定,根據(jù)不同溫度輸出不同的PWM波,從而得到不同的占空比控制風(fēng)扇直流電機。程序?qū)崿F(xiàn)了P1.4口的PWM波形輸出,當(dāng)外界溫度低于設(shè)置溫度時,電機不轉(zhuǎn)動或自動停止轉(zhuǎn)動;當(dāng)外界溫度高于設(shè)置溫度時,電機的轉(zhuǎn)速升高或是自動開始轉(zhuǎn)動,且外界溫度與設(shè)置溫度的差值越大,電機轉(zhuǎn)速越高,

44、即占空比增加。 在本系統(tǒng)中風(fēng)扇電機的轉(zhuǎn)速可實現(xiàn)四級調(diào)速。通過溫度傳感器檢測的溫度與系統(tǒng)預(yù)設(shè)溫度值的比較,實現(xiàn)轉(zhuǎn)速變換。當(dāng)檢測到的溫度比預(yù)設(shè)的溫度每增加1攝氏度時,風(fēng)扇電機轉(zhuǎn)速增加一級。 4.2 硬件調(diào)試 系統(tǒng)按鍵部分實現(xiàn)了以下功能:自動控制時,按下P3.7接口按鍵,LCD1602設(shè)置溫度初始值增一;按下P3.6接口按鍵,LCD1602設(shè)置溫度初始值減一。手動控制時,按下P3.7接口按鍵,轉(zhuǎn)速加一,按下P3.6接口按鍵,轉(zhuǎn)速減一。調(diào)試過程中出現(xiàn)了當(dāng)按鍵時間過長時,設(shè)置的溫度值不是增一或者減一,而是增加后減少幾個值,出現(xiàn)這種情況的主要元因可能是按鍵的去抖動延時時間過長造成,改進(jìn)方法為將

45、對應(yīng)的按鍵去抖動延時時間適量增加,但也不應(yīng)過長,否則將出現(xiàn)按鍵無效的情形。 系統(tǒng)顯示部分實現(xiàn)了以下功能:LCD1602第一行實現(xiàn)了環(huán)境溫度顯示,LCD1602第二行自動控制時能根據(jù)按鍵的調(diào)整顯示所需要的溫度初始值和風(fēng)扇轉(zhuǎn)速。手動控制時,顯示轉(zhuǎn)速級別和自動調(diào)整的轉(zhuǎn)速,兩者形成對比,讓用戶更明智地切換為自動控制還是手動控制,且LCD1602的顯示效果很好,很穩(wěn)定。 將DS18B20芯片接在系統(tǒng)板對應(yīng)的P1.0口,通過插針在對應(yīng)系統(tǒng)板的右下側(cè)三口即為對應(yīng)的VCC、P1.0和GND,可將芯片直接插在該插針上,因此即為方便。系統(tǒng)調(diào)試中為驗證DS18B20是否能在系統(tǒng)板上工作,將手心靠攏或者捏住芯

46、片,即可發(fā)現(xiàn)LED顯示的前兩位溫度也迅速升高,驗證了DS18B20能在系統(tǒng)板上工作。由于DS18B20為3個引腳,因此在調(diào)試過程中因注意其各個引腳的對應(yīng)位置,以免將其接反而是芯片不能工作甚至燒毀芯片。 系統(tǒng)本部分的設(shè)計中重在軟件設(shè)計,因為外圍的驅(qū)動電路只是將送來的PWM信號放大從而驅(qū)動電機轉(zhuǎn)動。系統(tǒng)軟件設(shè)置在P1.0口輸出使電機轉(zhuǎn)動的PWM占空比,當(dāng)環(huán)境溫度高于設(shè)置溫度時,電機開始轉(zhuǎn)動,若此時用高于環(huán)境溫度的熱源靠近測溫芯片DS18B20時,發(fā)現(xiàn)電機的轉(zhuǎn)速在升高,并越來越快,當(dāng)達(dá)到一定值時,發(fā)現(xiàn)電機的轉(zhuǎn)速不再升高;將熱源離開測溫芯片DS18B20時,發(fā)現(xiàn)電機的轉(zhuǎn)速開始下降,轉(zhuǎn)速達(dá)到一定值

47、時,若將設(shè)置溫度升高到環(huán)境溫度以上,發(fā)現(xiàn)電機又停止了轉(zhuǎn)動。系統(tǒng)采用的直流電機為12V的額定電壓,且得到了可觀的控制效果。 4.3 系統(tǒng)功能 本系統(tǒng)能夠?qū)崿F(xiàn)單片機系統(tǒng)檢測環(huán)境溫度的變化,然后根據(jù)環(huán)境溫度變化來控制風(fēng)扇直流電機輸入占空比的變化,從而自動產(chǎn)生不同的轉(zhuǎn)動速度,亦可根據(jù)鍵盤調(diào)節(jié)不同的占空比來手動控制電機。兩個自動控制和手動控制的切換要按復(fù)位鍵重啟才有效,開機時LCD1602顯示三幅歡迎界面:第一幅Graduationdesign JJU A0821 27# 第二幅202112designedby Yang Yong Qiang 第三幅Rights Reserved! Sta

48、rting... ,然后進(jìn)入讀溫度控制狀態(tài)。 一:自動控制 當(dāng)P3.5口接的撥碼開關(guān)往下?lián)軇t為自動控制。當(dāng)環(huán)境溫度低于一定溫度時,電機停止轉(zhuǎn)動;單片機對應(yīng)輸出口輸出PWM信號,控制電機開始轉(zhuǎn)動,并隨著環(huán)境溫度的增加電機的轉(zhuǎn)速逐漸升高。隨著環(huán)境溫度的減少電機的轉(zhuǎn)速逐漸減小。系統(tǒng)還能動態(tài)的顯示當(dāng)前溫度和設(shè)置溫度初始值,并能通過鍵盤調(diào)節(jié)當(dāng)前的設(shè)置溫度。LCD1602顯示:第一行顯示溫度Tempture is 16℃,第二行顯示init13 speed is 07 a。Tempture表示溫度;init表示自動控制溫度初始化,13為初始設(shè)置溫度為13℃就是到了13℃左右才開始轉(zhuǎn)動,speed表示風(fēng)

49、扇速度等級,a表示此狀態(tài)為自動,對應(yīng)英文Automatic。接P35的撥碼按鍵為自動與手動控制切換的開關(guān),當(dāng)其斷開時,P35就檢測到高電平,風(fēng)扇為手動控制狀態(tài),相應(yīng)位置顯示小寫字母m,對應(yīng)英文Manual。 二:拓展部分 手動控制 當(dāng)P3.5口接的撥碼開關(guān)往上撥則為手動控制。手動控制時,通過按P3.7口接的按鍵為加速,按P3.6口接的按鍵為減速。同時對應(yīng)LCD1602對應(yīng)顯示風(fēng)扇轉(zhuǎn)速級別,和系統(tǒng)根據(jù)環(huán)境溫度自動換算的所需要的轉(zhuǎn)速。LCD1602顯示:第一行顯示溫度Tempture is 16℃,第二行顯示Gra00 wspeed is 07 m。Tempture表示溫度;Gra00表示手動

50、控制風(fēng)扇轉(zhuǎn)速等級為0時占空比為0,風(fēng)扇不轉(zhuǎn), wspeed是該系統(tǒng)為自動控制時電機自動調(diào)節(jié)的轉(zhuǎn)速級別,m表示此狀態(tài)為手動,對應(yīng)英文Manual。手動控制時,顯示轉(zhuǎn)速級別和自動調(diào)整的轉(zhuǎn)速,兩者形成對比,讓用戶更明智地切換為自動控制還是手動控制。 系統(tǒng)總體上由五部分來組成,既按鍵與復(fù)位電路、LCD1602顯示電路、溫度檢測電路、電機驅(qū)動電路。首先考濾的是溫度檢測電路,該部分是整個系統(tǒng)的首要部分,首先要檢測到環(huán)境溫度,才能用單片機來判斷溫度的高低,然后通過單片機控制直流風(fēng)扇電機的轉(zhuǎn)速;其次是電機驅(qū)動電路,該部分需要使用外圍電路將單片機輸出的PWM信號轉(zhuǎn)化為平均電壓輸出,根據(jù)不同的PWM

51、波形得到不同的平均電壓,從而控制電機的轉(zhuǎn)速,電路的設(shè)計中采用了達(dá)林頓驅(qū)動器,實現(xiàn)較好的控制效果;再次是數(shù)碼管的動態(tài)顯示電路,該部分的功能實現(xiàn)對環(huán)境溫度和設(shè)置溫度的顯示,其中DS18B20采集環(huán)境溫度,按鍵實現(xiàn)不同設(shè)置溫度的調(diào)整,實現(xiàn)了對環(huán)境溫度和設(shè)置溫度的及時連續(xù)顯示。 結(jié) 論 本次設(shè)計的系統(tǒng)以單片機為控制核心,以溫度傳感器DS18B20檢測環(huán)境溫度,實現(xiàn)了根據(jù)環(huán)境溫度變化調(diào)節(jié)不同的風(fēng)扇電機轉(zhuǎn)速,在一定范圍能能實現(xiàn)轉(zhuǎn)速的連續(xù)調(diào)節(jié),LCD1602能連續(xù)穩(wěn)定的顯示環(huán)境溫度和轉(zhuǎn)速,能按自動和手動兩種模式通過兩個獨立按鍵手動調(diào)節(jié)不同的占空比,進(jìn)而改變電機轉(zhuǎn)速。實現(xiàn)了基于單片機的溫控風(fēng)扇

52、的設(shè)計。 本系統(tǒng)設(shè)計可推廣到各種電動機的控制系統(tǒng)中,實現(xiàn)電動機的轉(zhuǎn)速調(diào)節(jié)。在生產(chǎn)生活中,本系統(tǒng)可用于簡單的日常風(fēng)扇的智能控制,為生活帶來便利;在工業(yè)生產(chǎn)中,可以改變不同的輸入信號,實現(xiàn)對不同信號輸入控制電機的轉(zhuǎn)速,進(jìn)而實現(xiàn)生產(chǎn)自動化,如在電力系統(tǒng)中可以根據(jù)不同的負(fù)荷達(dá)到不同的電壓信號,再由電壓信號調(diào)節(jié)不同的發(fā)電機轉(zhuǎn)速,進(jìn)而調(diào)節(jié)發(fā)電量,實現(xiàn)電力系統(tǒng)的自動化調(diào)節(jié)。綜上所述,該系統(tǒng)的設(shè)計和研究在社會生產(chǎn)和生活中具有重要地位。 參 考 文 獻(xiàn) [1] 李學(xué)龍.使用單片機控制的智能遙控電風(fēng)扇控制器[J].電子電路制作,2021,9:13—15. [2] 藍(lán)厚榮.單片機的PWM控制技術(shù)[J]

53、.工業(yè)控制計算機.2021,23(3):97—98 —344 —77. [5] 胡全. 51單片機的數(shù)碼管動態(tài)顯示技術(shù)[J] .信息技術(shù),2022,13:25—26 [6] 李鋼,趙彥峰.1-Wire總線數(shù)字溫度傳感器DSI8B20原理及應(yīng)用[J].現(xiàn)代電子技術(shù),2021,28(21):77—79. [7] 馬云峰.單片機與數(shù)字溫度傳感器DS18B20的接口設(shè)計[J].計算機測量與控制,2022,10(4):278—280. [8] 王會明,侯加林.智能電風(fēng)扇控制器的研制[J].電子與自動化,1998,5(4):25—26. —65. [10] 孫號. Proteus軟件在設(shè)計

54、電子電路中的應(yīng)用[J].儀表技術(shù),2022,8:74—75 [11] 樓俊軍.基于Proteus和Keil的單片機演奏樂曲的實現(xiàn)[J] .科技信息,2021,23:第50頁 [12] 王文海,周歡喜.用Proteus實現(xiàn)51單片機的動態(tài)仿真調(diào)試[J].IT技術(shù),2021,20:10—11 [13] 丁建軍,陳定方,周國柱. 基于AT89C51的智能電風(fēng)扇控制系統(tǒng)[J].湖北工學(xué)院學(xué)報,2021,18(2):60—63. [14] 王會明,侯加林. 智能電風(fēng)扇控制器的研制[J]. 電子與自動化,1998,5(4):25—26. [15] 劉進(jìn)山. 基于MCS-51電風(fēng)扇智能調(diào)速器的設(shè)計

55、[J]. 廣州:電子質(zhì)量,2021,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 Ser.D Earth Sciences,2021,1(47):168—176. [17] YLai,Y,Wang. Three—dimensional nonlinear analysis for temperature

56、characteristic of ventilated embankment in permafrost regions [J]. Cold Regions Science and Technology,2021,38(2):165—184. [18] Cheng Guodong. Linearity engineering in permafrost areas [J]. Journal of Glaciology and Geocryology(in Chinese),2021,23(3):213—217. 附錄A 電路總圖 附圖1 電路總圖

57、 附錄B 程序代碼 1 main.c #include "reg51.h" #include "hardware.h" #include "18b20.h" #include "intrins.h" #include "lcd1602.h" sbit P1_0=P1^4; sbit P1_1=P3^6; sbit P1_2=P3^7; sbit P1_3=P3^5; unsigned char PWMH; //高電平脈沖的個數(shù) unsigned char PWM; //PWM周期 unsigned char COUNTER; unsigned cha

58、r A=13; unsigned char W=0; unsigned char Tempture,count,canshu; void K1CHECK(); void K2CHECK(); void Delay1ms(unsigned char Delay1msDate); void Delay1s(unsigned char Delay1sDate); void INTTO() interrupt 1 { COUNTER++; //計數(shù)值加1 if((COUNTER!=PWMH)&&(COUNTER==PWM)) //如果等于高電平脈沖數(shù)

59、{ COUNTER=1; //計數(shù)器復(fù)位 P1_0=1; //P1.0為高電平 } else if(COUNTER==PWMH) P1_0=0; //P1.0變?yōu)榈碗娖? } main() { PWMH=0x02; COUNTER=0x01; PWM=0x15; TMOD=0x02; //定時器0在模式2下工作 TL0=0x38; //定時器每200us產(chǎn)生一次溢出 TH0=0x38; //自動重裝的值 ET0=1; //使能定時器0中斷 EA=1; //使能總中斷 TR0=

60、1; //開始計時 LCD_initial( ); LCD_cls(); LCD_set_position(0x00); LCD_prints("Graduationdesign"); LCD_set_position(0x40); LCD_prints(" JJU A0821 27# "); Delay1s(10); LCD_cls(); LCD_set_position(0x00); LCD_prints("202112designedby"); LCD_set_position(0x40); LCD

61、_printc(30); LCD_prints("Yang Yong Qiang"); Delay1s(10); LCD_cls(); LCD_set_position(0x00); LCD_prints("Rights Reserved!"); LCD_set_position(0x40); LCD_prints(" starting..."); Delay1s(10); while(1) { while(ResetPluse()); //復(fù)位并檢測1820成功與否。

62、 WriteCommandtoDS18b20(0xcc); //跳過序列號 Delay1ms(2); //延時2ms,準(zhǔn)備發(fā)送下一個指令 WriteCommandtoDS18b20(0x44); //溫度轉(zhuǎn)換命令 Delay1ms(250); Delay1ms(250); Delay1ms(250); Delay1ms(250); //等待1s鐘,讓1820有時間轉(zhuǎn)換溫度 while(ResetPluse());

63、 //再次復(fù)位 Delay1ms(2); WriteCommandtoDS18b20(0xcc); //跳過序列號 Delay1ms(2); //延時2ms,準(zhǔn)備讀取溫度 WriteCommandtoDS18b20(0xBE); //讀取溫度命令 Delay1ms(2); Tempture=TemptureReadAndConvert(); //讀取并轉(zhuǎn)換溫度 if(P1_

64、3==0) { // LCD_cls(); LCD_set_position(0x00); LCD_prints("Tempture is "); LCD_printc((Tempture/10) +48); LCD_printc((Tempture%10 )+48); LCD_prints("℃"); LCD_set_position(0x40); LCD_prints("init"); LCD_printc(A/10+48 ); LCD_printc(A%10+48

65、 ); LCD_prints(" speed"); LCD_printc(((Tempture-10)+1)/10+48 ); LCD_printc((((Tempture-10)+1)%10 )+48); LCD_prints(" a"); PWMH=(Tempture-A); if(P1_2==0) //P37 A++;//掃描KEY1, if(P1_1==0) //P36 A--;//掃描KEY2,如果按下KEY2,跳轉(zhuǎn)到KEY2處理程序 } if(

66、P1_3==1) { LCD_cls(); LCD_set_position(0x00); LCD_prints("Tempture is "); LCD_printc((Tempture/10) +48); LCD_printc((Tempture%10 )+48); LCD_prints("℃"); LCD_set_position(0x40); LCD_prints("Gra"); LCD_printc(W/10+48 ); LCD_printc(W%10+48 ); LCD_prints(" wspeed"); LCD_printc(((Tempture-10)+1)/10+48 ); LCD_printc((((Tempture-10)+1)%10 )+48); // LCD_set_position(0x55);

展開閱讀全文
溫馨提示:
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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!