基于DS18B20的智能調(diào)溫系統(tǒng)--結(jié)題報告_第1頁
基于DS18B20的智能調(diào)溫系統(tǒng)--結(jié)題報告_第2頁
基于DS18B20的智能調(diào)溫系統(tǒng)--結(jié)題報告_第3頁
基于DS18B20的智能調(diào)溫系統(tǒng)--結(jié)題報告_第4頁
基于DS18B20的智能調(diào)溫系統(tǒng)--結(jié)題報告_第5頁
已閱讀5頁,還剩42頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、中北大學(xué)大學(xué)生創(chuàng)新創(chuàng)業(yè)練習(xí)工程結(jié)題報告工程名稱: 基于DS18B20的智能溫度調(diào)節(jié)系統(tǒng)學(xué) 院名稱蓋章: 儀器與 電子學(xué)院工程負(fù)責(zé)人:旺延中北大學(xué)教務(wù)處制隨著科技的進(jìn)步,人類物質(zhì)生活的提升,人們對自動化、智能化的要求越來越高, 各種自動化設(shè)備應(yīng)運(yùn)而生,逐漸代替耗時、耗力、效率低的人工操作,溫控系統(tǒng)便是其中 一種.在農(nóng)業(yè)、工業(yè)、生活等諸多領(lǐng)域中,人們都需要對各類設(shè)備中的溫度進(jìn)行檢測和控 制,比方熱反響爐,農(nóng)業(yè)中的蔬菜大棚,大型糧倉 .溫度限制是工業(yè)生產(chǎn)過程中經(jīng)常遇 到的過程限制,有些工藝過程對其溫度的限制效果直接影響著產(chǎn)品的質(zhì)量和產(chǎn)量,因而設(shè) 計一種較為理想的溫度限制系統(tǒng)是非常有價值的.本工程采用

2、51單片機(jī)來對溫度進(jìn)行限制,不僅具有限制方便、組態(tài)簡單和靈活性大 等優(yōu)點(diǎn),而且可以大幅度提升被控溫度的技術(shù)指標(biāo),從而能夠大大提升產(chǎn)品的質(zhì)量和數(shù)量. 使用DS18B2CB度傳感器,由于它具有微型化、低功耗、高性能、抗十?dāng)n水平強(qiáng)、易配微 處理器等優(yōu)點(diǎn),可以實現(xiàn)多點(diǎn)溫度檢測,通過檢測環(huán)境溫度,傳送給單片機(jī),單片機(jī)通過 分析、比較,發(fā)出相應(yīng)的指令,進(jìn)行報警 并做相關(guān)處理;當(dāng)環(huán)境溫度高于預(yù)設(shè)值時,開 啟制冷設(shè)備風(fēng)扇模擬,同理,環(huán)境溫度低于預(yù)設(shè)值時,開啟制熱設(shè)備模擬,當(dāng)溫度一段時間仍為到達(dá)理想值,可以加大功率.用申口將采集到的溫度數(shù)據(jù)實時發(fā)送至上位機(jī)進(jìn)行實時監(jiān)控.本工程不僅可以應(yīng)用到實際中提升生產(chǎn)效率,減

3、少損失、增加產(chǎn)量,更重要的是可以 拓展我們大學(xué)生的知識領(lǐng)域,增強(qiáng)我們的動手水平,將所學(xué)到的知識運(yùn)用到實際中,更好的到達(dá)書本知識與實際生活接軌,增強(qiáng)大學(xué)生的個人素質(zhì)!關(guān)鍵詞: 單片機(jī);溫度限制系統(tǒng);DS18B2如度傳感器目錄1引言 41.1溫度限制系統(tǒng)設(shè)計的背景、開展歷史及意義 41.2溫度限制系統(tǒng)的目的 41.3溫度限制系統(tǒng)完成的功能 42 總體設(shè)計方案 52.1方案一 52.2方案二 53 DS18B20溫度傳感器簡介 93.1溫度傳感器的歷史及簡介 93.2 DS18B20的工作原理 93.2.1 DS18B20 工作時序 93.2.2 ROM操作命令 113.3 DS18B20的測溫原理

4、 113.3.1 DS18B20 的測溫原理: 113.3.2 DS18B20的測溫流程 124單片機(jī)接口設(shè)計 134.1設(shè)計原那么 134.2引腳連接 134.2.1 晶振電路 134.2.2 申口引腳 134.2.3其它引腳 135系統(tǒng)整體設(shè)計 145.1系統(tǒng)硬件電路設(shè)計 145.1.1 主板電路設(shè)計 145.1.2各局部電路 145.2系統(tǒng)軟件設(shè)計 165.2.1 系統(tǒng)軟件設(shè)計整體思路 165.2.2系統(tǒng)程序流圖 165.3調(diào)試 206總結(jié) 21附錄 20參考文獻(xiàn) 391引言1.1溫度限制系統(tǒng)設(shè)計的背景、開展歷史及意義溫度是生產(chǎn)過程和科學(xué)實驗中普遍而且重要的物理參數(shù),隨著社會的開展,科技

