

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、水族箱溫度控制系統(tǒng)(一)系統(tǒng)的概述本系統(tǒng)以AT89C51單片機為控制核心的測控儀,主要是為了對水族箱內(nèi)的溫度控制而設(shè)計的。該測控儀具有檢測精度高、使用簡單、成本較低和工作穩(wěn)定可靠等特點,所以具有一定的應(yīng)用前景。(二)系統(tǒng)的要求本系統(tǒng)通過單片機AT89C51控制,用18B20數(shù)字溫度計采集溫度。通過LCD顯示屏顯示當(dāng)前溫度,當(dāng)溫度高于20°C,馬達將帶動風(fēng)扇的轉(zhuǎn)動,實現(xiàn)自動控制水族箱里的溫度并且隨著溫度每升高2C,馬達的轉(zhuǎn)動速率提高一倍。當(dāng)檢測到的溫度高于25C時,發(fā)出報警信號。本設(shè)計將實現(xiàn)水族箱溫度的自動化控制。用protues軟件繪制電路原理圖,再根據(jù)電路原理圖捍接電路板。捍接的電
2、路板實現(xiàn)溫度的自動化控制。(三)系統(tǒng)的主要模塊1本系統(tǒng)的主要組成部分本系統(tǒng)為一個全自動溫度檢測與控制系統(tǒng),由以下幾個部分組成:AT89C51單片機,溫度檢測,顯示電路,馬達,及報警裝置等組成。組成圖如圖1-1。圖1-1溫度自動控制主要組成部分由圖1-1所示,本系統(tǒng)的核心部分是AT89C51,此芯片是該電路的樞紐。由它先控制著溫度的檢測,用檢測到的溫度實現(xiàn)馬達的自動控制,以及顯示。若檢測到的溫度高于設(shè)定的值,則發(fā)出報警信號。2各部分的功能(1) AT89C51單片機:它是系統(tǒng)的中央處理器,擔(dān)負著系統(tǒng)的控制和運算。(2) 溫度檢測裝置:18B20數(shù)字溫度計對水族箱內(nèi)溫度進行采集,將溫度轉(zhuǎn)換成數(shù)字。
3、(3) 顯示設(shè)備:主要是用于顯示檢測到的水族箱溫度。(4) 馬達:主要用于帶動風(fēng)扇的轉(zhuǎn)動。(5) 報警裝置:產(chǎn)生報警信號。二、系統(tǒng)的硬件組成電路設(shè)計系統(tǒng)的硬件組成部分包括:主控制器AT89C51單片機、溫度傳感器DS18B20、顯示電路LED、馬達、報警裝置等構(gòu)成oAT89C51連接各模塊的主控制端口,初步選定將要運用到的電子元器件,再用Protues繪制原理圖,再根據(jù)原理圖捍接電路板。(一) 系統(tǒng)總硬件設(shè)計首先對硬件系統(tǒng)18B20定義端口為P2.0,P2.1,P2.2和P0口控制LCD的顯示,定義端口P1.5為馬達控制端口,P1.7為發(fā)光二極管控制端口。首先對溫度采集,將采集到的溫度轉(zhuǎn)換數(shù)字
4、,采集到的溫度由LCD顯示屏顯示。再將采集到的溫度所屬軟件設(shè)置的哪個范圍,而控制P1.5的電平輸出。電路原理圖如2-1所示:C1CRYSTALll1nF+88.8Q1NPN29303112JE1""567LED-BLU8LCD1LM016L189XTAL1XTAL2RSTPSENALEEAU2SW74-46a孑no1U7QO6E5rtm0-892a40Sn32P1.0P1.1P1.2P1.3P1.4P1.5P1.6AT89C51P0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7P2.0/A8P2.
5、1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15P3.0/RXDP3.1/TXDP3.2/INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WR13141516 77IR2f4.7k'HVCCDQGNDDS18B20RESPACK-82-1電路原理圖電路原理圖用Protues軟件繪制而成。用Protues軟件繪制電路原理圖方便,快捷。Protues軟件有豐富的元件庫,智能的器件搜索,智能化的連線,可輸出高質(zhì)量的圖紙。電路原理圖清晰明了。(二)時鐘電路AT89C51芯片內(nèi)部有一個高增益反向放大器,用于構(gòu)成震蕩器。反向放
6、大器的輸入端為XTAL1,輸出端為XTAL2。在TXAL1和XTAL2兩端跨接由石英晶體及兩個電容構(gòu)成的自激震蕩器,如圖2-2所示。電容器C1和C2取22pF,選用不同的電容量對震蕩頻率有微調(diào)作用。但石英晶體本身的標(biāo)定頻率才是單片機震蕩頻率的決定因素。21圖2-2時鐘電路時鐘電路中,兩個電容都選擇22pF的電容,電容各一端接與晶振相連,各一端接地。選擇的晶振是頻率為12MHZ。此模塊就是產(chǎn)生象時鐘一樣準(zhǔn)確的振蕩電路。(三)AT89C51的復(fù)位電路AT89C51單片機通常采用上電自動復(fù)位和開關(guān)手動復(fù)位兩種方式。本系統(tǒng)采用上電復(fù)位電路,如圖2-3所示,所謂上電復(fù)位,是指單片機只要一上電,便自動地進
7、入復(fù)位狀態(tài)。在通電瞬間,電容C通過電阻R充電,RST端出現(xiàn)正脈沖,用以復(fù)位。22pF10kC3RST1nF30-PSENALEEA圖2-3復(fù)位電路復(fù)位電路的基本功能是:系統(tǒng)上電時提供復(fù)位信號,直至系統(tǒng)電源穩(wěn)定后,撤銷復(fù)位信號。為可靠起見,電源穩(wěn)定后還要經(jīng)一定的延時才撤銷復(fù)位信號,以防電源開關(guān)或電源插頭分-合過程中引起的抖動而影響復(fù)位。RC復(fù)位電路可以實現(xiàn)上述基本功能,但解決不了電源毛刺和電源緩慢下降等問題,而其調(diào)整RC常數(shù)改變延時會令驅(qū)動能力變差。(四)單總線數(shù)字溫度傳感器DS18B20檢測電路DQ為數(shù)據(jù)輸入/輸出引腳,連接P3.3。開漏單總線接口引腳。當(dāng)被用著在寄生電源下,也可以向器件提供電
8、源,GND為地信號;VCC為電源信號。圖2-4為DS18B20檢測電路。P2.3/A11P2.4/A12P2.5/A13-25AFP2.6/A14P2.7/A1527-281R2P3.0/RXDP3.17TXDP3.2/INT0P33/INT1J4.7kU2123VCCDQGND132P3.4/T0P3.5/I1141115P3.6/WR16DS18B20圖2-4DS18B20檢測電路(五)LCD顯示模塊用AT89C51的P0口作為數(shù)據(jù)線,用P2.0、P2.1、P2.2分別作為LCD的4、5、6。其中4是下降沿觸發(fā)的片選信號,連接P2.0,5是讀寫信號,連接P2.1,6是寄存器選擇信號,連接P
9、2.2。圖2-5為LCD的硬件連接。SEN|6E4.7kPO.O/ADOP0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7P2.0/A8P2.1/A9LCD1LM016L1P2.3/A1139d038d137d236d335d434d533d632d721RS22RW24RP119d7RESPACK-8圖2-5LCD的硬件連接(六)驅(qū)動電路系統(tǒng)使用的是直流馬達,包含周圍磁場、電刷、整流子等元件,電刷和整流子將外部所供應(yīng)的直流電源,持續(xù)地供應(yīng)給轉(zhuǎn)子的線圈,並適時地改變電流的方向,使轉(zhuǎn)子能以同一方向持續(xù)旋轉(zhuǎn)。直流馬達的優(yōu)點有速度調(diào)整容易
10、,啟動轉(zhuǎn)矩較大等,但是電刷與整流子保養(yǎng)維修不易。圖2-6為硬件連接圖。AT89C51+88.8圖2-6驅(qū)動電路圖中三極管采用的是2N3903,用于放大電流。基極接P1.5口,用于控制輸出信號。集電極按電源正極,發(fā)射極接馬達正極。三極管2N3903三極管最基本的作用是放大作用,它可以把微弱的電信號變成一定強度的信號,當(dāng)然這種轉(zhuǎn)換仍然遵循能量守恒,它只是把電源的能量轉(zhuǎn)換成信號的能量罷了。三極管有一個重要參數(shù)就是電流放大系數(shù)0。當(dāng)三極管的基極上加一個微小的電流時,在集電極上可以得到一個是注入電流0倍的電流,即集電極電流。集電極電流隨基極電流的變化而變化,并且基極電流很小的變化可以引起集電極電流很大的
11、變化,這就是三極管在此處的作用。用于P1.5口輸出的微弱信號經(jīng)過放大,輸出到馬達中,這樣就可以很好的控制馬達了。(七)報警電路系統(tǒng)采用的報警器件是二極管,用引腳P1.7控制。如圖2-7所示LED-BLUE丨7pig®LPAT89C51圖2-7報警電路二極管和普通揚聲器相比,最重要一個特點是只要按照極性要求加上合適的直流電壓,就可以發(fā)出固有頻率的聲音,因此使用起來比揚聲器簡單。三、系統(tǒng)軟件的設(shè)計一個應(yīng)用系統(tǒng)要完成各項功能,首先必須有較完善的硬件做保證。同時還必須得到相應(yīng)設(shè)計合理的軟件的支持,尤其是微機應(yīng)用高速發(fā)展的今天,許多由硬件完成的工作,都可通過軟件編程而代替。甚至有些必須采用很復(fù)
12、雜的硬件電路才能完成的工作,用軟件編和有時會變得很簡單。因此充分利用其內(nèi)部豐富的硬件資源和軟件資源。程序設(shè)計語言有三種:機器語言、匯編語言、高級語言。本系統(tǒng)運用的是高級語言所編寫,也就是C語言。從軟件的功能不同可分為四大類:一是檢測軟件,它是用來檢測溫度。二是顯示部分,用來顯示所檢測到的溫度。三是調(diào)控部分,用來控制馬達的轉(zhuǎn)速。四是當(dāng)溫度大于25°C,二極管發(fā)出報警信號。每一個執(zhí)行軟件也就是一個小的功能執(zhí)行模塊。這里將各執(zhí)行模塊一一列出,并為每一個執(zhí)行模塊進行功能定義。下圖為軟件設(shè)計流程圖(程序見附錄)。四、總結(jié)通過這次對水族箱溫度自動控制的設(shè)計與制作,讓我自主完成了一個完整的設(shè)計,雖
13、然這次的設(shè)計做的溫度顯示以及馬達的控制都相對比較簡單,但是也給將來進入硬件開發(fā)有了一個起點的基礎(chǔ)。在這次設(shè)計的過程,剛開始的時候,真的有點不知所措,因為學(xué)習(xí)完單片機已有數(shù)日,以及微機原理課程,一些知識已忘記。畫電路原理圖,一開始就覺得有點煩,因為protues軟件安裝的版本較低,做起來非常的費時又費力,一些芯片,還不可以仿真。畫電路圖,自己學(xué)習(xí)捍接板,開始第一個板,沒有捍成功,研究數(shù)日,后來才發(fā)現(xiàn)是一些線路捍接不良導(dǎo)致電路連接出現(xiàn)錯誤。后來重新開始動工,才捍成功。常常有解決不了的問題,就上網(wǎng)查詢,或者閱覽資料書。雖此項工作枯燥無味,但可緞練其意志,耐性,堅韌。因為常會碰到很難解決的問題。所以要
14、堅持不懈。這個程序的軟件程序都是使用C語言編寫的,畢竟使用匯編對于我們來說難度都是比較大啊。這次設(shè)計是一個學(xué)習(xí)新知識、鞏固加深所學(xué)課本理論知識的過程,它培養(yǎng)了我們綜合運用知識的能力,獨立思考和解決問題的能力。它不僅加深了我對單片機技術(shù)課程的理解,還讓我感受到了電子設(shè)計的樂趣。對我來說,這次畢業(yè)設(shè)計是非常有意義的。本系統(tǒng)使用的溫度控制器結(jié)構(gòu)簡單、測溫準(zhǔn)確,具有一定的實際應(yīng)用價值。該智能溫度控制器只是DS18B20在溫度控制領(lǐng)域的一個簡單實例,還是許多需要完善的地方,例如可以將測得的溫度通過單片機與通訊模塊相連接,以手機短消息的方式發(fā)送給用戶,使用戶能夠隨時對溫度進行監(jiān)控。還可以增加對濕度的自主控
15、制。此外,還能廣泛地應(yīng)用于其他一些工業(yè)生產(chǎn)領(lǐng)域。測溫控溫系統(tǒng)得到快速的發(fā)展,國外的測量控制系統(tǒng)已經(jīng)成熟,產(chǎn)品也較多。近兩年,國內(nèi)也出現(xiàn)了許多高精度的溫度控制產(chǎn)品,但相對于用戶來說,價格還是偏高。而由于競爭越來越激烈,現(xiàn)在企業(yè)發(fā)展的趨勢是如何最有效的提高生產(chǎn)效率,降低生產(chǎn)成本。尋求性能可靠、價格低廉,應(yīng)用廣泛的元器件是生產(chǎn)過程的首先要考慮的問題。參考文獻1 謝自美,尹仕,肖看,趙云娣,羅杰電子線路綜合設(shè)計M.武漢:華中科技大學(xué)出版社,2007.2 楊旭方.單片機控制與應(yīng)用實訓(xùn)教程M.北京:電子工業(yè)出版社,2010.5.夏繼強.單片機應(yīng)用設(shè)計培訓(xùn)教程M.北京:北京航空航天大學(xué)出版社,2008.4
16、高峰.單片機微型計算機與接口技術(shù)M.北京:科學(xué)出版社.20035 李廣弟,朱月秀,王秀山.單片機基礎(chǔ)M.北京:北京航空航天大學(xué)出版社,2001.7.6 胡漢才.單片機原理及其接口技術(shù)M.北京:清華大學(xué)出版社,20047求是科技.單片機典型模塊設(shè)計實例導(dǎo)航M.北京:人民郵電出版社,2004王化詳,張淑英.傳感器原理M天津:天津大學(xué)出版社,2002.59王港元.電工電子實踐指導(dǎo)M江西:江西科學(xué)技術(shù)出版社,2005.610楊素行著.模擬電子技術(shù)基礎(chǔ)(第二版)M.北京:高等教育出版社,2006.11陳靜.單片機應(yīng)用系統(tǒng)中的編程語言J.淮北職業(yè)技術(shù)學(xué)院學(xué)報.2009.8(1):43-44.12仝慶華.基
17、于Proteus單片機虛擬實驗室J.山西大同大學(xué)學(xué)報(自然科學(xué)版).2009.25(2):23-25.13包敬海,侯昭武,吳國輝.基于AT89C51單片機設(shè)計智能鍋爐控制系統(tǒng)J.北京中國科技信息.200914周紅麗,張?zhí)扉_等.基于單片機的九路溫度監(jiān)控系統(tǒng)J.青島:微計算機信息.2008.15劉華東,張亞華.單片機原理與應(yīng)用(第二版)M.北京:電子工業(yè)出版社.2006:1-5.致謝畢業(yè)設(shè)計完成了,在這個過程中我學(xué)到了很多東西。首先我要感謝我的導(dǎo)師何子軒老師,他在我完成論文的過程中,給予了我很大的幫助。從畢業(yè)設(shè)計選題到設(shè)計完成,何老師給予了我耐心的指導(dǎo)與細心關(guān)懷。此外,此系統(tǒng)能順利完成,也得到了寢
18、室的朋友的幫忙。有些我不了解的知識,在她們悉心指導(dǎo)下,得已解決。在此,我深表感謝。最后要感謝的是我的父母,他們讓培養(yǎng)了我在遇到困難前,不倒下。讓我在漫長的人生旅途是使心靈有虔敬的歸依。在未來的日子里,我會更加努力工作和做一名優(yōu)秀的人。不辜負父母對我的期望。我一定會好好的孝敬和報答他們!附錄A:*名稱:基本單片機AT89C51的水族箱溫度自控系統(tǒng)*/#includevat89c51.h>#include"stdio.h"#include<math.h>#includevintrins.h>#include"lcd1602.h"#de
19、fineucharunsignedchar#defineuintunsignedint;/*定義端口*/#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*/sbitDQ=PM3;dsl8b20端口sbitFan=P1A5;/風(fēng)扇端口sbitTru=P1A
20、7;喇叭的端口sfrdataled=0x80;顯示數(shù)據(jù)端口/#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*/*全局變量*/#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#
21、J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*/uinttemp,i,TempH;ucharflag_get,count,num,minute,second,x;longstr6;/#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J
22、*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*/*函數(shù)聲明*/#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*
23、#J*#J*/voiddelay1(ucharMS);unsignedintReadTemperature(void);voidInit_DS18B20(void);unsignedcharReadOneChar(void);voidWriteOneChar(unsignedchardat);voiddelay(unsignedinti);/#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J
24、*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*/*/*延時函數(shù)聲明/#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*/voidmDelay(unsignedc
25、harj)unsignedinti;for(;j>O;j-)for(i=0;iv125;i+);/#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*/*主函數(shù)*/#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#
26、J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*/main()unsignedcharTempH,TempL;TMODI=0x01;定時器設(shè)置THO=Oxef;TLO=OxfO;IE=0x82;TRO=1;P2=0x00;count=0;InitLcd();mDelay(20);while(1)Fan=1;mDelay(10);Tru=
27、1;mDelay(10);if(TempH>20)&&(TempHv=25)Fan=0;mDelay(10);if(TempH>25)產(chǎn)生報警信號Tru=0;mDelay(10);Fan=0;mDelay(150);for(i=1;iv5;i+)Temi=stri;disp();strO=TempH/1OO;/十位溫度str1=(TempH%1OO)/1O;十位溫度str2=(TempH%100)%10;/個位溫度,帶小數(shù)點str3=TempL;if(flag_get=1)定時讀取當(dāng)前溫度temp=ReadTemperature();if(temp&0x80
28、00)一str0=0x40;負號標(biāo)志temp=temp;/取反加1temp+=1;elsestrO=O;TempH=temp>>4;TempL=temp&0xOF;TempL=TempL*6/10;小、數(shù)近似處理flag_get=0;/#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#
29、J*#J*#J*#J*#J*#J*#J*#J*#J*/*定時器中斷*/voidtim(void)interrupt1using1/中斷,用于溫度檢測間隔TH0=0xef;定時器重裝值TL0=0xf0;num+;if(num=50)num=0;flag_get=1;/標(biāo)志位有效second+;if(second>=60)second=0;/*延時函數(shù)*/#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*
30、#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*/voiddelay(unsignedinti)延時函數(shù)while(i_);/#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*
31、#J*#J*#J*#J*#J*/*初始化*/#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*/voidInit_DS18B20(void)unsignedcharx=0;DQ=1;DQ復(fù)位delay(8);稍做延時DQ=0;單片機將DQ拉低delay(
32、80);/精確延時大于480usDQ=1;拉高總線delay(lO);x=DQ;稍做延時后如果x=0則初始化成功x=1則初始化失敗delay(5);/*讀一個字節(jié)*/#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*/unsignedcharReadOn
33、eChar(void)unsignedchari=0;unsignedchardat=0;for(i=8;i>0;i_)DQ=0;/給脈沖信號dat>>=1;DQ=1;/給脈沖信號if(DQ)datl=0x80;delay(5);return(dat);/#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#
34、J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*/*寫一個字節(jié)*/#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*/voidWriteOneChar(unsignedchardat)unsignedchari=0;for(i=8;
35、i>0;i-)DQ=0;DQ=dat&0x01;delay(5);DQ=1;dat>>=1;delay(5);/#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*/*讀取溫度*/#J*#J*#J*#J*#J*#J*#J*#J*#
36、J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*/unsignedintReadTemperature(void)unsignedchara=0;unsignedintb=0;unsignedintt=0;Init_DS18B20();WriteOneChar(OxCC);/跳過讀序號列號的操作Wri
37、teOneChar(Ox44);/啟動溫度轉(zhuǎn)換delay(200);Init_DS18B20();WriteOneChar(OxCC);跳過讀序號列號的操作WriteOneChar(OxBE);讀取溫度寄存器等(共可讀9個寄存器)前兩個就是溫度a=ReadOneChar();低位b=ReadOneChar();高位b<<=8;t=a+b;return(t);附錄B#includevat89c51.h>#includevstdio.h>#includevintrins.h>sbitRS=P2A0;/Pin4sbitRW=P2A1;/Pin5sbitE=P2A2;/P
38、in6#defineDataP0數(shù)據(jù)端口unsignedcharTem5;unsignedcharSecondLine="unsignedcharFirstLine="unsignedchartime="/#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J
39、*#J*#J*#J*#J*#J*/*函數(shù)聲明*/#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*/voidDelayUs(unsignedcharus)/delayusunsignedcharuscnt;uscnt=us>>l;/*Crystalfrequencyin12MHz*/while(-uscnt);voidDelayMs(unsignedcharms)/delayMswhile(-ms)DelayUs(250);DelayUs(250);DelayUs(250);DelayUs(250);voidWriteCommand(unsignedcharc
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 未來世界我想象中的家園想象作文13篇范文
- 2025年食品用類似原料項目提案報告
- 員工離職工作規(guī)范處理承諾書(3篇)
- 2025年煙臺市煙臺山醫(yī)院住院醫(yī)師規(guī)范化培訓(xùn)預(yù)招生模擬試卷及答案詳解(名師系列)
- 老年產(chǎn)品細致設(shè)計承諾書(5篇)
- 企業(yè)培訓(xùn)資源庫及學(xué)習(xí)工具
- 山東省德州市校際2024-2025學(xué)年高一下學(xué)期6月聯(lián)考地理試題(解析版)
- 農(nóng)村土地互換合同協(xié)議5篇
- 行業(yè)合同范本及審核指南
- 2025廣西平果市農(nóng)業(yè)機械化服務(wù)中心城鎮(zhèn)公益性崗位人員招聘1人考前自測高頻考點模擬試題及答案詳解(必刷)
- DBJ04T 469-2023 綠色建筑工程施工質(zhì)量驗收標(biāo)準(zhǔn)
- 金屬材料與熱處理作業(yè)指導(dǎo)書
- 導(dǎo)管相關(guān)并發(fā)癥的預(yù)防及處理
- 2025年系統(tǒng)維保服務(wù)合同范本:包含半導(dǎo)體設(shè)備維護保養(yǎng)協(xié)議3篇
- 鐵路信號基礎(chǔ)繼電器詳解
- 等離子點火系統(tǒng)及暖風(fēng)器系統(tǒng)培訓(xùn)
- 2024年金華市中心醫(yī)院醫(yī)療集團(醫(yī)學(xué)中心)招聘筆試真題
- 小學(xué)生無人機教學(xué)課件
- 新課標(biāo)體育與健康教案集(水平四)
- 混凝土結(jié)構(gòu)設(shè)計原理(第五版)課后習(xí)題答案
- 金華市金東區(qū)合同制教師管理辦法
評論
0/150
提交評論