基于單片機(jī)的游泳池保溫控制器的設(shè)計(jì)_第1頁(yè)
基于單片機(jī)的游泳池保溫控制器的設(shè)計(jì)_第2頁(yè)
基于單片機(jī)的游泳池保溫控制器的設(shè)計(jì)_第3頁(yè)
基于單片機(jī)的游泳池保溫控制器的設(shè)計(jì)_第4頁(yè)
基于單片機(jī)的游泳池保溫控制器的設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩17頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

目錄第1章緒論111溫度控制系統(tǒng)設(shè)計(jì)的背景、發(fā)展歷史及意義112本設(shè)計(jì)的應(yīng)用及意義113游泳池保溫控制系統(tǒng)完成的功能1第2章系統(tǒng)總體方案321方案一用熱敏電阻采集溫度數(shù)據(jù)322方案二采用DS18B20采集溫度數(shù)據(jù)3第3章DS18B20溫度傳感器簡(jiǎn)介831溫度傳感器的歷史及簡(jiǎn)介832DS18B20的工作原理8321DS18B20工作時(shí)序833DS18B20的測(cè)溫原理10331DS18B20的測(cè)溫原理10332DS18B20的測(cè)溫流程12第4章單片機(jī)接口設(shè)計(jì)1341設(shè)計(jì)原則1342引腳連接13421晶振電路13422串口引腳13423其它引腳14第5章系統(tǒng)整體設(shè)計(jì)1551系統(tǒng)硬件電路設(shè)計(jì)15511主板電路設(shè)計(jì)15512各部分電路15參考文獻(xiàn)19致謝19第1章緒論11溫度控制系統(tǒng)設(shè)計(jì)的背景、發(fā)展歷史及意義隨著社會(huì)的發(fā)展,科技的進(jìn)步,以及測(cè)溫儀器在各個(gè)領(lǐng)域的應(yīng)用,智能化已是現(xiàn)代溫度控制系統(tǒng)發(fā)展的主流方向。特別是近年來,溫度控制系統(tǒng)已應(yīng)用到人們生活的各個(gè)方面,但溫度控制一直是一個(gè)未開發(fā)的領(lǐng)域,卻又是與人們息息相關(guān)的一個(gè)實(shí)際問題。針對(duì)這種實(shí)際情況,設(shè)計(jì)一個(gè)溫度控制系統(tǒng),具有廣泛的應(yīng)用前景與實(shí)際意義。溫度是科學(xué)技術(shù)中最基本的物理量之一,物理、化學(xué)、生物等學(xué)科都離不開溫度。在工業(yè)生產(chǎn)和實(shí)驗(yàn)研究中,像電力、化工、石油、冶金、航空航天、機(jī)械制造、糧食存儲(chǔ)、酒類生產(chǎn)等領(lǐng)域內(nèi),溫度常常是表征對(duì)象和過程狀態(tài)的最重要的參數(shù)之一。比如,發(fā)電廠鍋爐的溫度必須控制在一定的范圍之內(nèi);許多化學(xué)反應(yīng)的工藝過程必須在適當(dāng)?shù)臏囟认虏拍苷_M(jìn)行;煉油過程中,原油必須在不同的溫度和壓力條件下進(jìn)行分餾才能得到汽油、柴油、煤油等產(chǎn)品。沒有合適的溫度環(huán)境,許多電子設(shè)備就不能正常工作,糧倉(cāng)的儲(chǔ)糧就會(huì)變質(zhì)霉?fàn)€,酒類的品質(zhì)就沒有保障。因此,各行各業(yè)對(duì)溫度控制的要求都越來越高??梢?,溫度的測(cè)量和控制是非常重要的。單片機(jī)在電子產(chǎn)品中的應(yīng)用已經(jīng)越來越廣泛,在很多的電子產(chǎn)品中也用到了溫度檢測(cè)和溫度控制。隨著溫度控制器應(yīng)用范圍的日益廣泛和多樣,各種適用于不同場(chǎng)合的智能溫度控制器應(yīng)運(yùn)而生。近年來,人類的生產(chǎn)和生活方式發(fā)生了巨大的變化,產(chǎn)生這一變化的重要原因就是計(jì)算機(jī)技術(shù)的飛速發(fā)展。第一臺(tái)計(jì)算機(jī)誕生至今僅僅幾十年的時(shí)間,計(jì)算機(jī)的性能已經(jīng)大大提高,價(jià)格不斷的下降,從而使之可以迅速而廣泛地應(yīng)用于人類的生產(chǎn)和生活的各個(gè)領(lǐng)域。然而游泳池的溫度控制的發(fā)展無(wú)疑得益于計(jì)算機(jī)技術(shù)的發(fā)展。12本設(shè)計(jì)的應(yīng)用及意義本設(shè)計(jì)以保質(zhì)、節(jié)能、安全和方便為基準(zhǔn)設(shè)計(jì)了一個(gè)游泳池保溫控制器,根據(jù)需要進(jìn)行相應(yīng)的數(shù)據(jù)分析和處理,由此完成對(duì)游泳池水溫的采樣和控制。通過本設(shè)計(jì)掌握使用高級(jí)語(yǔ)言對(duì)單片機(jī)編程技術(shù)以及一線總線制在單片機(jī)方面的應(yīng)用及用單片機(jī)進(jìn)行對(duì)繼電器的控制,從而控制大功率的加熱設(shè)備,提高實(shí)際工作技能。本設(shè)計(jì)以單片機(jī)為核心的溫度采集與控制系統(tǒng)的研發(fā)與應(yīng)用,在很大程度上提高了生產(chǎn)、生活中對(duì)游泳池溫度的控制水平。13游泳池保溫控制系統(tǒng)完成的功能本設(shè)計(jì)是對(duì)游泳池溫度進(jìn)行實(shí)時(shí)監(jiān)測(cè)與控制,設(shè)計(jì)的溫度控制系統(tǒng)實(shí)現(xiàn)了基本的溫度控制功能當(dāng)溫度低于設(shè)定下限溫度時(shí),系統(tǒng)自動(dòng)按程序設(shè)計(jì)的順序啟動(dòng)繼電器使熱水器對(duì)游泳池水進(jìn)行加溫,使溫度上升,同時(shí)指示加溫的紅燈亮起。當(dāng)溫度上升到下限溫度以上時(shí),按順序停止熱水器加溫;當(dāng)溫度達(dá)到設(shè)定溫度時(shí),系統(tǒng)停止加溫,同時(shí)紅等熄滅。溫度在上下限溫度之間時(shí),執(zhí)行機(jī)構(gòu)不執(zhí)行。兩個(gè)數(shù)碼管即時(shí)顯示溫度,精確到整數(shù)位。第2章系統(tǒng)總體方案本章圍繞系統(tǒng)的總體設(shè)計(jì),介紹系統(tǒng)組成框圖、主控芯片單片機(jī)的內(nèi)部硬件資源及其接口技術(shù)、游泳池保溫系統(tǒng)所用到的其它IC和其他重要元件的介紹。21方案一用熱敏電阻采集溫度數(shù)據(jù)測(cè)溫電路的設(shè)計(jì),可以使用熱敏電阻之類的器件利用其感溫效應(yīng),在將隨被測(cè)溫度變化的電壓或電流采集過來,進(jìn)行A/D轉(zhuǎn)換后,就可以用單片機(jī)進(jìn)行數(shù)據(jù)的處理,在顯示電路上,就可以將被測(cè)溫度顯示出來,這種設(shè)計(jì)需要用到A/D轉(zhuǎn)換電路,感溫電路比較麻煩。雖然這種用熱敏電阻為主要測(cè)溫元件的測(cè)溫電路可滿足40攝氏度至90攝氏度測(cè)量范圍,但熱敏電阻精度、重復(fù)性、可靠性較差,對(duì)于檢測(cè)1攝氏度的信號(hào)是不適用的。而且使用熱敏電阻,需要用到十分復(fù)雜的算法,一定程度上增加了軟件實(shí)現(xiàn)的難度。所以本設(shè)計(jì)不使用該方案。22方案二采用DS18B20采集溫度數(shù)據(jù)考慮使用溫度傳感器,結(jié)合單片機(jī)電路設(shè)計(jì),采用一只DS18B20溫度傳感器,直接讀取被測(cè)溫度值,并把溫度信號(hào)轉(zhuǎn)換成數(shù)字量,通過單片機(jī)AT89C2051讀取處理送入七段數(shù)碼管顯示,AT89C2051單片機(jī)根據(jù)采集的溫度數(shù)據(jù),按程序要求控制繼電器的關(guān)閉和開啟,使熱水器啟動(dòng)實(shí)現(xiàn)對(duì)游泳次進(jìn)行保溫的效果。使用DS18B20測(cè)溫,測(cè)溫電路簡(jiǎn)單,測(cè)溫精度高,但DS18B20初始化程序比較復(fù)雜,可以說是以復(fù)雜的程序換來簡(jiǎn)單的電路。比較上述兩種方案,方案2改善了方案1的不足及缺點(diǎn),并具有控制簡(jiǎn)單、控制溫度精度高的特點(diǎn)所以我們采用方案二,單總線DS18B20,硬件簡(jiǎn)單,精度高,設(shè)計(jì)中容易實(shí)現(xiàn)。在本系統(tǒng)的電路設(shè)計(jì)方框圖如圖21所示,它由三部分組成A控制部分主芯片采用單片機(jī)AT89C2051;B顯示部分采用兩位共陽(yáng)七段數(shù)碼管以動(dòng)態(tài)掃描方式實(shí)現(xiàn)溫度顯示;C溫度采集部分采用DS18B20溫度傳感器。單片機(jī)DS18B20七段數(shù)碼管顯示溫度指示燈加熱繼電器圖21總體設(shè)計(jì)方案221控制部分單片機(jī)AT89C2051提供以下標(biāo)準(zhǔn)功能2K字節(jié)FLASH閃速存儲(chǔ)器,128字節(jié)內(nèi)部RAM,15個(gè)I/O口線,兩個(gè)16位定時(shí)/計(jì)數(shù)器,一個(gè)5向兩級(jí)中斷結(jié)構(gòu),一個(gè)全雙工串口通信口,內(nèi)置一個(gè)精密比較器,片內(nèi)振蕩器及時(shí)鐘電路,同時(shí),AT89C2051可降至0HZ的靜態(tài)邏輯操作,并支持兩種軟件可選的節(jié)電工作模式。空閑方式停止CPU的工作,但允許RAM,定時(shí)/計(jì)數(shù)器,串行通信口及中斷系統(tǒng)繼續(xù)工作。掉電方式保存RAM中的內(nèi)容,但震蕩器停止工作并禁止它所有的部件工作直到下一個(gè)硬件復(fù)位。222顯示部分顯示電路采用兩位位共陽(yáng)七段數(shù)碼管,從P1口送數(shù),P3口掃描。223溫度采集部分DS18B20溫度傳感器是美國(guó)DALLAS半導(dǎo)體公司最新推出的一種改進(jìn)型智能溫度傳感器,與傳統(tǒng)的熱敏電阻等測(cè)溫元件相比,它能直接讀出被測(cè)溫。這一部分主要完成對(duì)溫度信號(hào)的采集和轉(zhuǎn)換工作,由DS18B20數(shù)字溫度傳感器及其與單片機(jī)的接口部分組成。數(shù)字溫度傳感器DS18B20把采集到的溫度通過數(shù)據(jù)引腳DQ腳傳到單片機(jī)的P37口,單片機(jī)接受溫度并存儲(chǔ)。此部分只用到DS18B20和單片機(jī),硬件很簡(jiǎn)單。ADS18B20的性能特點(diǎn)如下3A獨(dú)特的單線接口僅需要一個(gè)端口引腳進(jìn)行通信;B多個(gè)DS18B20可以并聯(lián)在惟一的三線上,實(shí)現(xiàn)多點(diǎn)組網(wǎng)功能;C無(wú)須外部器件;D可通過數(shù)據(jù)線供電,電壓范圍為3055V;E零待機(jī)功耗;F溫度以3位數(shù)字顯示;G用戶可定義報(bào)警設(shè)置;H報(bào)警搜索命令識(shí)別并標(biāo)志超過程序限定溫度(溫度報(bào)警條件)的器件;I負(fù)電壓特性,電源極性接反時(shí),溫度計(jì)不會(huì)因發(fā)熱而燒毀,但不能正常工作;BDS18B20的內(nèi)部結(jié)構(gòu)DS18B20采用3腳PR35封裝,如圖22所示;DS18B20的內(nèi)部結(jié)構(gòu),如圖23所示。引腳說明地?cái)?shù)據(jù)線可選圖22DS18B20封裝內(nèi)部電源探測(cè)位和單線端口位產(chǎn)生器暫存器下限觸發(fā)上限觸發(fā)溫度傳感器存儲(chǔ)器和控制邏輯圖23DS18B20內(nèi)部結(jié)構(gòu)CDS18B20內(nèi)部結(jié)構(gòu)主要由四部分組成4A4位光刻ROM。開始8位是產(chǎn)品類型的編號(hào),接著是每個(gè)器件的惟一的序號(hào),共有48位,最后8位是前56位的CRC校驗(yàn)碼,這也是多個(gè)DS18B20可以采用一線進(jìn)行通信的原因3。64位閃速ROM的結(jié)構(gòu)如下表表21ROM結(jié)構(gòu)8B檢驗(yàn)CRC48B序列號(hào)8B工廠代碼(10H)MSBLSBMSBLSBMSBLSBB非揮發(fā)的溫度報(bào)警觸發(fā)器TH和TL,可通過軟件寫入用戶報(bào)警上下限值。C高速暫存存儲(chǔ),可以設(shè)置DS18B20溫度轉(zhuǎn)換的精度。DS18B20溫度傳感器的內(nèi)部存儲(chǔ)器還包括一個(gè)高速暫存RAM和一個(gè)非易失性的可電擦除的EEPRAM。高速暫存RAM的結(jié)構(gòu)為8字節(jié)的存儲(chǔ)器,結(jié)構(gòu)如表22所示。頭2個(gè)字節(jié)包含測(cè)得的溫度信息,第3和第4字節(jié)TH和TL的拷貝,是易失的,每次上電復(fù)位時(shí)被刷新。第5個(gè)字節(jié),為配置寄存器,它的內(nèi)容用于確定溫度值的數(shù)字轉(zhuǎn)換分辨率。DS18B20工作時(shí)寄存器中的分辨率轉(zhuǎn)換為相應(yīng)精度的溫度數(shù)值。它的內(nèi)部存儲(chǔ)器結(jié)構(gòu)和字節(jié)定義如表23所示。低5位一直為,TM是工作模式位,用于設(shè)置DS18B20在工作模式還是在測(cè)試模式。DS18B20出廠時(shí)該位被設(shè)置為0,用戶要去改動(dòng),R1和R0決定溫度轉(zhuǎn)換的精度位數(shù),來設(shè)置分辨率,如表24。表22DS18B20內(nèi)部存儲(chǔ)器結(jié)構(gòu)BYTE0溫度測(cè)量值LSB(50H)BYTE1溫度測(cè)量值MSB(50H)EEPROMBYTE2TH高溫寄存器TH高溫寄存器BYTE3TL低溫寄存器TL低溫寄存器BYTE4配位寄存器配位寄存器BYTE5預(yù)留(FFH)BYTE6預(yù)留(0CH)BYTE7預(yù)留(IOH)BYTE8循環(huán)冗余碼校驗(yàn)(CRC)表23DS18B20字節(jié)定義TMR1R011111由表24可見,分辨率越高,所需要的溫度數(shù)據(jù)轉(zhuǎn)換時(shí)間越長(zhǎng)。因此,在實(shí)際應(yīng)用中要將分辨率和轉(zhuǎn)換時(shí)間權(quán)衡考慮。高速暫存RAM的第6、7、8字節(jié)保留未用,表現(xiàn)為全邏輯1。第9字節(jié)讀出前面所有8字節(jié)的CRC碼,可用來檢驗(yàn)數(shù)據(jù),從而保證通信數(shù)據(jù)的正確性。當(dāng)DS18B20接收到溫度轉(zhuǎn)換命令后,開始啟動(dòng)轉(zhuǎn)換。轉(zhuǎn)換完成后的溫度值就以16位帶符號(hào)擴(kuò)展的二進(jìn)制補(bǔ)碼形式存儲(chǔ)在高速暫存存儲(chǔ)器的第1、2字節(jié)。單片機(jī)可以通過單線接口讀出該數(shù)據(jù),讀數(shù)據(jù)時(shí)低位在先,高位在后,數(shù)據(jù)格式以00625LSB形式表示。當(dāng)符號(hào)位S0時(shí),表示測(cè)得的溫度值為正值,可以直接將二進(jìn)制位轉(zhuǎn)換為十進(jìn)制;當(dāng)符號(hào)位S1時(shí),表示測(cè)得的溫度值為負(fù)值,要先將補(bǔ)碼變成原碼,再計(jì)算十進(jìn)制數(shù)值。表12是一部分溫度值對(duì)應(yīng)的二進(jìn)制溫度數(shù)據(jù)。表24DS18B20溫度轉(zhuǎn)換時(shí)間表R1R0分辨率/位溫度最大轉(zhuǎn)向時(shí)間/MS00993750110187510113751112750表25一部分溫度對(duì)應(yīng)值表溫度/二進(jìn)制表示十六進(jìn)制表示125000000001111101000FAH2500000000001100100032H0500000000000000010001H000000000000000000000H051111111111111111FFFFH251111111111001110FFCEH551111111110010010FF92HDCRC的產(chǎn)生在64BROM的最高有效字節(jié)中存儲(chǔ)有循環(huán)冗余校驗(yàn)碼(CRC)。主機(jī)根據(jù)ROM的前56位來計(jì)算CRC值,并和存入DS18B20中的CRC值做比較,以判斷主機(jī)收到的ROM數(shù)據(jù)是否正確。另外,由于DS18B20單線通信功能是分時(shí)完成的,它有嚴(yán)格的時(shí)隙概念,因此讀寫時(shí)序很重要。系統(tǒng)對(duì)DS18B20的各種操作按協(xié)議進(jìn)行。操作協(xié)議為初使化DS18B20(發(fā)復(fù)位脈沖)發(fā)ROM功能命令發(fā)存儲(chǔ)器操作命令處理數(shù)據(jù)。第3章DS18B20溫度傳感器簡(jiǎn)介31溫度傳感器的歷史及簡(jiǎn)介溫度的測(cè)量是從金屬物質(zhì)的熱脹冷縮開始。水銀溫度計(jì)至今仍是各種溫度測(cè)量的計(jì)量標(biāo)準(zhǔn)??墒撬娜秉c(diǎn)是只能近距離觀測(cè),而且水銀有毒,玻璃管易碎。代替水銀的有酒精溫度計(jì)和金屬簧片溫度計(jì),它們雖然沒有毒性,但測(cè)量精度很低,只能作為一個(gè)概略指示。不過在居民住宅中使用已可滿足要求。在工業(yè)生產(chǎn)和實(shí)驗(yàn)研究中為了配合遠(yuǎn)傳儀表指示,出現(xiàn)了許多不同的溫度檢測(cè)方法,常用的有電阻式、熱電偶式、PN結(jié)型、輻射型、光纖式及石英諧振型等。它們都是基于溫度變化引起其物理參數(shù)如電阻值,熱電勢(shì)等的變化的原理。隨著大規(guī)模集成電路工藝的提高,出現(xiàn)了多種集成的數(shù)字化溫度傳感器。32DS18B20的工作原理321DS18B20工作時(shí)序根據(jù)DS18B20的通訊協(xié)議,主機(jī)控制DS18B20完成溫度轉(zhuǎn)換必須經(jīng)過三個(gè)步驟1每一次讀寫之前都必須要對(duì)DS18B20進(jìn)行復(fù)位;2復(fù)位成功后發(fā)送一條ROM指令;3最后發(fā)送RAM指令,這樣才能對(duì)DS18B20進(jìn)行預(yù)定的操作。復(fù)位要求主CPU將數(shù)據(jù)線下拉500微秒,然后釋放,DS18B20收到信號(hào)后等待1560微秒左右后發(fā)出60240微秒的存在低脈沖,主CPU收到此信號(hào)表示復(fù)位成功。其工作時(shí)序包括初始化時(shí)序、寫時(shí)序和讀時(shí)序,具體工作方法如圖31,32,33所示。A初始化時(shí)序響應(yīng)脈沖6024等待15主機(jī)最小8主機(jī)復(fù)位脈沖最小480US圖31初始化時(shí)序總線上的所有傳輸過程都是以初始化開始的,主機(jī)響應(yīng)應(yīng)答脈沖。應(yīng)答脈沖使主機(jī)知道,總線上有從機(jī)設(shè)備,且準(zhǔn)備就緒。主機(jī)輸出低電平,保持低電平時(shí)間至少480US,以產(chǎn)生復(fù)位脈沖。接著主機(jī)釋放總線,47K上拉電阻將總線拉高,延時(shí)1560US,并進(jìn)入接受模式,以產(chǎn)生低電平應(yīng)答脈沖,若為低電平,再延時(shí)480US12。B寫時(shí)序采樣154采樣1541主機(jī)寫“1時(shí)序主機(jī)寫“0時(shí)序圖32寫時(shí)序?qū)憰r(shí)序包括寫0時(shí)序和寫1時(shí)序。所有寫時(shí)序至少需要60US,且在2次獨(dú)立的寫時(shí)序之間至少需要1US的恢復(fù)時(shí)間,都是以總線拉低開始。寫1時(shí)序,主機(jī)輸出低電平,延時(shí)2US,然后釋放總線,延時(shí)60US。寫0時(shí)序,主機(jī)輸出低電平,延時(shí)60US,然后釋放總線,延時(shí)2US6。C讀時(shí)序主機(jī)采樣主機(jī)采樣45451主機(jī)寫“時(shí)序主機(jī)寫“0時(shí)序圖33讀時(shí)序總線器件僅在主機(jī)發(fā)出讀時(shí)序是,才向主機(jī)傳輸數(shù)據(jù),所以,在主機(jī)發(fā)出讀數(shù)據(jù)命令后,必須馬上產(chǎn)生讀時(shí)序,以便從機(jī)能夠傳輸數(shù)據(jù)。所有讀時(shí)序至少需要60US,且在2次獨(dú)立的讀時(shí)序之間至少需要1US的恢復(fù)時(shí)間。每個(gè)讀時(shí)序都由主機(jī)發(fā)起,至少拉低總線1US。主機(jī)在讀時(shí)序期間必須釋放總線,并且在時(shí)序起始后的15US之內(nèi)采樣總線狀態(tài)。主機(jī)輸出低電平延時(shí)2US,然后主機(jī)轉(zhuǎn)入輸入模式延時(shí)12US,然后讀取總線當(dāng)前電平,然后延時(shí)50US。322ROM操作命令當(dāng)主機(jī)收到DSL8B20的響應(yīng)信號(hào)后,便可以發(fā)出ROM操作命令之一,這些命令如表31ROM操作命令。33DS18B20的測(cè)溫原理331DS18B20的測(cè)溫原理每一片DSL8B20在其ROM中都存有其唯一的48位序列號(hào),在出廠前已寫入片內(nèi)ROM中。主機(jī)在進(jìn)入操作程序前必須用讀ROM33H命令將該DSL8B20的序列號(hào)讀出。程序可以先跳過ROM,啟動(dòng)所有DSL8B20進(jìn)行溫度變換,之后通過匹配ROM,再逐一地讀回每個(gè)DSL8B20的溫度數(shù)據(jù)。DS18B20的測(cè)溫原理如圖34所示,圖中低溫度系數(shù)晶振的振蕩頻率受溫度的影響很小,用于產(chǎn)生固定頻率的脈沖信號(hào)送給減法計(jì)數(shù)器1,高溫度系數(shù)晶振隨溫度變化其震蕩頻率明顯改變,所產(chǎn)生的信號(hào)作為減法計(jì)數(shù)器2的脈沖輸入,圖中還隱含著計(jì)數(shù)門,當(dāng)計(jì)數(shù)門打開時(shí),DS18B20就對(duì)低溫度系數(shù)振蕩器產(chǎn)生的時(shí)鐘脈沖后進(jìn)行計(jì)數(shù),進(jìn)而完成溫度測(cè)量。計(jì)數(shù)門的開啟時(shí)間由高溫度系數(shù)振蕩器來決定,每次測(cè)量前,首先將55所對(duì)應(yīng)的基數(shù)分別置入減法計(jì)數(shù)器1和溫度寄存器中,減法計(jì)數(shù)器1和溫度寄存器被預(yù)置在55所對(duì)應(yīng)的一個(gè)基數(shù)值。減法計(jì)數(shù)器1對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行減法計(jì)數(shù),當(dāng)減法計(jì)數(shù)器1的預(yù)置值減到0時(shí)溫度寄存器的值將加1,減法計(jì)數(shù)器1的預(yù)置將重新被裝入,減法計(jì)數(shù)器1重新開始對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行計(jì)數(shù),如此循環(huán)直到減法計(jì)數(shù)器2計(jì)數(shù)到0時(shí),停止溫度寄存器值的累加,此時(shí)溫度寄存器中的數(shù)值即為所測(cè)溫度。圖34中的斜率累加器用于補(bǔ)償和修正測(cè)溫過程中的非線性,其輸出用于修正減法計(jì)數(shù)器的預(yù)置值,只要計(jì)數(shù)門仍未關(guān)閉就重復(fù)上述過程,直至溫度寄存器值達(dá)到被測(cè)溫度值表31ROM操作命令指令約定代碼功能讀ROM33H讀DS18B20ROM中的編碼符合ROM55H發(fā)出此命令之后,接著發(fā)出64位ROM編碼,訪問單線總線上與該編碼相對(duì)應(yīng)的DS18B20使之作出響應(yīng),為下一步對(duì)該DS18B20的讀寫作準(zhǔn)備搜索ROM0F0H用于確定掛接在同一總線上DS18B20的個(gè)數(shù)和識(shí)別64位ROM地址,為操作各器件作好準(zhǔn)備跳過ROM0CCH忽略64位ROM地址,直接向DS18B20發(fā)溫度變換命令,適用于單片工作。告警搜索命令0ECH執(zhí)行后,只有溫度超過設(shè)定值上限或者下限的片子才做出響應(yīng)溫度變換44H啟動(dòng)DS18B20進(jìn)行溫度轉(zhuǎn)換,轉(zhuǎn)換時(shí)間最長(zhǎng)為500MS,結(jié)果存入內(nèi)部9字節(jié)RAM中讀暫存器0BEH讀內(nèi)部RAM中9字節(jié)的內(nèi)容寫暫存器4EH發(fā)出向內(nèi)部RAM的第3,4字節(jié)寫上、下限溫度數(shù)據(jù)命令,緊跟讀命令之后,是傳送兩字節(jié)的數(shù)據(jù)復(fù)制暫存器48H將EEPRAM中第3,4字節(jié)內(nèi)容復(fù)制到E2PRAM中重調(diào)E2PRAM0BBH將EEPRAM中內(nèi)容恢復(fù)到RAM中的第3,4字節(jié)讀供電方式0B4H讀DS18B20的供電模式,寄生供電時(shí)DS18B20發(fā)送“0”,外接電源供電DS18B20發(fā)送“1”另外,由于DS18B20單線通信功能是分時(shí)完成的,他有嚴(yán)格的時(shí)隙概念,因此讀寫時(shí)序很重要。系統(tǒng)對(duì)DS18B20的各種操作必須按協(xié)議進(jìn)行。操作協(xié)議為初始化DS18B20(發(fā)復(fù)位脈沖)發(fā)ROM功能命令發(fā)存儲(chǔ)器操作命令處理數(shù)據(jù)。減法計(jì)數(shù)器斜坡累加器減到0減法計(jì)數(shù)器預(yù)置低溫度系數(shù)振蕩器高溫度系數(shù)振蕩器計(jì)數(shù)比較器預(yù)置溫度寄存器減到0圖34測(cè)溫原理內(nèi)部裝置332DS18B20的測(cè)溫流程初始化DS18B20跳過ROM匹配溫度變換延時(shí)1S跳過ROM匹配讀暫存器轉(zhuǎn)換成顯示碼數(shù)碼管顯示圖35DS18B20測(cè)溫流程第4章單片機(jī)接口設(shè)計(jì)41設(shè)計(jì)原則DS18B20可以采用兩種方式供電,一種是采用電源供電方式,此時(shí)DS18B20的1腳接地,2腳作為信號(hào)線,3腳接電源,如圖41所示單片機(jī)端口接單線總線,另一種是寄生電源供電方式,為保證在有效的DS18B20時(shí)鐘周期內(nèi)提供足夠的電流,可用一個(gè)MOSFET管來完成對(duì)總線的上拉。本設(shè)計(jì)采用電源供電方式,P11口接單線總線為保證在有效的DS18B20時(shí)鐘周期內(nèi)提供足夠的電流,可用一個(gè)47K電阻和AT89C2051的P37來完成對(duì)總線的上拉。當(dāng)DS18B20處于寫存儲(chǔ)器操作和溫度A/D變換操作時(shí),總線上必須有強(qiáng)的上拉,上拉開啟時(shí)間最大為10S。采用寄生電源供電方式是VDD和GND端均接地。由于單線制只有一根線,因此發(fā)送接收口必須是三狀態(tài)的。主機(jī)控制DS18B20完成溫度轉(zhuǎn)換必須經(jīng)過3個(gè)步驟初始化;ROM操作指令;存儲(chǔ)器操作指令。42引腳連接421晶振電路單片機(jī)XIAL1和XIAL2分別接30PF的電容,中間再并個(gè)12MHZ的晶振,形成單片機(jī)的晶振電路。422串口引腳P1口接7個(gè)2K的電阻阻然后接到顯示電路上。溫度傳感器DS18B20的DQ口接單片機(jī)的P37口進(jìn)行溫度數(shù)據(jù)的采集,如圖41所示。圖41DS18B20與單片機(jī)的接口電路單片機(jī)DS18B20VCCGNDP37P32;P33;P34;P35引腳接繼電器電路的1K電阻上。VCC與引腳1分別接按鍵S1的兩端,用以使單片機(jī)復(fù)位。P32;P33引腳接按鍵S1、S2,按鍵另外一端接地,起作用是分別是上調(diào)和下調(diào)預(yù)設(shè)溫度。423其它引腳10引腳接地。第5章系統(tǒng)整體設(shè)計(jì)51系統(tǒng)硬件電路設(shè)計(jì)511主板電路設(shè)計(jì)單片機(jī)的P37接DS18B20的2號(hào)引腳,P10;P11;P12;P13;P14;P15;P16六個(gè)口通過R1R6(2K)的電阻鏈接兩位的七段數(shù)碼管,用以顯示兩位整數(shù)的溫度2。同時(shí),P17;P34;

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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)論