5、的進(jìn) 步,以及測溫儀器在各個領(lǐng)域的應(yīng)用,智能化已是現(xiàn)代溫度限制系統(tǒng)開展的主流方向.特 別是近年來,溫度限制系統(tǒng)已應(yīng)用到人們生活的各個方面,但溫度限制一直是一個未開發(fā) 的領(lǐng)域,卻乂是與人們息息相關(guān)的一個實際問題.針對這種實際情況,設(shè)計一個溫度限制 系統(tǒng),具有廣泛的應(yīng)用前景與實際意義.溫度是一個重要的物理量,它反映了物體冷熱的程度,與自然界中的各種物理和化學(xué) 過程相聯(lián)系.在工、農(nóng)業(yè)生產(chǎn)和日常生活中,各個環(huán)節(jié)都與溫度緊密相聯(lián),溫度的準(zhǔn)確監(jiān) 測及限制占據(jù)著極其重要地位.比方,發(fā)電廠鍋爐的溫度必須限制在一定的范圍之內(nèi);許多化學(xué)反響的工藝過程必須在適當(dāng)?shù)臏囟认虏拍苷_M(jìn)行等.沒有適宜的溫度環(huán)境,許多 電子

6、設(shè)備就不能正常工作,糧倉的儲糧就會變質(zhì)霉?fàn)€,灑類的品質(zhì)就沒有保證.可見,溫 度的測量和限制是非常重要的.隨著電子技術(shù)和微型計算機(jī)的迅速開展,單片機(jī)在電子產(chǎn)品中的應(yīng)用已經(jīng)越來越廣 泛.利用單片機(jī)對溫度進(jìn)行限制的技術(shù)也隨之而生,并日益開展和完善,且越來越顯示出 它的優(yōu)越性.1.2溫度限制系統(tǒng)的目的本設(shè)計的內(nèi)容是溫度測試限制系統(tǒng),限制對象是溫度.溫度限制在日常生活及工業(yè)領(lǐng) 域應(yīng)用相當(dāng)廣泛,比方溫室、水池、發(fā)酵缸、電源等場所的溫度限制.而以往溫度限制是 由人工完成的而且不夠重視,其實在很多場所溫度都需要監(jiān)控以預(yù)防發(fā)生意外.針對此問 題,本系統(tǒng)設(shè)計的目的是實現(xiàn)一種可連續(xù)高精度調(diào)溫的溫度限制系統(tǒng),它應(yīng)用廣

7、泛,功能 強(qiáng)大,小巧美觀,便于攜帶,是一款既實用乂廉價的限制系統(tǒng).1.3溫度限制系統(tǒng)完成的功能本設(shè)計是對溫度進(jìn)行實時監(jiān)測與限制,設(shè)計的溫度限制系統(tǒng)實現(xiàn)了根本的溫度限制功 能:通過檢測環(huán)境溫度,傳送給單片機(jī),單片機(jī)通過分析、比較,發(fā)出相應(yīng)的指令,進(jìn)行 報警 并做相關(guān)處理;當(dāng)環(huán)境溫度高于預(yù)設(shè)值時,開啟制冷設(shè)備風(fēng)扇模擬,同理,環(huán)境溫度低于預(yù)設(shè)值時,開啟制熱設(shè)備模擬,當(dāng)溫度一段時間仍為到達(dá)理想值,可以加大 功率.液晶LCD1602即時顯示溫度,精確到小數(shù)點(diǎn)一位.2總體設(shè)計方案 2.1方案一測溫電路的設(shè)計,可以使用熱敏電阻之類的器件利用其感溫效應(yīng),在將隨被測溫度變化的電壓或電流采集過來,進(jìn)行 A/D轉(zhuǎn)換

8、后,就可以用單片機(jī)進(jìn)行數(shù)據(jù)的處理,在顯示電 路上,就可以將被測溫度顯示出來,這種設(shè)計需要用到A/D轉(zhuǎn)換電路,感溫電路比較麻煩.2.2方案二考慮使用溫度傳感器,結(jié)合單片機(jī)電路設(shè)計,采用一只DS18B2瑚度傳感器,直接讀取被測溫度值,之后進(jìn)行轉(zhuǎn)換,依次完成設(shè)計要求.比較以上兩種方案,很容易看出,采用方案二,電路比較簡單,軟件設(shè)計容易實現(xiàn), 故實際設(shè)計中擬采用方案二.在本系統(tǒng)的電路設(shè)計方框圖如圖 1.1所示,它由三局部組成:限制局部主芯片采用 單片機(jī)AT89S52顯示局部采用液晶lcd1602實現(xiàn)溫度顯示;溫度采集局部采用DS18B2如度傳感器.LED顯示AT89S52DS18B20加熱O 降溫單片

