版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 基于單片機(jī)的數(shù)字溫度控制系統(tǒng)</p><p><b> 摘要</b></p><p> 本課題設(shè)計(jì)以AT89C2051單片機(jī)為核心,采用相關(guān)的傳感器設(shè)計(jì)了一種溫度控制系統(tǒng)。該系統(tǒng)可對(duì)溫度進(jìn)行自動(dòng)監(jiān)控。本文完成了系統(tǒng)的硬件組成結(jié)構(gòu)圖和相關(guān)軟件程序框圖,并詳細(xì)說(shuō)明了本套系統(tǒng)的工作原理。</p><p> 系統(tǒng)采用單總線傳
2、感器網(wǎng)絡(luò)設(shè)計(jì)思想。其中溫度傳感器都以智能終端的形式掛接到單總線上,多條單總線匯總到一起,由一臺(tái)數(shù)據(jù)采集器集中控制,每臺(tái)數(shù)據(jù)采集器負(fù)責(zé)一定區(qū)域內(nèi)的溫度監(jiān)測(cè)。數(shù)據(jù)采集器的核心部件為單片機(jī),主要完成對(duì)其所連接傳感器件的測(cè)量與控制以及與主機(jī)的通信等功能。</p><p> 關(guān)鍵字: AT89C2051, 傳感器 ,溫度控制系統(tǒng)</p><p><b> 目錄</b><
3、;/p><p> 基于單片機(jī)的數(shù)字溫度控制系統(tǒng)2</p><p> 第一章 系統(tǒng)總體方案設(shè)計(jì)3</p><p><b> 1.1設(shè)計(jì)目標(biāo)4</b></p><p><b> 1.2元件選擇4</b></p><p> 1.2.1主控芯片4</p>
4、<p> 1.2.2溫度采集模塊4</p><p> 1.2.3顯示模塊5</p><p> 1.2.4智能報(bào)警模塊5</p><p> 第二章 溫度控制系統(tǒng)原理及分析5</p><p> 2.1系統(tǒng)總體流程圖5</p><p> 2.2 系統(tǒng)各個(gè)部分電路設(shè)計(jì)6</p>
5、<p> 2.2.1單片機(jī)主控電路設(shè)計(jì)6</p><p> 2.2.2按鍵電路設(shè)計(jì)7</p><p> 2.2.3 LED顯示電路的設(shè)計(jì)8</p><p> 2.2.4 溫度檢測(cè)模塊12</p><p> 2.2.5報(bào)警電路15</p><p><b> 結(jié)論16</
6、b></p><p><b> 參考文獻(xiàn)17</b></p><p><b> 附錄A18</b></p><p> 第一章 系統(tǒng)總體方案設(shè)計(jì)</p><p> 如圖1-1所示。此溫度控制系統(tǒng)先是溫度感應(yīng)原件進(jìn)行溫度采集,A/D轉(zhuǎn)換后送入到單片機(jī)然后顯示輸出和智能溫度報(bào)警,如果需要
7、修改溫度參數(shù)或者是查看設(shè)置和其他功能,則由鍵控制電路輸出控制。</p><p> 圖1-1 系統(tǒng)總體方案</p><p><b> 1.1設(shè)計(jì)目標(biāo)</b></p><p> 設(shè)計(jì)工業(yè)溫度控制系統(tǒng),實(shí)現(xiàn)實(shí)時(shí)溫度檢測(cè),數(shù)據(jù)傳輸,液晶顯示,按鍵控制電路,可設(shè)定監(jiān)控溫度上下限,過(guò)限報(bào)警電路,可持續(xù)工作,掉電復(fù)位,具有高可靠性和低生產(chǎn)成本,低功耗
8、,高精度等特性。</p><p><b> 1.2元件選擇</b></p><p><b> 1.2.1主控芯片</b></p><p> 方案一:采用數(shù)字邏輯電路。本系統(tǒng)有功能設(shè)置、數(shù)據(jù)裝入、定時(shí)、顯示、聲音提示多個(gè)功能模塊。各個(gè)狀態(tài)保持或轉(zhuǎn)移的條件依賴于鍵盤(pán)控制信號(hào)。由于鍵盤(pán)控制信號(hào)繁多,系統(tǒng)的邏輯狀態(tài)以及相互轉(zhuǎn)
9、移更是復(fù)雜,用純粹的數(shù)字電路或小規(guī)模的可編程邏輯電路實(shí)現(xiàn)該系統(tǒng)有一定的困難,需要用中大規(guī)模的可編程邏輯電路。這樣,系統(tǒng)復(fù)雜且難以實(shí)現(xiàn)。因此,本設(shè)計(jì)并未采用這種方案。</p><p> 方案二:采用單片機(jī)作為整個(gè)控制系統(tǒng)的核心。鑒于市場(chǎng)上常見(jiàn)的51系列8位單片機(jī)的售價(jià)比較低廉,本設(shè)計(jì)采用了AT89C2051單片機(jī)系統(tǒng)。具體方案如下:首先,利用單片機(jī)多中斷源的協(xié)調(diào)處理能力,通過(guò)掃描接收鍵盤(pán)送來(lái)的信號(hào),確認(rèn)功能設(shè)置,
10、實(shí)現(xiàn)數(shù)據(jù)裝入,利用單片機(jī)內(nèi)部定時(shí)器倒數(shù)設(shè)置時(shí)間,利用中斷動(dòng)態(tài)掃描控制顯示電路,用單片機(jī)I/O口控制外部繼電器以及提示電路。</p><p> 由此可知,采用方案二較為合理,降低開(kāi)發(fā)難度。</p><p> 1.2.2溫度采集模塊</p><p> 方案一:熱電偶傳感器</p><p> 熱電偶傳感器具有價(jià)廉、精度高、構(gòu)造簡(jiǎn)單、測(cè)量范圍
11、寬(通常從- 50~ + 1600 ℃)及反應(yīng)快速的優(yōu)點(diǎn)。熱電偶傳感器輸出的電壓信號(hào)較為微弱(只有幾毫伏到幾十毫伏) , 因此在進(jìn)行A/ D 轉(zhuǎn)換之前必須進(jìn)行信號(hào)調(diào)理, 由高放大倍數(shù)的電路將它放大到A/ D 轉(zhuǎn)換器通常所要求的伏特級(jí)電平。一般采用熱電偶調(diào)理模板或調(diào)理模塊來(lái)完成這項(xiàng)工作最為便捷, 而自行設(shè)計(jì)、制作儀表放大器則較為繁瑣且較難保證精度。</p><p> 方案二:可編程分單總線數(shù)字溫度傳感器DS18B
12、20</p><p> DS18B20 是一種單總線系統(tǒng)的數(shù)字溫度傳感器,它可提供二進(jìn)制9 位溫度信息,分辨率為0. 5 ℃,可在- 55~ + 125 ℃的范圍內(nèi)測(cè)量溫度。從中央處理</p><p> 器到DS18B20 僅需連接一條信號(hào)線和地線,其指令信息和數(shù)據(jù)信息都經(jīng)過(guò)單總線接口與DS18B20 進(jìn)行數(shù)據(jù)交換。DS18B20 完成讀、寫(xiě)和溫度變換所需的電源可以由數(shù)據(jù)線本身提供,也
13、可以由外部供給。并且,每個(gè)DS18B20 有唯一的系列號(hào),因此同一條單總線上可以掛接多個(gè)DS18B20 ,構(gòu)成主從結(jié)構(gòu)的多點(diǎn)測(cè)溫傳感器網(wǎng)絡(luò)。此特性可普遍應(yīng)用在包括環(huán)境監(jiān)測(cè)、建筑物和設(shè)備內(nèi)的溫度場(chǎng)測(cè)量,以及過(guò)程監(jiān)視和控制中的溫度檢測(cè)中。</p><p> 由比較可知,選用方案二相對(duì)比較便宜的DS18B20更好,能提高A/ D 轉(zhuǎn)換精度的同時(shí)確保信號(hào)完整性,較少開(kāi)發(fā)難度。</p><p>&
14、lt;b> 1.2.3顯示模塊</b></p><p> 方案一采用液晶顯示。液晶顯示的優(yōu)點(diǎn)是顯示的內(nèi)容多,可以提供中文顯示,背景光亮度可調(diào),硬件接線少。缺點(diǎn)是價(jià)格昂貴,且容易燒毀,必須加限流電阻。</p><p> 方案二采用動(dòng)態(tài)數(shù)碼管顯示。優(yōu)點(diǎn)是顯示時(shí)間較為清晰,遠(yuǎn)距離也能看清。四位動(dòng)態(tài)數(shù)碼管較為便宜,大大節(jié)省了成本。缺點(diǎn)是電路接線較多,顯示內(nèi)容少,只能顯示數(shù)字
15、,不能顯示中文。</p><p> 考慮到顯示需要與成本,采用方案二較為合適</p><p> 1.2.4智能報(bào)警模塊</p><p> 方案一、采用語(yǔ)音芯片實(shí)現(xiàn)語(yǔ)音提示。語(yǔ)音芯片優(yōu)點(diǎn)是能輸出各種錄制好的聲音,輸出容易豐富。缺點(diǎn)是電路復(fù)雜,價(jià)錢(qián)貴,而且要先錄制才能播放。</p><p> 方案二、采用蜂鳴器輸出聲音提示。優(yōu)點(diǎn)是電路簡(jiǎn)單
16、,價(jià)錢(qián)便宜。</p><p> 考慮成本與本設(shè)計(jì)只需要一種工作完成的提示,用簡(jiǎn)單的蜂鳴器電路已經(jīng)足夠,故選擇方案二。</p><p> 第二章 溫度控制系統(tǒng)原理及分析</p><p><b> 2.1系統(tǒng)總體框圖</b></p><p> 系統(tǒng)的工作流程如圖2-1,首先器件上電復(fù)位,溫度檢測(cè)芯片DS18B20檢測(cè)
17、當(dāng)前溫度。單片機(jī)從DS18B20中讀出溫度值,并與DS18B20非易失性存儲(chǔ)器中的TH,TL值比較(其中TH為設(shè)定溫度最高值,TL為設(shè)定溫度最低值),并顯示輸出當(dāng)前溫度值,如果發(fā)生超限,即智能報(bào)警。注意,除非電路掉電復(fù)位,又或者是溫度恢復(fù)正常,否則報(bào)警器不會(huì)停止。當(dāng)超限報(bào)警后,啟動(dòng)電機(jī)對(duì)溫度進(jìn)行調(diào)節(jié),當(dāng)溫度恢復(fù)正常后報(bào)警解除。鍵盤(pán)控制電路設(shè)置上下限溫度值。</p><p> 圖2-1 系統(tǒng)總體框圖</p
18、><p> 2.2 系統(tǒng)各個(gè)部分電路設(shè)計(jì)</p><p> 2.2.1硬件電路設(shè)計(jì)</p><p> 圖2-2 單片機(jī)外圍電路</p><p> 單片機(jī)主控電路如圖2-2所示包括電源復(fù)位電路和晶體振動(dòng)電路和按鍵電路。復(fù)位電路的基本功能是:系統(tǒng)上電時(shí)提供復(fù)位信號(hào),直至系統(tǒng)電源穩(wěn)定后,撤銷復(fù)位信號(hào)。為可靠起見(jiàn),電源穩(wěn)定后還要經(jīng)一定的延時(shí)才起的
19、抖動(dòng)而影響復(fù)位。當(dāng)開(kāi)關(guān)RST閉合后經(jīng)過(guò)一小段時(shí)間的延時(shí)后單元穩(wěn)定,RST端口變?yōu)楦唠娖?,產(chǎn)生復(fù)位信號(hào),單片機(jī)復(fù)位。</p><p> 圖2-3 晶振電路 </p><p> XTAL1和XTAL2分別為反向放大器的輸入和輸出。該反向放大器可以配置為片內(nèi)振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時(shí)鐘源驅(qū)動(dòng)器件,XTAL2應(yīng)不接。有余輸入至內(nèi)部時(shí)鐘信號(hào)要通過(guò)一個(gè)二分頻觸發(fā)器,因此對(duì)外部
20、時(shí)鐘信號(hào)的脈寬無(wú)任何要求,但必須保證脈沖的高低電平要求的寬度。</p><p> 晶振與單片機(jī)的腳XTAL1和腳XTAL2構(gòu)成的振蕩電路中會(huì)產(chǎn)生偕波,這個(gè)波對(duì)電路的影響不大,但會(huì)降低電路的時(shí)鐘振蕩器的穩(wěn)定性。 </p><p> 2.2.2按鍵電路設(shè)計(jì)</p><p> SET鍵:按下該鍵時(shí),進(jìn)入上下限溫度設(shè)置功能,通過(guò)P3口P3.2引腳接入,中斷工作方式。&
21、lt;/p><p> +1鍵:在輸入上下限時(shí),按下該鍵一次,被調(diào)整位加一,通過(guò)P3口P3.0引腳接入,查詢工作方式。</p><p> RET鍵:按下該鍵時(shí),指向下一個(gè)要調(diào)整位,通過(guò)P3口P3.1引腳接入,查詢工作方式。</p><p> 按鍵電路一端接地,另一端接單片機(jī)P3口,當(dāng)按鍵S1,S2,S3,有按下?tīng)顟B(tài),則立刻有信號(hào)從P3口進(jìn)入單片機(jī),單片機(jī)做出響應(yīng)。&
22、lt;/p><p><b> 圖2-4 按鍵電路</b></p><p> 2.2.3 LED顯示電路的設(shè)計(jì)</p><p> 由系統(tǒng)硬件的電路設(shè)計(jì)框圖可知,顯示電路由LED顯示器、段驅(qū)動(dòng)電路和位驅(qū)動(dòng)電路組成。由于單片機(jī)的并行口不能直接驅(qū)動(dòng)LED顯示器,必須采用專用的驅(qū)動(dòng)電路芯片,使之產(chǎn)生足夠大的電流,顯示器才能夠正常工作。</p>
23、;<p> LED顯示器的顯示控制方式分為靜態(tài)顯示和動(dòng)態(tài)顯示兩種,在選擇LED驅(qū)動(dòng)時(shí),一定要先確定顯示方式。若選擇靜態(tài)顯示,則LED驅(qū)動(dòng)器的選擇較為簡(jiǎn)單,只要驅(qū)動(dòng)器的驅(qū)動(dòng)能力與顯示器的電流相匹配即可。而且只需要考慮段的驅(qū)動(dòng),因?yàn)楣碴?yáng)極接+5V,而共陰極接地,所以位的驅(qū)動(dòng)不需要考慮。動(dòng)態(tài)顯示則不同,由于一位數(shù)據(jù)的顯示是由段選和位選信號(hào)共同配合完成的,因此,要同時(shí)考慮段和位的驅(qū)動(dòng)能力,而且段的驅(qū)動(dòng)能力決定位的驅(qū)動(dòng)能力。<
24、;/p><p><b> LED顯示器的選擇</b></p><p> 在本設(shè)計(jì)中,選擇4位一體的LED顯示器,簡(jiǎn)稱“4-LED”。第一位顯示正數(shù)的百位或負(fù)號(hào),第二位顯示十位,第三位顯示個(gè)位,第四位顯示小數(shù)位。4-LED顯示是一個(gè)共陰極接法的4位LED顯示器。其中a、b、c、d、e、f、g為四位LED各段的公共引出端。D1、D2、D3、D4分為是每一位的共陰極輸出端,
25、dp是小數(shù)點(diǎn)引出端。4位一體的LED顯示器的內(nèi)部結(jié)構(gòu)原理如圖所示。對(duì)于這種結(jié)構(gòu)的LED顯示器,他的體積和結(jié)構(gòu)都符合設(shè)計(jì)要求,由于4位LED陰極的各段已經(jīng)在內(nèi)部接在一起,所以必須使用動(dòng)態(tài)掃描方式。</p><p> LED段驅(qū)動(dòng)芯片的選擇</p><p> 在本設(shè)計(jì)中,可以選擇BCD-7段鎖存/譯碼/驅(qū)動(dòng)器作為段驅(qū)動(dòng)電路。這類芯片的型號(hào)有74LS47、74LS48、74LS247、74L
26、S248等,該類芯片具有鎖存、譯碼、驅(qū)動(dòng)的功能。即在輸入端輸入要顯示的字型的BCD碼,在輸出端就可以得到具有一定驅(qū)動(dòng)能力的7段顯示字型碼。</p><p> 如圖所示為74LS48芯片的電路結(jié)構(gòu)原理及引腳圖。引腳圖中大寫(xiě)字母A、B、C、D為BCD碼的輸入端,小寫(xiě)字母a、b、c、d、e、f、g為字型碼輸出端,LT為燈測(cè)試輸入端,RBI為消隱輸入,RBO為消隱輸出。表1中給出了74LS48 BCD-7段鎖存器/譯碼
27、器/驅(qū)動(dòng)器的輸入與輸出信號(hào)的對(duì)應(yīng)關(guān)系。在使用時(shí),將該芯片的輸入端引腳A、B、C、D與單片機(jī)的P1口或P3口連接,該芯片的輸出端七個(gè)引腳,與LED顯示器的七個(gè)段碼引腳相連接。74LS48的作用是接收來(lái)自單片機(jī)的BCD碼型的輸入信號(hào),經(jīng)過(guò)鎖存、譯碼和放大后,輸出7段碼型到LED顯示器,完成對(duì)BCD碼到7段字型碼的鎖存、譯碼和驅(qū)動(dòng)的功能。</p><p> 圖2.5 4-LED顯示器內(nèi)部結(jié)構(gòu)原理圖</p>
28、;<p> 74LS48 芯片電路結(jié)構(gòu)原理及引腳圖</p><p> 表2-1 74LS48 BCD-7 段譯碼器輸入/輸入端信號(hào)對(duì)照表</p><p> LED位驅(qū)動(dòng)芯片的選擇</p><p> LED位驅(qū)動(dòng)較常用的芯片有ULN2003A和ULN2803。前者是具有七個(gè)達(dá)林頓電路的集成芯片,后者是具有八個(gè)達(dá)林頓電路的集成芯片。此種芯片集
29、電極可以收集最大達(dá)500mA的電流,耐壓為30V,能驅(qū)動(dòng)常規(guī)的LED顯示器。如圖所示為ULN2803芯片的引腳圖和電路原理圖。2803芯片的電路原理和2003完全相同,只是在結(jié)構(gòu)上2803比2003多一個(gè)驅(qū)動(dòng)電路。</p><p> 表2-2 4-LED動(dòng)態(tài)掃描顯示狀態(tài)</p><p> 圖中的IN0~IN7引腳是輸入端,OUT0~OUT7引腳是輸出端。第9腳接有續(xù)流二極管。輸出與9腳
30、配合,可驅(qū)動(dòng)感性負(fù)載。</p><p> 在本設(shè)計(jì)中選用ULN2003作為位驅(qū)動(dòng)電路,將該芯片的輸入端引腳IN0、IN1、IN2、IN3與單片機(jī)的P1或P3口連接,該芯片的輸出端引腳OUT0、OUT1、OUT2、OUT3與LED顯示器的四個(gè)位碼引腳D1~D4相連接。UNL2003的作用是接收來(lái)自單片機(jī)的位碼輸入信號(hào),經(jīng)過(guò)反相放大后輸出,送到LED顯示器的位碼引腳,完成對(duì)位碼信號(hào)的反向和驅(qū)動(dòng)的功能。</p&
31、gt;<p> LED驅(qū)動(dòng)電路與單片機(jī)的連接</p><p> 可以采用單片機(jī)的P1口作為與LED的輸出接口,即P1口的低四位作為L(zhǎng)ED的段碼輸出信號(hào),P1口的高四位作為L(zhǎng)ED位碼的輸出控制信號(hào)。4-LED顯示器硬件電路連接如圖所示。R1是上拉電阻,作用是保證LED可靠導(dǎo)通與截止,可以選擇8腳排電阻(7*100歐姆)。</p><p> 該電路的工作原理是:當(dāng)P1口的低
32、四位輸出段碼信號(hào)的BCD碼后,通過(guò)74LS48芯片的鎖存、譯碼和驅(qū)動(dòng)的作用,在其輸出端輸出機(jī)友一定驅(qū)動(dòng)能力的7段字型碼,由于4-LED的段碼輸入引腳是并聯(lián)在一起的,所以每一位LED的段碼輸入引腳都能獲得這個(gè)段碼信號(hào)。</p><p> 若要控制在每一時(shí)刻只有一位LED被點(diǎn)亮,必須靠位碼信號(hào)控制。P1口的高四位輸出位碼信號(hào),經(jīng)UNL2003反向后接到LED的位碼控制端,因此P1口的位碼信號(hào)在每一時(shí)刻只有一位是“1
33、”,其他位全為“0”,然后按時(shí)間順序改變輸出“1”的位置,控制在每一時(shí)刻只有一位LED被點(diǎn)亮,打到動(dòng)態(tài)顯示的目的。若要顯示“0123”時(shí),P1口的控制信號(hào)及4-LED的動(dòng)態(tài)掃描顯示狀態(tài)如下表所示。</p><p> 例如:要完成“0123”的顯示,必須對(duì)P1進(jìn)行編程:</p><p><b> 4-LED:</b></p><p> MO
34、V P1,#80H; 將D1位選通碼“1000B”與“0”的BCD碼“0000B”送P1口</p><p> LCALL DYI; 調(diào)用延時(shí)1ms子程序</p><p> MOV P1,#41H; 將D2位選通碼“0100B”與“1”的BCD碼“0001B”送P1口</p><p> LCALL DYI; 調(diào)用延時(shí)1ms子程序</p><p
35、> MOV P1,#22H; 將D1位選通碼“0010B”與“2”的BCD碼“0010B”送P1口</p><p> LCALL DYI; 調(diào)用延時(shí)1ms子程序</p><p> MOV P1,#80H; 將D1位選通碼“0001B”與“3”的BCD碼“0011B”送P1口</p><p> LCALL DYI; 調(diào)用延時(shí)1ms子程序</p>
36、;<p> ·上述程序每隔10ms執(zhí)行一次,就可以實(shí)現(xiàn)動(dòng)態(tài)顯示的目的。</p><p> LED動(dòng)態(tài)顯示程序模塊</p><p> 在采用動(dòng)態(tài)掃描方式時(shí),要使得LED顯示的比較均勻,且有足夠亮度,需設(shè)置適當(dāng)掃描頻率,一般采用間隔10ms對(duì)LED動(dòng)態(tài)掃描一次,每位LED顯示時(shí)間為1ms。聰顯示緩沖區(qū)分別讀取4位LED現(xiàn)實(shí)的數(shù)據(jù)的位碼和段碼,送到P1口依次顯示每一
37、位,每一位顯示1ms,在設(shè)置閾值溫度時(shí),當(dāng)前調(diào)整為具有閃爍功能,來(lái)提示當(dāng)前調(diào)整的是哪一位。因此,在每一位顯示前都要進(jìn)行中斷判斷,該位是否為閃爍位,再?zèng)Q定進(jìn)行正常顯示還是閃爍顯示。</p><p> 圖2-6 4-LED顯示器硬件電路連接 </p><p> 2.2.4溫度檢測(cè)電路</p><p> 系統(tǒng)中溫度的檢測(cè)
38、與數(shù)字化輸出由單總線數(shù)字溫度傳感器 DS18B20 完成。DS18B20具有3引腳TO-92小體積封裝形式;溫度測(cè)量范圍為-55℃~+125℃,可編程為9位~12位A/D轉(zhuǎn)換精度,測(cè)溫分辨率可達(dá)0.0625℃,被測(cè)溫度用符號(hào)擴(kuò)展的16位數(shù)字量方式串行輸出;其工作電源既可在遠(yuǎn)端引入,也可采用寄生電源方式產(chǎn)生;多個(gè)DS18B20可以并聯(lián)到3根或2根線上,CPU只需一根端口線就能與諸多DS18B20通信,占用微處理器的端口較少,可節(jié)省大量的引
39、線和邏輯電路。</p><p> 2-7 溫度檢測(cè)電路</p><p> 如圖2-7所示,溫度檢測(cè)器件DS18B20通過(guò)數(shù)據(jù)線DS連接單片機(jī)的P3.4口。DS18B20完成溫度轉(zhuǎn)換后,就把測(cè)的溫度與TH,TL作比較。若T>TH 或T<TL,則將該器件內(nèi)的報(bào)警標(biāo)志置位,并對(duì)主機(jī)發(fā)出的告警搜索命令作出響應(yīng)。</p><p> 圖2-8 溫度采集程序
40、框圖</p><p> 單片機(jī)和DS18B20之間的信號(hào)傳送如圖2-8所示。DS18B20復(fù)位有兩種形式,一是掉電,此時(shí)DS18B20沒(méi)用供電能源,故不能工作,當(dāng)重新接上電源后恢復(fù)工作。二是當(dāng)單片機(jī)P3.7持續(xù)低電平超過(guò)480ms的時(shí)候,DS18B20產(chǎn)生復(fù)位,所以當(dāng)單片機(jī)由于某些原因使得P3.7長(zhǎng)時(shí)間低電平的時(shí)候會(huì)使DS18B20復(fù)位,使系統(tǒng)產(chǎn)生不穩(wěn)定。當(dāng)DS18B20復(fù)位后單片機(jī)發(fā)送一條Skip Rom命令
41、,使得單片機(jī)跳過(guò)對(duì)DS18B20的檢測(cè),Skip Rom命令的作用就是單片機(jī)對(duì)DS18B20的識(shí)別,當(dāng)有多片DS18B20時(shí)這個(gè)命令就可以區(qū)分出不同的DS18B20,從而使單片機(jī)對(duì)不同的DS18B20發(fā)出指令。系統(tǒng)中只有一片DS18B20故不必采用Skip Rom命令而直接發(fā)送執(zhí)行命令即可。單片機(jī)直接發(fā)送溫度轉(zhuǎn)換命令,此時(shí)單片機(jī)或外接電源必須提供足夠的電流(最少1mA),持續(xù)時(shí)間為500ms。因DS18B20溫度轉(zhuǎn)換時(shí)間長(zhǎng)達(dá)500ms。
42、之后由單片機(jī)發(fā)出讀數(shù)據(jù)命令,從DS18B20中讀出溫度數(shù)據(jù),并在液晶顯示器中顯示。</p><p> DS18B20的寫(xiě)時(shí)隙:當(dāng)主機(jī)將單總線DQ從邏輯高拉為低時(shí),即啟動(dòng)一個(gè)寫(xiě)時(shí)隙。所有的寫(xiě)時(shí)隙必須在(60——120)us完成,且在每個(gè)循環(huán)之間至少需要1us的恢復(fù)時(shí)間。在寫(xiě)“0”時(shí)隙期間,微控制器在整個(gè)時(shí)隙中將總線拉低;寫(xiě)“1”時(shí)隙期間。微控制器將總線拉低,在時(shí)隙起始后15us之內(nèi)釋放總線。讀時(shí)隙:DS18B20
43、器件僅在主機(jī)發(fā)出時(shí)隙時(shí),才向主機(jī)傳輸數(shù)據(jù)。所以在主機(jī)發(fā)出數(shù)據(jù)命令后,必須馬上產(chǎn)生讀時(shí)隙,以便DS18B20能傳輸數(shù)據(jù)。所有讀時(shí)隙至少要60us。且在兩次獨(dú)立的讀時(shí)隙之間,至少要1us的恢復(fù)時(shí)間。每個(gè)讀時(shí)隙都由主機(jī)發(fā)起,至少拉低總線1us。在主機(jī)發(fā)起讀時(shí)隙后,DS18B20器件才開(kāi)始在總線上發(fā):“0”或“1”.若DS18B20發(fā)送“1”,則保持總線為高電平。若發(fā)送“0”,則拉低總線當(dāng)發(fā)送0時(shí),DS18B20在起始時(shí)隙之后保持有效時(shí)間15u
44、s。因而主機(jī)在讀時(shí)隙期間,必須釋放總線。并且在時(shí)隙起始后的15us之內(nèi)采樣總線狀態(tài)。</p><p> 圖2-9 DS18B20讀取時(shí)序圖</p><p> DS18B20初始化子程序:</p><p><b> RESET:</b></p><p> PUSH B ;保存B 寄存器</p>&l
45、t;p> PUSH A 保存A 寄存器</p><p> MOV A,#4 ;設(shè)置循環(huán)次數(shù)</p><p> CLR P1.0 ;發(fā)出復(fù)位脈沖</p><p> MOV B,#250 ;計(jì)數(shù)250 次</p><p> DJNZ B,$ ;保持低電平500us</p><p> SETB Pl.0 ;
46、釋放總線</p><p> MOV B,#6 ;設(shè)置時(shí)間常數(shù)</p><p> CLR C ;清存在信號(hào)標(biāo)志</p><p> WAITL: JB Pl.0,WH ;若總線釋放跳出循環(huán)</p><p> DJNZ B,WAITL ;總線低等待</p><p> DJNZ ACC,WAITL;釋放總線等待一段時(shí)
47、間</p><p> SJMP SHORT</p><p> WH: MOV B,#111</p><p> WH1: ORL C,P1.0</p><p> DJNZ B,WH1 ;存在時(shí)間等待</p><p> SHORT: POP A</p><p><b> POP
48、 B</b></p><p><b> RET</b></p><p><b> 2.2.5報(bào)警電路</b></p><p> 如圖2-10所示,報(bào)警電路由三極管和蜂鳴器構(gòu)成,其中電阻起限流作用。這種接法也是低電平驅(qū)動(dòng)。當(dāng)P3.7為低電平時(shí),三極管導(dǎo)通,C端產(chǎn)生高電平,蜂鳴器就發(fā)出鳴響。即當(dāng)DS18B20
49、檢測(cè)到的實(shí)時(shí)溫度值超出預(yù)設(shè)溫度值范圍時(shí),產(chǎn)生信號(hào)發(fā)給單片機(jī),單片機(jī)使P3.7持續(xù)產(chǎn)生低電平,使得蜂鳴器鳴響。</p><p> 圖2.10 蜂鳴器報(bào)警電路</p><p><b> 結(jié)論</b></p><p> 本次智能溫度控制系統(tǒng)實(shí)現(xiàn)了模塊化,高精度,低成本,可擴(kuò)展性等思想。首先是模塊化方面,本設(shè)計(jì)的硬件電路都盡量采用了模塊化設(shè)計(jì),如
50、溫度采集電路,液晶顯示電路,智能報(bào)警電路等等,各個(gè)電路模塊負(fù)責(zé)不同的功能,分工明確,布局走線也十分簡(jiǎn)單。在軟件設(shè)計(jì)方面也采用了模塊化的思想,方法是每個(gè)功能子程序化,主程序只對(duì)各個(gè)功能模塊的標(biāo)志位進(jìn)行判斷,依據(jù)標(biāo)志位來(lái)決定程序的走向。同時(shí),不使用的模塊進(jìn)入停止?fàn)顟B(tài),極大限度的降低了功耗。在降低成本方面,本系統(tǒng)采用了較為廉價(jià)的單片機(jī)AT89S52其程序存儲(chǔ)器有8K之多,在眾多單片機(jī)中有著最高性價(jià)比,數(shù)字溫度傳感器DS18B20也比較廉價(jià),而
51、且最重要的還是它不用外加電路進(jìn)行A/D轉(zhuǎn)換,大大提高了精度,報(bào)警方面采用了最為廉價(jià)而且方便的蜂鳴器。本系統(tǒng)的應(yīng)用范圍十分的寬廣,溫度傳感器DS18B20的測(cè)量范圍-55℃到120℃。</p><p><b> 參考文獻(xiàn)</b></p><p> [1]黃友銳. 單片機(jī)原理及應(yīng)用 [M]. 合肥:合肥工業(yè)大學(xué)出版社,2006</p><p>
52、; [2]韓志軍. 單片機(jī)系統(tǒng)設(shè)計(jì)與應(yīng)用實(shí)例 [M]. 北京:機(jī)械工業(yè)出版社,2009</p><p> [3]張大明. 單片微機(jī)控制應(yīng)用技術(shù)實(shí)操指導(dǎo)書(shū) [M]. 北京:機(jī)械工業(yè)出版社,2007</p><p> [4]沙占友. 單片機(jī)應(yīng)用技術(shù)與實(shí)例 [M] . 北京:電子工業(yè)出版社,2004</p><p><b> 附錄A</b>
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機(jī)課程設(shè)計(jì)——基于51單片機(jī)的溫度控制系統(tǒng)設(shè)計(jì)
- 單片機(jī)溫度控制系統(tǒng)課程設(shè)計(jì)
- 課程設(shè)計(jì)--單片機(jī)溫度控制系統(tǒng)
- 單片機(jī)課程設(shè)計(jì)--基于51單片機(jī)的溫度控制系統(tǒng)設(shè)計(jì)
- 課程設(shè)計(jì)---基于單片機(jī)的溫度控制系統(tǒng)
- 單片機(jī)課程設(shè)計(jì)(溫度控制系統(tǒng))
- 單片機(jī)課程設(shè)計(jì)--溫度控制系統(tǒng)設(shè)計(jì)
- 基于單片機(jī)的溫度控制系統(tǒng)課程設(shè)計(jì)報(bào)告
- 單片機(jī)課程設(shè)計(jì)--數(shù)字溫度控制系統(tǒng)
- 單片機(jī)課程設(shè)計(jì)---基于at89s52 單片機(jī)的溫度控制系統(tǒng)
- 單片機(jī)課程設(shè)計(jì)---基于at89s52單片機(jī)的溫度控制系統(tǒng)
- 單片機(jī)課程設(shè)計(jì)-- 基于單片機(jī)的電梯控制系統(tǒng)
- 基于51單片機(jī)的溫度控制系統(tǒng)的設(shè)計(jì)課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)--基于單片機(jī)的水位控制系統(tǒng)設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)--基于單片機(jī)的水位控制系統(tǒng)設(shè)計(jì)
- 課程設(shè)計(jì)---基于51單片機(jī)的多路溫度采集控制系統(tǒng)設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)---基于單片機(jī)溫度測(cè)量系統(tǒng)設(shè)計(jì)
- 溫室大棚溫度調(diào)節(jié)控制系統(tǒng)(單片機(jī)課程設(shè)計(jì))
- 單片機(jī)溫度控制課程設(shè)計(jì)
- 微機(jī)控制課程設(shè)計(jì)告--基于單片機(jī)的溫度pid控制系統(tǒng)的設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論