9、機(jī)5 指示燈圖21溫度計電路總體設(shè)計方案1. 限制局部單片機(jī)AT89S52具有低電壓供電和體積小等特點(diǎn),四個端口只需要兩個口就能滿足電 路系統(tǒng)的設(shè)計需要,很適合便攜手持式產(chǎn)品的設(shè)計使用,系統(tǒng)應(yīng)用三節(jié)電池供電.2. 顯示局部顯示電路采用lcd1602液晶顯示.3. 溫度采集局部DS18B2 0溫度傳感器是美國DALLAS*導(dǎo)體公司最新推出的一種改進(jìn)型智能溫度傳感 器,與傳統(tǒng)的熱敏電阻等測溫元件相比,它能直接讀出被測溫.這一局部主要完成對溫度信號的采集和轉(zhuǎn)換工作,由DS18B20數(shù)字溫度傳感器及其與單片機(jī)的接口局部組成. 數(shù)字 溫度傳感器DS18B20把采集到的溫度通過數(shù)據(jù)引腳傳到單片機(jī)的 P2.

10、0 口,單片機(jī)接受溫 度并存儲.此局部只用到DS18B20和單片機(jī),硬件很簡單1DS18B20的性能特點(diǎn)如下9:1獨(dú)特的單線接口僅需要一個端口引腳進(jìn)行通信;2多個DS18B2河以并聯(lián)在惟一的三線上,實現(xiàn)多點(diǎn)組網(wǎng)功能;3無須外部器件;4可通過數(shù)據(jù)線供電,電壓范圍為 3.05.5V;5零待機(jī)功耗;6溫度以3位數(shù)字顯示;7用戶可定義報警設(shè)置;8報警搜索命令識別并標(biāo)志超過程序限定溫度溫度報警條件的器件;9負(fù)電壓特性,電源極性接反時,溫度計不會因發(fā)熱而燒毀,但不能正常工作.2 DS18B20的內(nèi)部結(jié)構(gòu)DS18B2咪用3腳PA 35封裝,如圖1.2所示;DS18B20勺內(nèi)部結(jié)構(gòu),如圖3所 示.引地數(shù)據(jù)線可

11、選圖 2 - 2 DS18B20 封裝3 DS18B20內(nèi)部結(jié)構(gòu)主要由四局部組成5:MSB164位光刻ROM開始8位是產(chǎn)品類型的編號,接著是每個器件的惟一的序號,共 有48位,最后8位是前56位的CR鍛驗碼,這也是多個DS18B2河以采用一線進(jìn)行通信 的原因的.64位閃速ROM勺結(jié)構(gòu)如下.8b檢驗CRC48b序列號8b工廠代碼10H表2 - 1 ROM吉構(gòu)LSB MSBLSB MSBLSB存儲器和限制邏輯 I1溫度傳感器暫存器 一*1上限觸發(fā)f H圖2 3 DS18B20內(nèi)部結(jié)構(gòu)2非揮發(fā)的溫度報警觸發(fā)器TH和TL,可通過軟件寫入用戶報警上下限值.3高速暫存存儲,可以設(shè)置 DS18B20S度轉(zhuǎn)換

12、的精度.DS18B2如度傳感器的內(nèi)部存儲器還包括一個高速暫存RAMK一個非易失性的可電擦除的E2PRAM高速暫存RAM勺結(jié)構(gòu)為8字節(jié)的存儲器,結(jié)構(gòu)如圖1.3所示.頭2個字節(jié)包 含測得的溫度信息,第3和第4字節(jié)TH和TL的拷貝,是易失的,每次上電復(fù)位時被刷新. 第5個字節(jié),為配置存放器,它的內(nèi)容用丁確定溫度值的數(shù)字轉(zhuǎn)換分辨率.DS18B2直作時存放器中的分辨率轉(zhuǎn)換為相應(yīng)精度的溫度數(shù)值. 它的內(nèi)部存儲器結(jié)構(gòu)和字節(jié)定義如圖1.3 所示.低5位一直為1, TM是工作模式位,用丁設(shè)置DS18B20S工作模式還是在測試模式.表2 2 DS18B20內(nèi)部存儲器結(jié)構(gòu)Byte0溫度測量值LSB 50HByte1

13、溫度測量值 MSB 50HE2PROMByte2TH高溫存放器TH高溫存放器Byte3TL低溫存放器TL低溫存放器Byte4配位存放器配位存放器Byte5預(yù)留FFHByte6預(yù)留0CHByte7預(yù)留IOHByte8循環(huán)冗余碼校驗CRC2非揮發(fā)的溫度報警觸發(fā)器TH和TL,可通過軟件寫入用戶報警上下限值.3高速暫存存儲,可以設(shè)置 DS18B20S度轉(zhuǎn)換的精度.DS18B2W廠時該位被設(shè)置為0,用戶要去改動,R1和R0決定溫度轉(zhuǎn)換的精度位數(shù),來設(shè) 置分辨率,如圖1.4.圖2 3 DS18B20字節(jié)定義TMR1R011111由表1.1可見,分辨率越高,所需要的溫度數(shù)據(jù)轉(zhuǎn)換時間越長.因此,在實際應(yīng)用中

14、要將分辨率和轉(zhuǎn)換時間權(quán)衡考慮.高速暫存RAMM勺第6、7、8字節(jié)保存未用,表現(xiàn)為全邏輯1.第9字節(jié)讀出前面所有 8字節(jié)的CRCB,可用來檢驗數(shù)據(jù),從而保證通信數(shù)據(jù)的正確性.當(dāng)DS18B2O收到溫度轉(zhuǎn)換命令后,開始啟動轉(zhuǎn)換.轉(zhuǎn)換完成后的溫度值就以16位帶符號擴(kuò)展的二進(jìn)制補(bǔ)碼形式存儲在高速暫存存儲器的第1、2字節(jié).單片機(jī)可以通過單線接口讀出該數(shù)據(jù),讀數(shù)據(jù)時低位在先,高位在后,數(shù)據(jù)格式以0.0625 C/ LSB形式表示.當(dāng)符號位S= 0時,表示測得的溫度值為正值,可以直接將二進(jìn)制位轉(zhuǎn)換為十進(jìn)制; 當(dāng)符號位S= 1時,表示測得的溫度值為負(fù)值,要先將補(bǔ)碼變成原碼,再計算十進(jìn)制數(shù)值. 表1.2是一局部溫

15、度值對應(yīng)的二進(jìn)制溫度數(shù)據(jù) 回.表2 4 DS18B20溫度轉(zhuǎn)換時間表R1R0分辨率/位溫度最大轉(zhuǎn)向時間/ms00993.750110187.510113751112750表2 5 一局部溫度對應(yīng)值表溫度/ c二進(jìn)制表小十六進(jìn)制表小+1250000 0111 1101 000007D0H+850000 0101 0101 00000550H+25.06250000 0001 1001 00000191H+10.1250000 0000 1010 000100A2H+0.50000 0000 0000 00100008H00000 0000 0000 10000000H-0.51111 1111

16、1111 0000FFF8H續(xù)表2 5-10.1251111 1111 0101 1110FF5EH-25.06251111 1110 0110 1111FE6FH-551111 1100 1001 0000FC90H4) CRC的產(chǎn)生中北大學(xué)儀器與電子學(xué)院基金工程結(jié)題報告在64 b ROM的最高有效字節(jié)中存儲有循環(huán)冗余校驗碼CRC.主機(jī)根據(jù)ROM勺前56 位來計算CRCB,并和存入DS18B2M的CRCB做比較,以判斷主機(jī)收到的 RO吸據(jù)是否 正確.另外,由丁 DS18B20I線通信功能是分時完成的,它有嚴(yán)格的時隙概念,因此讀寫 時序很重要.系統(tǒng)對 DS18B20勺各種操作按協(xié)議進(jìn)行.操作協(xié)

17、議為:初使化DS18B20發(fā)復(fù)位脈沖t發(fā)ROMft能命令t發(fā)存儲器操作命令t處理數(shù)3 DS18B2 0溫度傳感器簡介3.1溫度傳感器的歷史及簡介溫度的測量是從金屆物質(zhì)的熱脹冷縮開始.水銀溫度計至今仍是各種溫度測量的計 量標(biāo)準(zhǔn).可是它的缺點(diǎn)是只能近距離觀測,而且水銀有蠹,玻璃管易碎.代替水銀的有灑 精溫度計和金屆簧片溫度計,它們雖然沒有蠹性,但測量精度很低,只能作為一個概略指 示.不過在居民住宅中使用已可滿足要求.在工業(yè)生產(chǎn)和實驗研究中為了配合遠(yuǎn)傳儀表指 示,出現(xiàn)了許多不同的溫度檢測方法,常用的有電阻式、熱電偶式、PN結(jié)型、輻射型、光纖式及石英諧振型等.它們都是基丁溫度變化引起其物理參數(shù)如電阻值

18、,熱電勢等的變化的原理.隨著大規(guī)模集成電路工藝的提升,出現(xiàn)了多種集成的數(shù)字化溫度傳感器.3.2 DS18B20的工作原理3.2.1 DS18B20工作時序根據(jù)DS18B20勺通訊協(xié)議,主機(jī)限制 DS18B2洗成溫度轉(zhuǎn)換必須經(jīng)過三個步驟:1. 每一次讀寫之前都必須要對 DS18B20行復(fù)位;2. 復(fù)位成功后發(fā)送一條ROM旨令;3. 最后發(fā)送RAM旨令,這樣才能對DS18B20行預(yù)定的操作.復(fù)位要求主CPLU務(wù)數(shù)據(jù)線下拉500微秒,然后釋放,DS18B20攵到信號后等待1560 微秒左右后發(fā)出60240微秒的存在低脈沖,主CPLB到此信號表示復(fù)位成功.其工作時 序包括初始化時序、寫時序和讀時序,具

19、體工作方法如圖2.1 , 2.2 , 2.3所示.1初始化時序S_81 次等待 15-60主機(jī)復(fù)位脈沖最小480US -主機(jī) 最小480IP: T響應(yīng)脈kT*沖 60240中北大學(xué)儀器與電子學(xué)院基金工程結(jié)題報告圖3- 1初始化時序總線上的所有傳輸過程都是以初始化開始的,主機(jī)響應(yīng)應(yīng)答脈沖.應(yīng)答脈沖使主機(jī)知 道,總線上有從機(jī)設(shè)備,且準(zhǔn)備就緒.主機(jī)輸出低電平,保持低電平時間至少480us,以產(chǎn)生復(fù)位脈沖.接著主機(jī)釋放總線,4.7KQ上拉電阻將總線拉高,延時1560us,并進(jìn)入 接受模式,以產(chǎn)生低電平應(yīng)答脈沖,假設(shè)為低電平,再延時480us12.主機(jī)寫0時序主機(jī)寫1時序F版樣 1545J S (2)

20、寫時序JL1匚&削采T樣 1545 S*圖3-2寫時序?qū)憰r序包括寫0時序和寫1時序.所有寫時序至少需要60us,且在2次獨(dú)立的寫時序 之間至少需要1us的恢復(fù)時間,都是以總線拉低開始.寫 1時序,主機(jī)輸出低電平,延時 2us,然后釋放總線,延時60us.寫0時序,主機(jī)輸出低電平,延時60us,然后釋放總線, 延時 2us8.(3) 讀時序主機(jī)寫0時序主機(jī)寫1時序圖3 - 3讀時序總線器件僅在主機(jī)發(fā)出讀時序是,才向主機(jī)傳輸數(shù)據(jù),所以,在主機(jī)發(fā)出讀數(shù)據(jù)命令后,必須馬上產(chǎn)生讀時序,以便從機(jī)能夠傳輸數(shù)據(jù).所有讀時序至少需要 60us,且在2次 獨(dú)立的讀時序之間至少需要1us的恢復(fù)時間.每個讀時序都由主

21、機(jī)發(fā)起,至少拉低總線1us 主機(jī)在讀時序期間必須釋放總線,并且在時序起始后的 15us之內(nèi)采樣總線狀態(tài).主機(jī)輸出41 低電平延時2us,然后主機(jī)轉(zhuǎn)入輸入模式延時12us,然后讀取總線當(dāng)前電平,然后延時50us3.2.2 ROM操作命令當(dāng)主機(jī)收到DSI8B20的響應(yīng)信號后,便可以發(fā)出ROM作命令之一,這些命令如表2.2 : ROM操作命令.3.3 DS18B20的測溫原理3.3.1 DS18B20的測溫原理:每一片DSI8B20在其RO帕都存有其唯一的48位序列號,在出廠前已寫入片內(nèi)RO. 主機(jī)在進(jìn)入操作程序前必須用讀 ROM(33H令將該DSI8B20的序列號讀出.程序可以先跳過 ROM啟動所

22、有DSI8B20進(jìn)行溫度變換,之后通過匹配 ROM再逐一 地讀回每個DSI8B20的溫度數(shù)據(jù).DS18B20勺測溫原理如圖2.4所示,圖中低溫度系數(shù)晶振的振蕩頻率受溫度的影響很 小,用丁產(chǎn)生固定頻率的脈沖信號送給減法計數(shù)器1,高溫度系數(shù)晶振隨溫度變化其震蕩頻率明顯改變,所產(chǎn)生的信號作為減法計數(shù)器2的脈沖輸入,圖中還隱含著計數(shù)門,當(dāng)計數(shù)門翻開時,DS18B20就對低溫度系數(shù)振蕩器產(chǎn)生的時鐘脈沖后進(jìn)行計數(shù),進(jìn)而完成溫度 測量.計數(shù)門的開啟時間由高溫度系數(shù)振蕩器來決定,每次測量前,首先將 -55 C所對應(yīng) 的基數(shù)分別置入減法計數(shù)器1和溫度存放器中,減法計數(shù)器1和溫度存放器被預(yù)置在-55 C 所對應(yīng)的

23、一個基數(shù)值.減法計數(shù)器1對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進(jìn)行減法計數(shù),當(dāng) 減法計數(shù)器1的預(yù)置值減到0時溫度存放器的值將加1,減法計數(shù)器1的預(yù)置將重新被裝 入,減法計數(shù)器1重新開始對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進(jìn)行計數(shù),如此循環(huán)直到減 法計數(shù)器2計數(shù)到0時,停止溫度存放器值的累加,此時溫度存放器中的數(shù)值即為所測溫 度.圖2.3中的斜率累加器用丁補(bǔ)償和修正測溫過程中的非線性,其輸出用丁修正減法計 數(shù)器的預(yù)置值,只要計數(shù)門仍未關(guān)閉就重復(fù)上述過程,直至溫度存放器值到達(dá)被測溫度值.告警搜索0ECH執(zhí)行后,只有溫度超過設(shè)定值上限或者下限的片子才做續(xù)表3- 1告警搜索0ECH 執(zhí)行后,只有溫度超過設(shè)定值上限或

24、者下限的片子才做指令約定代碼功能讀ROM33H讀DS18B20 ROMP的編碼符合ROM155H發(fā)出此命令之后,接著發(fā)出64位ROMS碼,訪問單線總 線上與該編碼相對應(yīng)的 DS18B20使之作出響應(yīng),為下一 步對該DS18B20勺讀寫作準(zhǔn)備搜索ROM1 0F0H用丁確定掛接在同一總線上DS18B20勺個數(shù)和識別64位ROMft址,為操作各器件作好準(zhǔn)備跳過ROM1 0CCH忽略64位RO觀址,直接向DS18B20溫度變換命令, 適用丁單片工作.命令出響應(yīng)溫度變換44H啟動DS18B2C行溫度轉(zhuǎn)換,轉(zhuǎn)換時間最長為500MS結(jié)果存入內(nèi)部9字節(jié)RA讀暫存器0BEH讀內(nèi)部RA 9字節(jié)的內(nèi)容寫暫存器4EH

25、發(fā)出向內(nèi)部RAM勺第3, 4 W寫上、下限溫度數(shù)據(jù)命令, 緊跟讀命令之后,是傳送兩字節(jié)的數(shù)據(jù)復(fù)制暫存器48H將E2PRA咖第3, 4 W內(nèi)容復(fù)制到 E2PRAIM重調(diào)E2PRAM4 0BBH將E2PRA咖內(nèi)容恢復(fù)到RAMfr的第3, 4字節(jié)讀供電 方式0B4H讀DS18B20勺供電模式,寄生供電時 DS18B2破送“0, 外接電源供電DS18B2CK送“1另外,由丁 DS18B20I線通信功能是分時完成的,他有嚴(yán)格的時隙概念,因此讀寫時 序很重要.系統(tǒng)對DS18B20勺各種操作必須按協(xié)議進(jìn)行.操作協(xié)議為:初始化DS18B20發(fā) 復(fù)位脈沖t發(fā)ROMft能命令t發(fā)存儲器操作命令t處理數(shù)據(jù).圖3-4

26、測溫原理內(nèi)部裝置3.3.2 DS18B20的測溫流程圖3 - 5 DS18B20測溫流程中北大學(xué)儀器與電子學(xué)院基金工程結(jié)題報告4單片機(jī)接口設(shè)計4.1設(shè)計原那么DS18B2河以采用兩種方式供電,一種是采用電源供電方式,此時DS18B2附1腳接地,2腳作為信號線,3腳接電源.另一種是寄生電源供電方式,如圖 3.1所示單片機(jī)端 口接單線總線,為保證在有效的 DS18B20時鐘周期內(nèi)提供足夠的電流,可用一個MOSFET管來完成對總線的上拉.本設(shè)計采用電源供電方式,P1.1 口接單線總線為保證在有效的DS18B20寸鐘周期內(nèi)提供足夠的電流,可用一個 MOSFEP 89S52的P2.0來完成對總線 的上拉

27、.當(dāng)DS18B2CM丁寫存儲器操作和溫度 A/D變換操作時,總線上必須有強(qiáng)的上拉, 上拉開啟時間最大為10 p s.采用寄生電源供電方式是 VDd和GNDS均接地.由丁單線制 只有一根線,因此發(fā)送接收口必須是三狀態(tài)的.主機(jī)限制DS18B2洗成溫度轉(zhuǎn)換必須經(jīng)過3個步驟:初始化;ROMS作指令;存儲器操作指令.4.2引腳連接4.2.1 晶振電路單片機(jī)XIAL1和XIAL2分別接30PF的電容,中間再并個12MHZ的晶振,形成單片 機(jī)的晶振電路.4.2.2申口引腳P0 口接9個2.2K的排阻然后接到顯示電路上.P2.0溫度傳感器DS18B20如圖3.1 所示.GNDVCC圖4- 1 DS18B20與

28、單片機(jī)的接口電路P1 口連接液晶的數(shù)據(jù)傳輸引腳.P2 口中P2.5接蜂鳴器電路,其他引腳懸:空P3 口中P3.4、P3.6接液晶的使能端.4.2.3其它引腳ALE弓I腳懸空,復(fù)位引腳接到復(fù)位電路、VCC接電源、VSS接地、EA接電源中北大學(xué)儀器與電子學(xué)院基金工程結(jié)題報告5系統(tǒng)整體設(shè)計 5.1系統(tǒng)硬件電路設(shè)計5.1.1主板電路設(shè)計單片機(jī)的P2.0接DS18B20勺2號引腳,P1 口送液晶顯示,P2.1、P2.2限制加熱器和 電風(fēng)扇.如附錄2.5.1.2各局部電路(1) 顯示電路顯示電路采用了液晶lcd1602顯示,節(jié)約了單片機(jī)的輸出端口,便丁程序的編寫_ 1 6000000000000000 1

29、6R 25 )jr1令o圖5- 1顯示電路圖(2) 單片機(jī)電路UIArassMmi 2P12 3Pll 4P14 5pi? ePl fl 7P17 SRS I 9P3fi0P5111PJ112pnPM 1PSS15PM 16PS717IE】9pifl i20P1OvccP11POOP12PO1P13PO2P14PD3P15PQ4P16PD5prPO6RESETPO,P3OEAP31ALEP32PSENP33pPMP16P3*P25P36P24P37XTALlXTAL2PllvssP20齡偵38P0137PQZ36P0335MM34PO?33PO632rtr3】30_ 29vcc2&P1727P

30、tf16P3325P2421m23P2222Ml21P20圖5-2單片機(jī)電路引腳圖DS18B20溫度傳感器電路圖5-3溫度傳感器電路引腳圖(4)晶振限制電路30pFTI1 Y130pF 工 12MHZ圖5-5晶振限制電路圖復(fù)位電路S1 RJiSHT圖5-6復(fù)位電路圖5.2系統(tǒng)軟件設(shè)計5.2.1系統(tǒng)軟件設(shè)計整體思路一個應(yīng)用系統(tǒng)要完成各項功能,首先必須有較完善的硬件作保證.同時還必須得到相 應(yīng)設(shè)計合理的軟件的支持,尤其是微機(jī)應(yīng)用高速開展的今天,許多由硬件完成的工作,都 可通過軟件編程而代替.甚至有些必須采用很復(fù)雜的硬件電路才能完成的工作,用軟件編 程有時會變得很簡單,如數(shù)字濾波,信號處理等.因此充

31、分利用其內(nèi)部豐富的硬件資源和 軟件資源,采用與S51系列單片機(jī)相對應(yīng)的c語言和結(jié)構(gòu)化程序設(shè)計方法進(jìn)行軟件編程.程序設(shè)計語言有三種:機(jī)器語言、匯編語言和高級語言.機(jī)器語言是機(jī)器唯一能“懂 的語言,用匯編語言或高級語言編寫的程序稱為源程序最終都必須譯成機(jī)器語言的 程序成為目標(biāo)程序,計算機(jī)才能“看懂,然后逐一執(zhí)行.高級語言是面向問題和計算過程的語言,它可通過丁各種不同的計算機(jī),用戶編程時 不必仔細(xì)了解所用的計算機(jī)的具體性能與指令系統(tǒng),而且語句的功能強(qiáng),常常一個語句已 相當(dāng)丁很多條計算機(jī)指令,丁是用高級語言編制程序的速度比較快,也便丁學(xué)習(xí)和交流, 但是本系統(tǒng)卻選用了匯編語言.原因在丁,本系統(tǒng)是編制程序

32、工作量不大、規(guī)模較小的單 片機(jī)微限制系統(tǒng),使用匯編語言可以不用像高級語言那樣占用較多的存儲空間,適合丁存 儲容量較小的系統(tǒng).同時,本系統(tǒng)對位處理要求很高,需要解決大量的邏輯限制問題.MCS 51指令系統(tǒng)的指令長度較短,它在存儲空間和執(zhí)行時間方面具有較高的效率, 編成的程序占用內(nèi)存單元少,執(zhí)行也非常的快捷,與本系統(tǒng)的應(yīng)用要求很適合.而且MCS 51指令系統(tǒng)有豐富的位操作或稱位處理指令,可以形成一個相當(dāng)完整的位操作指令 子集,這是MCS51指令系統(tǒng)主要的優(yōu)點(diǎn)之一.對丁要求反響靈敏與限制及時的工控、 檢測等實時限制系統(tǒng)以及要求體積小、系統(tǒng)小的許多“電腦化產(chǎn)品,可以充分表達(dá)出匯 編語言簡明、整潔、執(zhí)行

33、時間短和易丁使用的特點(diǎn).本裝置的軟件包括主程序、讀出溫度子程序、復(fù)位應(yīng)答子程序、寫入子程序、以及有 關(guān)DS18B2的程序初始化子程序、寫程序和讀程序5.2.2系統(tǒng)程序流圖系統(tǒng)程序主要包括主程序,讀出溫度子程序,復(fù)位應(yīng)答子程序,寫入子程序等.1主程序主程序的主要功能是負(fù)責(zé)溫度的實時顯示、 讀出并處理DS18B20勺測量的當(dāng)前溫度值,溫度測量每1s進(jìn)行一次.這樣可以在一秒之內(nèi)測量一次被測溫度,其程序流程見圖19所示.通過調(diào)用讀溫度子程序把存入內(nèi)存儲中的整數(shù)局部與小數(shù)局局部開存放在不同的兩個 單元中,然后通過調(diào)用顯示子程序顯示出來圖5-7主程序流程圖讀溫度命令子程序圖5-8讀出溫度子程序2讀出溫度子

34、程序讀出溫度子程序的主要功能是讀出 RA的9字節(jié),在讀出時需進(jìn)行CRCK驗,校驗 有錯時不進(jìn)行溫度數(shù)據(jù)的改寫.12位數(shù),小數(shù)4位,整數(shù)7位,DS18B20的各個命令對時序的要求特別嚴(yán)格,所以必須根據(jù)所要求的時序才能到達(dá)預(yù)期的 目的,同時,要注意讀進(jìn)來的是高位在后低位在前,共有 還有一位符號位.3復(fù)位、應(yīng)答子程序中北大學(xué)儀器與電子學(xué)院基金工程結(jié)題報告圖5-10寫入子程序4寫入子程序圖5-9復(fù)位、應(yīng)答子程序中北大學(xué)儀器與電子學(xué)院基金工程結(jié)題報告5系統(tǒng)總的流程圖圖5-11系統(tǒng)總的流程圖5.3調(diào)試主程序的功能是:啟動DS18B20測量溫度,將測量值與給定值進(jìn)行比較,假設(shè)測得溫度 小丁設(shè)定值,那么進(jìn)入加

35、熱階段,這期間繼續(xù)對溫度進(jìn)行監(jiān)測,直到溫度在設(shè)定范圍內(nèi),等 待下一次的啟動命令.當(dāng)測得溫度大丁設(shè)定值,那么進(jìn)入降溫階段,這期間繼續(xù)對溫度進(jìn)行中北大學(xué)儀器與電子學(xué)院基金工程結(jié)題報告監(jiān)測,直到溫度在設(shè)定范圍內(nèi),關(guān)閉風(fēng)扇,等待下一次的啟動命令.參數(shù)測試:實際溫度v14.319.222 217,818.5測芾結(jié)果V14.72.121.918.619. 16總結(jié)本設(shè)計使用的溫度限制器結(jié)構(gòu)簡單、測溫準(zhǔn)確,具有一定的實際應(yīng)用價值.該智能溫 度限制器只是DS18B20&溫度限制領(lǐng)域的一個簡單實例,還有許多需要完善的地方,例如 可以將測得的溫度通過單片機(jī)與通訊模塊相連接,以 短消息的方式發(fā)送給用戶,使用 戶能夠

36、隨時對溫度進(jìn)行監(jiān)控.此外,還能廣泛地應(yīng)用丁其他一些工業(yè)生產(chǎn)領(lǐng)域,如建筑, 倉儲等行業(yè).本溫度限制系統(tǒng)可以應(yīng)用丁多種場合,像的溫度、育嬰房的溫度、水溫的控 制.用戶可靈活選擇本設(shè)計的用途,有很強(qiáng)的實用價值.中北大學(xué)儀器與電子學(xué)院基金工程結(jié)題報告附錄程序源代碼:#include #include #define uchar unsigned char#define uint unsigned intsbit ds=P2A2;溫度傳感器信號線sbit beep=P2A1;蜂鳴器sbit lcden=P3A6;sbit lcdrs=P3A4;uint temp=0;float f_temp=0.0;uint warn_l1=180;uint warn_l2=170;uint warn_h1=270;uint warn_h2=260;sbit led0=P0A3;sbit led1=P0A7;/*延時函數(shù) */void delay(uint z)(uint x,y;for(x=z;x0;x-)for(y=110;y0;y-);/*18b20*/*void dsreset(void)(uint i;ds=0;i

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論