




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、I畢業(yè)論文設(shè)計(jì)畢業(yè)論文設(shè)計(jì)基于基于5151單片機(jī)的溫度控制系統(tǒng)單片機(jī)的溫度控制系統(tǒng)II摘要在日常生活中溫度在我們身邊無(wú)時(shí)不在,溫度的控制和應(yīng)用在各個(gè)領(lǐng)域都有重要的作用。很多行業(yè)中都有大量的用電加熱設(shè)備,和溫度控制設(shè)備,如用于報(bào)警的溫度自動(dòng)報(bào)警系統(tǒng),熱處理的加熱爐,用于融化金屬的坩鍋電阻爐及各種不同用途的溫度箱等,這些都采用單片機(jī)技術(shù),利用單片機(jī)語(yǔ)言程序?qū)λ鼈冞M(jìn)行控制。而單片機(jī)技術(shù)具有控制和操作使用方便、結(jié)構(gòu)簡(jiǎn)單便于修改和維護(hù)、靈活性大且具有一定的智能性等特點(diǎn),可以精確的控制技術(shù)標(biāo)準(zhǔn),提高了溫控指標(biāo),也大大的提高了產(chǎn)品的質(zhì)量和性能.由于單片機(jī)技術(shù)的優(yōu)點(diǎn)突出,智能化溫度控制技術(shù)正被廣泛地采用。本文
2、介紹了基于單片機(jī) AT89C51 的溫度控制系統(tǒng)的設(shè)計(jì)方案與軟硬件實(shí)現(xiàn)。采用溫度傳感器 DS18B20 采集溫度數(shù)據(jù),7 段數(shù)碼管顯示溫度數(shù)據(jù),按鍵設(shè)置溫度上下限,當(dāng)溫度低于設(shè)定的下限時(shí),點(diǎn)亮綠色發(fā)光二極管,當(dāng)溫度高于設(shè)定的上限時(shí),點(diǎn)亮紅色發(fā)光二極管。給出了系統(tǒng)總體框架、程序流程圖和 Protel 原理圖,并在硬件平臺(tái)上實(shí)現(xiàn)了所設(shè)計(jì)功能.關(guān)鍵詞關(guān)鍵詞:?jiǎn)纹瑱C(jī)溫度控制系統(tǒng)溫度傳感器IIIAbstractIn daily life, the temperature in our side the ever-present, the control of the temperature and th
3、e application in various fields all have important role。 Many industry there are a large number of electric heating equipment, and the temperature control equipment, such as used for alarm automatic temperature alarm systems, heat treatment furnace, used to melt metal crucible resistance furnace, an
4、d all kinds of different USES of temperature box and so on, these using single chip microcomputer, using single chip computer language program to control them. And single-chip microcomputer technology has control and convenient in operation, easy to modify and maintenance of simple structure, flexib
5、ility is large and has some of the intelligence and other characteristics, we can accurately control technology standard to improve the temperature control index, also greatly improve the quality of the products and performance. Because of the advantages of the single chip microcomputer intelligent
6、temperature control technology outstanding, is being widely adopted。 This paper introduces the temperature control based on single chip microcomputer AT89C51 design scheme of the system and the hardware and software implementation。 The temperature sensor DS18B20 collection temperature data, 7 period
7、 of digital pipe display, the upper and lower limits of temperature button when temperature below the setting of the lower limit, light green leds, when the temperature is higher than the set on the limit, light red leds. Given the system framework and program flow chart and principle chart, and in
8、Protel hardware platform to realize the function of the design。 Keywords: SCM Temperature control systemTemperature sensorsIV目錄摘要摘要 IABSTRACTII第一章前言第一章前言 11。1 溫度控制系統(tǒng)設(shè)計(jì)發(fā)展歷史及意義 11.2 溫度控制系統(tǒng)的目的 11。3 溫度控制系統(tǒng)完成的功能 1第二章總體設(shè)計(jì)方案第二章總體設(shè)計(jì)方案 22。1 方案一 22.2 方案二 23。1 DS18B20 簡(jiǎn)介 53.1.1DS18B20 封裝與引腳 53.1.2 DS18B20 的簡(jiǎn)單性
9、能 53。2 DS18B20 的工作原理 53。3 DS18B20 的測(cè)溫原理 63。3.1 測(cè)溫原理:63.3。2 DS18B20 的溫度采集過(guò)程 9第四章單片機(jī)接口設(shè)計(jì)第四章單片機(jī)接口設(shè)計(jì) 104.1 設(shè)計(jì)原則 104。2 單片機(jī)引腳連接 104。2。1 單片機(jī)引腳圖 104。2。2 串口引腳 11第五章硬件電路設(shè)計(jì)第五章硬件電路設(shè)計(jì) 12V5。1 主要硬件電路設(shè)計(jì) 125。2 軟件系統(tǒng)設(shè)計(jì) 155.2。1 軟件系統(tǒng)設(shè)計(jì) 155.2。2 程序組成 16結(jié)束語(yǔ)結(jié)束語(yǔ) 20致謝致謝 21附錄附錄 22參考文獻(xiàn)參考文獻(xiàn) 341第一章前言1.11.1溫度控制系統(tǒng)設(shè)計(jì)發(fā)展歷史及意義溫度控制系統(tǒng)設(shè)計(jì)發(fā)
10、展歷史及意義溫度控制系統(tǒng)廣泛應(yīng)用于社會(huì)生活的各個(gè)領(lǐng)域 ,如家電、汽車、材料、電力電子等 ,常用的控制電路根據(jù)應(yīng)用場(chǎng)合和所要求的性能指標(biāo)有所不同 , 在工業(yè)企業(yè)中,如何提高溫度控制對(duì)象的運(yùn)行性能一直以來(lái)都是控制人員和現(xiàn)場(chǎng)技術(shù)人員努力解決的問(wèn)題。這類控制對(duì)象慣性大,滯后現(xiàn)象嚴(yán)重,存在很多不確定的因素,難以建立精確的數(shù)學(xué)模型,從而導(dǎo)致控制系統(tǒng)性能不佳,甚至出現(xiàn)控制不穩(wěn)定、失控現(xiàn)象。傳統(tǒng)的繼電器調(diào)溫電路簡(jiǎn)單實(shí)用 ,但由于繼電器動(dòng)作頻繁 ,可能會(huì)因觸點(diǎn)不良而影響正常工作.控制領(lǐng)域還大量采用傳統(tǒng)的 PID 控制方式,但 PID 控制對(duì)象的模型難以建立,并且當(dāng)擾動(dòng)因素不明確時(shí),參數(shù)調(diào)整不便仍是普遍存在的問(wèn)題
11、。而采用數(shù)字溫度傳感器 DS18B20,因其內(nèi)部集成了 A/D轉(zhuǎn)換器,使得電路結(jié)構(gòu)更加簡(jiǎn)單,而且減少了溫度測(cè)量轉(zhuǎn)換時(shí)的精度損失,使得測(cè)量溫度更加精確。數(shù)字溫度傳感器 DS18B20 只用一個(gè)引腳即可與單片機(jī)進(jìn)行通信,大大減少了接線的麻煩,使得單片機(jī)更加具有擴(kuò)展性。由于 DS18B20 芯片的小型化,更加可以通過(guò)單跳數(shù)據(jù)線就可以和主電路連接,故可以把數(shù)字溫度傳感器 DS18B20 做成探頭,探入到狹小的地方,增加了實(shí)用性.更能串接多個(gè)數(shù)字溫度傳感器 DS18B20 進(jìn)行范圍的溫度檢測(cè)。1 1。2 2溫度控制系統(tǒng)的目的溫度控制系統(tǒng)的目的溫度控制在日常生活及工業(yè)領(lǐng)域應(yīng)用相當(dāng)廣泛,比如溫室、水池、發(fā)酵
12、缸、電源等場(chǎng)所的溫度控制。而以往溫度控制是由人工完成的而且不夠重視,其實(shí)在很多場(chǎng)所溫度都需要監(jiān)控以防止發(fā)生意外.針對(duì)此問(wèn)題,本系統(tǒng)設(shè)計(jì)的目的是實(shí)現(xiàn)一種可連續(xù)高精度調(diào)溫的溫度監(jiān)測(cè)和控制系統(tǒng),實(shí)現(xiàn)對(duì)溫度的實(shí)時(shí)檢測(cè),具有提醒和控制的功能,本設(shè)計(jì)的內(nèi)容是溫度測(cè)試控制系統(tǒng),控制對(duì)象是溫度。它的特點(diǎn)在于應(yīng)用廣泛,功能強(qiáng)大,小巧美觀,便于攜帶,是一款既實(shí)用又廉價(jià)的控制系統(tǒng)。1 1。3 3溫度控制系統(tǒng)完成的功能溫度控制系統(tǒng)完成的功能本設(shè)計(jì)是對(duì)溫度進(jìn)行實(shí)時(shí)監(jiān)測(cè)與控制,設(shè)計(jì)的溫度控制系統(tǒng)實(shí)現(xiàn)了基本的溫度控制功能:此設(shè)計(jì)中溫度恒定值設(shè)置為 60,上下跳轉(zhuǎn)溫度為 1,設(shè)計(jì)精度值為 0。1。當(dāng)溫度低于設(shè)定下限溫度即 5
13、9時(shí),綠燈亮,報(bào)警提醒需要外界的加熱措施.當(dāng)溫度上升到上限溫度時(shí),停止加溫,紅燈亮保持溫度。當(dāng)溫度高于設(shè)定上限溫度即 61時(shí),紅燈亮,需要外界采取降溫措施(本設(shè)計(jì)中沒(méi)有附加外界的加熱和降溫措施) 。當(dāng)溫度下降到恒溫度時(shí),停止降溫。溫度在上下限溫度之間時(shí),執(zhí)行機(jī)構(gòu)不執(zhí)行.2第二章總體設(shè)計(jì)方案2.12.1 方案一方案一利用溫度傳感器將溫度測(cè)出,通過(guò)某種電信號(hào)傳給外部電路產(chǎn)生一種變化,然后由外部電路控制裝置的開(kāi)啟.測(cè)溫電路的設(shè)計(jì),可以使用熱敏電阻之類的傳感器件利用其感溫效應(yīng), (如電阻隨溫度的變化有一個(gè)變化的曲線,即利用它的變化特性曲線)溫度的變化使得電阻發(fā)生了變化根據(jù)歐姆定律,電阻的變化會(huì)帶來(lái)電流
14、或這電壓的變化.再將隨被測(cè)溫度變化的電壓或電流采集過(guò)來(lái),然后進(jìn)行模擬信號(hào)換成數(shù)字信號(hào)(A/D)轉(zhuǎn)換,將數(shù)字信號(hào)送入單片機(jī),用單片機(jī)進(jìn)行數(shù)據(jù)的處理,將溫度顯示在電路上,這樣就可以將被測(cè)溫度顯示出來(lái).最后還有外圍的控制電路,采取一定的措施來(lái)控制產(chǎn)生溫度的電路,如加溫、降溫、保持不動(dòng)、或者報(bào)警.這種設(shè)計(jì)需要用到 A/D 轉(zhuǎn)換電路,感溫電路比較麻煩。設(shè)計(jì)流程圖如圖 2。1傳感器溫度檢測(cè)電路A/D 轉(zhuǎn)換電路單片機(jī)處理電路顯示和控制溫度圖 2。1 設(shè)計(jì)流程圖2.22.2方案二方案二利用溫度傳感器芯片直接將溫度數(shù)據(jù)測(cè)出,之后通過(guò)單片機(jī)程序控制溫度的上、下限值,用外部電路產(chǎn)生顯示和控制加熱和降,來(lái)達(dá)到設(shè)計(jì)的要
15、求。考慮使用溫度傳感器,結(jié)合單片機(jī)電路設(shè)計(jì),采用一只 DS18B20 溫度傳感器,直接讀取被測(cè)溫度值,之后進(jìn)行轉(zhuǎn)換,依次完成設(shè)計(jì)要求。比較以上兩種方案,很容易看出,采用方案二,電路比較簡(jiǎn)單,軟件設(shè)計(jì)容易實(shí)現(xiàn),故實(shí)際設(shè)計(jì)中擬采用方案二。在設(shè)計(jì)中溫度的控制流程如圖 2。2 所示.3開(kāi) 始初始化 DS18B20顯示當(dāng)前溫度紅燈亮設(shè)定溫度恒定值綠燈亮判斷當(dāng)前溫度值超過(guò)設(shè)定溫度上限低于設(shè)定溫度下限圖 2.2 溫度控制整體流程在本系統(tǒng)的總體電路設(shè)計(jì)方框圖如圖 2。3 所示,它由五部分組成:?jiǎn)纹瑱C(jī) AT89C51控制部分;DS18B20 溫度傳感器采集部分;3 位 LED 數(shù)碼管顯示部分;按鍵調(diào)節(jié)部分;二極
16、管報(bào)警部分。4DS18B20溫度采集電路LED 顯示電路二極管顯示報(bào)警電路AT89C51單片機(jī)控制電路按鍵調(diào)節(jié)電路圖 2.3 溫度計(jì)電路總體設(shè)計(jì)方案整個(gè)設(shè)計(jì)總體分為以下幾個(gè)部分:控制部分、顯示部分、溫度采集部分、按鍵控制部分.1、控制部分由單片機(jī) AT89C51 芯片在程序控制和外圍簡(jiǎn)單組合電路作用下運(yùn)行,和控制溫度的上、下限,和 LED 的溫度顯示??刂瓢l(fā)光二級(jí)管的亮滅,起到提醒報(bào)警功能。2、顯示部分顯示電路采用 3 位 7 斷共陽(yáng) LED 數(shù)碼管,從 P3 口送數(shù),P0 口掃描。有兩部分顯示電路,第一是顯示 DS18B20 溫度傳感器所檢測(cè)的當(dāng)前溫度,第二是設(shè)定恒定的溫度值。3、溫度采集部
17、分由 DS18B20 智能溫度傳感器直接采集被測(cè)溫度。4、按鍵控制部分由三個(gè)按鍵控制調(diào)節(jié),用來(lái)調(diào)節(jié)溫度的恒定限值,起到預(yù)設(shè)調(diào)節(jié)作用。5第三章 溫度傳感器 DS18B203 3。1 1 DS18B20DS18B20簡(jiǎn)介簡(jiǎn)介3。1。1DS18B20封裝與引腳DS18B20 封裝與引腳如圖 3.1圖 3。1DS18B20 的封裝與引腳3.1.2DS18B20的簡(jiǎn)單性能1、 獨(dú)特的單線接口方式,DS18B20 在與微處理器連接時(shí)僅需要一條口線即可實(shí)現(xiàn)微處理器與 DS18B20 的雙向通訊。2、 測(cè)溫范圍 55125,固有測(cè)溫分辨率 0。5。3、 支持多點(diǎn)組網(wǎng)功能,多個(gè) DS18B20 可以并聯(lián)在唯一的
18、三線上,實(shí)現(xiàn)多點(diǎn)測(cè)溫。4、 工作電源: 35V/DC.5、 在使用中不需要任何外圍元件.6、 測(cè)量結(jié)果以 912 位數(shù)字量方式串行傳送。7、 不銹鋼保護(hù)管直徑 6 。8、 適用于 DN1525, DN40DN250 各種介質(zhì)工業(yè)管道和狹小空間設(shè)備測(cè)溫。9、 標(biāo)準(zhǔn)安裝螺紋 M10X1, M12X1。5, G1/2”任選。10、 PVC 電纜直接出線或德式球型接線盒出線,便于與其它電器設(shè)備連接。3 3。2DS18B202DS18B20的工作原理的工作原理DS18B20 內(nèi)部的低溫度系數(shù)振蕩器是一個(gè)振蕩頻率隨溫度變化很小的振蕩器,為計(jì)數(shù)6器 1 提供一頻率穩(wěn)定的計(jì)數(shù)脈沖。高溫度系數(shù)振蕩器是一個(gè)振蕩頻
19、率對(duì)溫度很敏感的振蕩器,為計(jì)數(shù)器 2 提供一個(gè)頻率隨溫度變化的計(jì)數(shù)脈沖。初始時(shí),溫度寄存器被預(yù)置成-55,每當(dāng)計(jì)數(shù)器 1 從預(yù)置數(shù)開(kāi)始減計(jì)數(shù)到 0 時(shí),溫度寄存器中寄存的溫度值就增加 1,這個(gè)過(guò)程重復(fù)進(jìn)行,直到計(jì)數(shù)器 2 計(jì)數(shù)到 0 時(shí)便停止.初始時(shí),計(jì)數(shù)器 1 預(yù)置的是與55相對(duì)應(yīng)的一個(gè)預(yù)置值。以后計(jì)數(shù)器 1 每一個(gè)循環(huán)的預(yù)置數(shù)都由斜率累加器提供.為了補(bǔ)償振蕩器溫度特性的非線性性,斜率累加器提供的預(yù)置數(shù)也隨溫度相應(yīng)變化。計(jì)數(shù)器 1 的預(yù)置數(shù)也就是在給定溫度處使溫度寄存器寄存值增加 1計(jì)數(shù)器所需要的計(jì)數(shù)個(gè)數(shù).DS18B20 內(nèi)部的比較器以四舍五入的量化方式確定溫度寄存器的最低有效位。在計(jì)數(shù)器
20、2 停止計(jì)數(shù)后,比較器將計(jì)數(shù)器 1 中的計(jì)數(shù)剩余值轉(zhuǎn)換為溫度值后與 0。25進(jìn)行比較,若低于 0。25,溫度寄存器的最低位就置 0;若高于 0.25,最低位就置 1;若高于0.75時(shí),溫度寄存器的最低位就進(jìn)位然后置 0。這樣,經(jīng)過(guò)比較后所得的溫度寄存器的值就是最終讀取的溫度值了,其最后位代表 0。5,四舍五入最大量化誤差為1/2LSB,即 0.25。溫度寄存器中的溫度值以 9 位數(shù)據(jù)格式表示,最高位為符號(hào)位,其余 8 位以二進(jìn)制補(bǔ)碼形式表示溫度值.測(cè)溫結(jié)束時(shí),這 9 位數(shù)據(jù)轉(zhuǎn)存到暫存存儲(chǔ)器的前兩個(gè)字節(jié)中,符號(hào)位占用第一字節(jié),8 位溫度數(shù)據(jù)占據(jù)第二字節(jié).DS18B20 測(cè)量溫度時(shí)使用特有的溫度測(cè)
21、量技術(shù)。DS18B20 內(nèi)部的低溫度系數(shù)振蕩器能產(chǎn)生穩(wěn)定的頻率信號(hào);同樣的,高溫度系數(shù)振蕩器則將被測(cè)溫度轉(zhuǎn)換成頻率信號(hào)。當(dāng)計(jì)數(shù)門打開(kāi)時(shí),DS18B20 進(jìn)行計(jì)數(shù),計(jì)數(shù)門開(kāi)通時(shí)間由高溫度系數(shù)振蕩器決定。芯片內(nèi)部還有斜率累加器,可對(duì)頻率的非線性度加以補(bǔ)償,測(cè)量結(jié)果存入溫度寄存器中.一般情況下的溫度值應(yīng)該為 9 位,但因符號(hào)位擴(kuò)展成高 8 位,所以最后以 16 位補(bǔ)碼形式讀出。DS18B20 工作過(guò)程一般遵循以下協(xié)議:初始化ROM 操作命令-存儲(chǔ)器操作命令處理數(shù)據(jù).3 3。3 3DS18B20DS18B20的測(cè)溫原理的測(cè)溫原理3。3。1測(cè)溫原理每一片 DSl8B20 在其 ROM 中都存有其唯一的
22、48 位序列號(hào),在出廠前已寫入片內(nèi) ROM 中。主機(jī)在進(jìn)入操作程序前必須用讀 ROM(33H)命令將該 DSl8B20 的序列號(hào)讀出。ROM 命7令代碼見(jiàn)表 3。1。程序可以先跳過(guò) ROM,啟動(dòng)所有 DSl8B20 進(jìn)行溫度變換,之后通過(guò)匹配 ROM,再逐一地讀回每個(gè) DSl8B20 的溫度數(shù)據(jù)。DS18B20 的測(cè)溫原理,低溫度系數(shù)晶振的振蕩頻率受溫度的影響很小,用于產(chǎn)生固定頻率的脈沖信號(hào)送給減法計(jì)數(shù)器 1,高溫度系數(shù)晶振隨溫度變化其震蕩頻率明顯改變,所產(chǎn)生的信號(hào)作為減法計(jì)數(shù)器 2 的脈沖輸入,還隱含著計(jì)數(shù)門,當(dāng)計(jì)數(shù)門打開(kāi)時(shí),DS18B20 就對(duì)低溫度系數(shù)振蕩器產(chǎn)生的時(shí)鐘脈沖后進(jìn)行計(jì)數(shù),進(jìn)而
23、完成溫度測(cè)量。計(jì)數(shù)門的開(kāi)啟時(shí)間由高溫度系數(shù)振蕩器來(lái)決定,每次測(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 重新開(kāi)始對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行計(jì)數(shù),如此循環(huán)直到減法計(jì)數(shù)器 2 計(jì)數(shù)到 0 時(shí),停止溫度寄存器值的累加,此時(shí)溫度寄存器中的數(shù)值即為所測(cè)溫度。圖 3.2 中的斜率累加器用于補(bǔ)償和修正測(cè)溫過(guò)程中的非線性,其輸出用于修正減法計(jì)數(shù)
24、器的預(yù)置值,只要計(jì)數(shù)門仍未關(guān)閉就重復(fù)上述過(guò)程,直至溫度寄存器值達(dá)到被測(cè)溫度值。8表 3。1 ROM 操作命令指令約定代碼功 能讀 ROM33H讀 DS18B20 ROM 中的編碼符合 ROM55H發(fā)出此命令之后,接著發(fā)出 64 位 ROM 編碼,訪問(wèn)單線總線上與該編碼相對(duì)應(yīng)的 DS18B20 使之作出響應(yīng),為下一步對(duì)該 DS18B20 的讀寫作準(zhǔn)備搜索 ROM0F0H用于確定掛接在同一總線上 DS18B20 的個(gè)數(shù)和識(shí)別 64位 ROM 地址,為操作各器件作好準(zhǔn)備跳過(guò) ROM0CCH忽略 64 位 ROM 地址,直接向 DS18B20 發(fā)溫度變換命令,適用于單片工作.告警搜索命 令0ECH執(zhí)行
25、后,只有溫度超過(guò)設(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將 E2PRAM 中第 3,4 字節(jié)內(nèi)容復(fù)制到 E2PRAM 中重調(diào) E2PRAM0BBH將 E2PRAM 中內(nèi)容恢復(fù)到 RAM 中的第 3,4 字節(jié)讀供電方式0B4H讀 DS18B20 的供電模式,寄生供電時(shí) DS18B20 發(fā)送“0”,外接電源供電 DS18
26、B20 發(fā)送“19計(jì)數(shù)器斜率累加器減到 0減法計(jì)數(shù)器預(yù) 置低溫度系數(shù)振 蕩 器高溫度系數(shù)振 蕩 器計(jì)數(shù)比較器預(yù) 置溫度寄存器減到 0圖 3.2 測(cè)溫原理內(nèi)部裝置3。3.2 DS18B20的溫度采集過(guò)程由于 DS18B20 單線通信功能是分時(shí)完成的,他有嚴(yán)格的時(shí)隙概念,因此讀寫時(shí)序很重要,系統(tǒng)對(duì) DS18B20 的各種操作必須按協(xié)議進(jìn)行.操作協(xié)議為:初始化 DS18B20(發(fā)復(fù)位脈沖)發(fā) ROM 功能命令發(fā)存儲(chǔ)器操作命令處理數(shù)據(jù)。溫度的采集流程如圖 3.3 所示。初始化DS18B20跳過(guò) ROM匹配溫度變換延時(shí) 1S跳過(guò) ROM匹配讀暫存器轉(zhuǎn)換成顯示碼數(shù)碼管顯示圖 3。3 DS18B20 測(cè)溫流
27、程10第四章單片機(jī)接口設(shè)計(jì)4 4。1 1 設(shè)計(jì)原則設(shè)計(jì)原則DS18B20 有 2 種供電方式,一種是直流電源,還有一種是寄生蟲(chóng)方式供電。采用電源供電方式,此時(shí) DS18B20 的 1 腳接地,2 腳作為信號(hào)線,3 腳接電源。電源是利用直流穩(wěn)壓電源。當(dāng) DS18B20 處于寫存儲(chǔ)器操作和溫度 A/D 變換操作時(shí),總線上必須有強(qiáng)的上拉,上拉開(kāi)啟時(shí)間最大為 10 s.采用寄生電源供電方式是 VDD和 GND 端均接地。由于單線制只有一根線,因此發(fā)送接收口必須是三狀態(tài)的。主機(jī)控制 DS18B20 完成溫度轉(zhuǎn)換必須經(jīng)過(guò) 3 個(gè)步驟:初始化;ROM 操作指令;存儲(chǔ)器操作指令。4 4。2 2 單片機(jī)引腳連接
28、單片機(jī)引腳連接4。2.1單片機(jī)引腳圖單片機(jī)引腳如圖 4。1 所示。圖 4。1 單片機(jī)引腳114.2。2串口引腳串口引腳的連接圖如附錄 1。12第五章硬件電路設(shè)計(jì)5 5。1 1 主要硬件電路設(shè)計(jì)主要硬件電路設(shè)計(jì)硬件電路主要包括:顯示電路,DS18B20溫度傳感器檢測(cè)電路,按鍵電路,晶振電路,二極管顯示報(bào)警電路,電源電路.(1) 顯示電路顯示電路采用了7段共陰數(shù)碼管掃描電路,通過(guò)單片機(jī)的P0。0到P0。7八個(gè)端口接數(shù)碼管的八個(gè)引腳,數(shù)碼管的9號(hào)引腳接地。用來(lái)顯示當(dāng)前檢測(cè)的溫度值,精確度為0。1。如圖5。1所示.節(jié)約了單片機(jī)的輸出端口,便于程序的編寫。本設(shè)計(jì)中還有一組數(shù)碼管由P2。0到P2.7連接,
29、除接口不同外其他一樣,如圖5.2。圖5.1 顯示測(cè)量結(jié)果電路圖圖5。2顯示限定溫度電路(2) DS18B20溫度傳感器檢測(cè)電路溫度采集通過(guò)數(shù)字化的溫度傳感器DS18B20,通過(guò)QD接向單片機(jī)的P3。0口.13DS18B20溫度傳感器電路如圖5。3所示。圖5。3 溫度傳感器電路引腳圖(3) 按鍵電路按鍵電路如圖5。4所示。由K2、K3、K4三個(gè)按鍵控制上、下限溫度值.P3。1接口接K4按鍵。P3.2接口接入K3按鍵。P3.3接口接K2按鍵。1。K2溫度上下限減少鍵:減少溫度上下限的值。2。K3溫度上下限增加鍵:增加溫度上下限的值.3。K4溫控開(kāi)關(guān)鍵:進(jìn)入溫控的切換鍵。圖5.4按鍵電路圖(4) 晶
30、振控制電路晶振采用的是12MHZ的標(biāo)準(zhǔn)晶振.接入單片機(jī)的XTAL1、XTAL2。晶振控制電路如圖5。5所示。14圖5.5晶振控制電路圖 (5) 復(fù)位電路復(fù)位電路采用了人工復(fù)位的方式,按下按鍵K1使單片機(jī)復(fù)位。直接接到單片機(jī)的RESET引腳。復(fù)位電路如圖5。6所示圖5。6復(fù)位電路圖(6)二極管顯示報(bào)警電路二極管顯示報(bào)警電路如圖5.7所示.通過(guò)單片機(jī)的P3。4和P3。5兩個(gè)端口送出,采用的是高電平驅(qū)動(dòng),使其發(fā)光發(fā)出警告。15圖5.7二極管顯示電路(8)電源部分電源部分才用的是直流穩(wěn)壓電源,產(chǎn)生5V的穩(wěn)定直流電壓.電源設(shè)計(jì)部分如圖5。8所示。圖5.8電源部分電路5 5。2 2 軟件系統(tǒng)設(shè)計(jì)軟件系統(tǒng)設(shè)
31、計(jì)5.2.1軟件系統(tǒng)設(shè)計(jì)一個(gè)應(yīng)用系統(tǒng)要完成各項(xiàng)功能,首先必須有較完善的硬件作保證。同時(shí)還必須得到相應(yīng)設(shè)計(jì)合理的軟件的支持,尤其是微機(jī)應(yīng)用高速發(fā)展的今天,許多由硬件完成的工作,都可通過(guò)軟件編程而代替。甚至有些必須采用很復(fù)雜的硬件電路才能完成的工作,用軟件編程有時(shí)會(huì)變得很簡(jiǎn)單,如數(shù)字濾波,信號(hào)處理等.因此充分利用其內(nèi)部豐富的硬件資源和軟件資源,采用與 C51 系列單片機(jī)相對(duì)應(yīng)的 51 匯編語(yǔ)言和結(jié)構(gòu)化程序設(shè)計(jì)方法進(jìn)行軟件編程。程序設(shè)計(jì)語(yǔ)言有三種:機(jī)器語(yǔ)言、匯編語(yǔ)言和高級(jí)語(yǔ)言。機(jī)器語(yǔ)言是機(jī)器唯一能“懂”的語(yǔ)言,用匯編語(yǔ)言或高級(jí)語(yǔ)言編寫的程序(稱為源程序)最終都必須翻譯成機(jī)器語(yǔ)言的程序(成為目標(biāo)程序)
32、,計(jì)算機(jī)才能“看懂,然后逐一執(zhí)行。16高級(jí)語(yǔ)言是面向問(wèn)題和計(jì)算過(guò)程的語(yǔ)言,它可通過(guò)于各種不同的計(jì)算機(jī),用戶編程時(shí)不必仔細(xì)了解所用的計(jì)算機(jī)的具體性能與指令系統(tǒng),而且語(yǔ)句的功能強(qiáng),常常一個(gè)語(yǔ)句已相當(dāng)于很多條計(jì)算機(jī)指令,于是用高級(jí)語(yǔ)言編制程序的速度比較快,也便于學(xué)習(xí)和交流,但是本系統(tǒng)卻選用了匯編語(yǔ)言。原因在于,本系統(tǒng)是編制程序工作量不大、規(guī)模較小的單片機(jī)微控制系統(tǒng),使用匯編語(yǔ)言可以不用像高級(jí)語(yǔ)言那樣占用較多的存儲(chǔ)空間,適合于存儲(chǔ)容量較小的系統(tǒng).同時(shí),本系統(tǒng)對(duì)位處理要求很高,需要解決大量的邏輯控制問(wèn)題。51 指令系統(tǒng)的指令長(zhǎng)度較短,它在存儲(chǔ)空間和執(zhí)行時(shí)間方面具有較高的效率,編成的程序占用內(nèi)存單元少,執(zhí)
33、行也非常的快捷,與本系統(tǒng)的應(yīng)用要求很適合。而且 AT89C51 指令系統(tǒng)有豐富的位操作(或稱位處理)指令,可以形成一個(gè)相當(dāng)完整的位操作指令子集,這是 AT89C51 指令系統(tǒng)主要的優(yōu)點(diǎn)之一.對(duì)于要求反應(yīng)靈敏與控制及時(shí)的工控、檢測(cè)等實(shí)時(shí)控制系統(tǒng)以及要求體積小、系統(tǒng)小的許多“電腦化產(chǎn)品,可以充分體現(xiàn)出匯編語(yǔ)言簡(jiǎn)明、整齊、執(zhí)行時(shí)間短和易于使用的特點(diǎn)。本裝置的軟件包括主程序、讀出溫度子程序、復(fù)位應(yīng)答子程序、寫入子程序、以及有關(guān)DS18B20的程序(初始化子程序、寫程序和讀程序) 。5。2。2 程序組成系統(tǒng)程序主要包括主程序,讀出溫度子程序,寫入子程序,門限調(diào)節(jié)子程序等。1)主程序主程序的主要功能是負(fù)責(zé)
34、溫度的實(shí)時(shí)顯示、讀出并處理 DS18B20 的測(cè)量的當(dāng)前溫度值,溫度測(cè)量每 1s 進(jìn)行一次。這樣可以在一秒之內(nèi)測(cè)量一次被測(cè)溫度,其程序流程見(jiàn)圖5。9 所示。通過(guò)調(diào)用讀溫度子程序把存入內(nèi)存儲(chǔ)中的整數(shù)部分與小數(shù)部分分開(kāi)存放在不同的兩個(gè)單元中,然后通過(guò)調(diào)用顯示子程序顯示出來(lái).17圖 5。9 主程序流程圖2)讀出溫度子程序讀出溫度子程序的主要功能是讀出 RAM 中的 9 字節(jié),在讀出時(shí)需進(jìn)行 CRC 校驗(yàn),校驗(yàn)有錯(cuò)時(shí)不進(jìn)行溫度數(shù)據(jù)的改寫,程序流程圖如圖 5。10 所示。 DS18B20 的各個(gè)命令對(duì)時(shí)序的要求特別嚴(yán)格,所以必須按照所要求的時(shí)序才能達(dá)到預(yù)期的目的,同時(shí),要注意讀進(jìn)來(lái)的是高位在后低位在前,
35、共有 12 位數(shù),小數(shù) 4 位,整數(shù) 7 位,還有一位符號(hào)位.18 圖 5.10 讀出溫度子程序跳過(guò) ROM 匹配命令寫入子程序溫度轉(zhuǎn)換命令顯示子程序(延時(shí))寫入子程序?qū)懭胱映绦駾S18B20 復(fù)位、應(yīng)答子程序DS18B20 復(fù)位、應(yīng)答子程序跳過(guò) ROM 匹配命令讀溫度命令子程序終 止南昌工程學(xué)院專科畢業(yè)設(shè)計(jì)(論文)- 19 -3)寫入子程序?qū)懭胱映绦虻牧鞒虉D如 5。11 所示.圖 5.11 寫入子程序進(jìn)位 C 清 0P3.0 清 0延時(shí) 12US帶進(jìn)位右移延時(shí) 46USP3.0 置 0R2 是否為 0終止開(kāi)始204)門限調(diào)節(jié)子程序門限調(diào)節(jié)子程序流程如圖 5.12 所示。圖 5。12 門限調(diào)節(jié)
36、電路21結(jié)束語(yǔ)本文詳細(xì)講述了系統(tǒng)設(shè)計(jì)方案,并給出了相關(guān)程序流程。本設(shè)計(jì)應(yīng)用性比較強(qiáng),可以應(yīng)用在倉(cāng)庫(kù)溫度、大棚溫度、機(jī)房溫度、水池等的監(jiān)控.另外,如果把本設(shè)計(jì)方案擴(kuò)展為多點(diǎn)溫度控制,加上上位機(jī),則可以實(shí)現(xiàn)遠(yuǎn)程溫度監(jiān)控系統(tǒng),將具有更大的應(yīng)用價(jià)值。本文的創(chuàng)新點(diǎn)在于詳細(xì)設(shè)計(jì)了基于單片機(jī) AT89C51 的溫度監(jiān)控系統(tǒng),設(shè)計(jì)程序已經(jīng)。此系統(tǒng)可廣泛用于溫度在 DS18B20 測(cè)溫范圍之內(nèi)的場(chǎng)合,有良好的應(yīng)用前景。由于單片機(jī)的各種優(yōu)越的特性,使得它的經(jīng)濟(jì)效益顯的更加突出,有很好的實(shí)用性.22附錄附錄 123原理電路總設(shè)計(jì)圖24附錄 2源程序:FK1 EQU 24H ;F(k)實(shí)測(cè)溫度 FK EQU 25H
37、;F(k)實(shí)測(cè)溫度暫存 RK EQU 26H ;R(k)給定溫度 SHI1 EQU 30H ;實(shí)測(cè)溫度十位 SHI2 EQU 31H ;實(shí)測(cè)溫度個(gè)位 SHI3 EQU 32H ;實(shí)測(cè)溫度小數(shù)位 GAO EQU 33H ;給定溫度十位 ZHO EQU 34H ;給定溫度個(gè)位 DI EQU 35H ;給定溫度小數(shù)位 CNT EQU 37H ;按鍵消抖計(jì)數(shù)器 LSB EQU 50H ;檢測(cè)溫度低 8 位 MSB EQU 51H ;檢測(cè)溫度高 8 位 K_INM BIT P3。1 ;DI 位設(shè)定溫度按鍵 K_INH BIT P3.2 ;ZHO 位設(shè)定溫度按鍵 KI BIT P3。3 ;GAO 位設(shè)定溫
38、度按鍵 DQ BIT P3。0 ;DS18B20 的溫度輸入口 ORG 0000H ;主程序入口地址 AJMP MAIN ;跳轉(zhuǎn)到主程序 ORG 000BH ;T0 中斷入口地址 ORG 001BH ;T1 中斷入口地址 ORG 0050HMAIN:MOV SP,60H ;堆棧指針初始化 MOV GAO,#0 ;置設(shè)定值顯示十位初值 MOV ZHO,#0 ;置設(shè)定值顯示個(gè)位初值 MOV DI,0 ;置設(shè)定值顯示小數(shù)位初值 MOV CNT,#10 ; MOV TMOD,#11H ;定時(shí)器 T0、T1 初始化(方式 1) MOV TH0,3CH ;T0 定時(shí)器 定時(shí)常數(shù)25 MOV TL0,#0B
39、0H ; MOV TH1,0FCH ;T1 定時(shí)器 定時(shí)常數(shù) MOV TL1,18H ; SETB PT1 ;T1 優(yōu)先中斷 MOV IE,8AH ;中斷使能 SETB TR0 ;啟動(dòng)定時(shí)器 T0 SETB TR1 ;啟動(dòng)定時(shí)器 T1LOOP:ACALL GETTMP ;調(diào)用測(cè)溫子程序 ACALL BBLD ;調(diào)用二十進(jìn)制子程序 ACALL TER ;調(diào)用拆字子程序 ACALL XIAOSHU ;調(diào)用小數(shù)處理子程序 ACALL DISP1 ;調(diào)用測(cè)得溫度顯示程序 ACALL KEY ;調(diào)用按鍵處理子程序 ACALL IDTB ;調(diào)用十二進(jìn)制轉(zhuǎn)換子程序 ACALL CHK1 ;調(diào)用報(bào)警子程序 A
40、CALL DISP2 ;調(diào)用設(shè)定溫度顯示子程序 AJMP LOOP ;循環(huán) ;*測(cè)溫子程序*GETTMP:ACALL RESET_PULSE ACALL PRESENCE MOV A,#0CCH ACALL WRITE_BYTE ;發(fā)跳過(guò) ROM 命令 MOV A,#44H ACALL WRITE_BYTE ;發(fā)出溫度轉(zhuǎn)換命令 JNB DQ, ACALL RESET_PULSE ACALL PRESENCE MOV A,#0CCH ;發(fā)跳過(guò) ROM 命令 ACALL WRITE_BYTE MOV A,#0BEH ;發(fā)讀存儲(chǔ)器命令 ACALL WRITE_BYTE26 ACALL READ_BY
41、TE MOV LSB,A ;溫度值低位字節(jié)送 LSB ACALL READ_BYTE MOV MSB,A ;溫度值高位字節(jié)送 MSB ACALL RESET_PULSE ACALL PRESENCE MOV A,MSB SWAP A ANL A,#70H MOV FK,A MOV A,LSB SWAP A ANL A,#0FH ORL FK,A MOV FK1,F(xiàn)K RET; *讀 DS18B20 的程序*READ_BYTE:MOV R6,8READ1:CLR DQ NOP NOP SETB DQ NOP NOP NOP MOV R5,A MOV C,DQ MOV A,R5 MOV R7,30
42、 DJNZ R7, RRC A27 DJNZ R6,READ1 RETPRESENCE:JB DQ,$ JNB DQ,$ RETRESET_PULSE:CLR DQ MOV R7,#250 DJNZ R7, SETB DQ MOV R7,#10 DJNZ R7,$ RET;* 寫 DS18B20 的程序*WRITE_BYTE:MOV R6,#8WRITE:RRC A JC WRITE1 CLR DQ MOV R7,30 DJNZ R7,$ SETB DQ NOP NOP NOP NOP DJNZ R6,WRITE RETWRITE1:CLR DQ NOP NOP NOP NOP28 SETB
43、DQ MOV R7,30 DJNZ R7, DJNZ R6,WRITE RET;*二十進(jìn)制轉(zhuǎn)換子程序*BBLD:CLR A MOV R2,A MOV R7,#8 BBCD1:CLR C MOV A,F(xiàn)K RLC A MOV FK,A MOV A,R2 ADDC A,R2 DA A MOV R2,A DJNZ R7,BBCD1 RET;*拆字子程序*TER: MOV A,R2 ANL A,0FH MOV SHI2,A MOV A,R2 SWAP A ANL A,#0FH MOV SHI1,A RET;*小數(shù)部分處理子程序*XIAOSHU:CLR C29 MOV R3,3 MOV A,50H LO
44、OP2:RRC A DJNZ R3,LOOP2 ANL A,01H CJNE A,#01H,XIAOSHU2 MOV SHI3,#5 RETXIAOSHU2:MOV SHI3,0 RET;*按鍵部分處理子程序*KEY:MOV CNT,80 JB K_INM,KEY1 ACALL DISP1 ACALL DISP2 ACALL DISP1 ACALL DISP2 JB K_INM,KEY1WAIT0: JB K_INM,KEY2 ACALL DISP1 ACALL DISP2 DJNZ CNT,WAIT0KEY2: MOV A,DI ADD A,5 DA A MOV DI,A SUBB A,09
45、H JC KEY1 MOV DI,#0KEY1: MOV CNT,#80 JB K_INH,KEY430 ACALL DISP1 ACALL DISP2 ACALL DISP1 ACALL DISP2 JB K_INH,KEY4WAIT1: JB K_INH,KEY3 ACALL DISP1 ACALL DISP2 DJNZ CNT,WAIT1KEY3: MOV A,ZHO ADD A,#1 DA A MOV ZHO,A CJNE A,10H,KEY4 MOV ZHO,0KEY4: MOV CNT,#80 JB KI,KEY_BACK ACALL DISP1 ACALL DISP2 ACALL
46、 DISP1 ACALL DISP2 JB KI,KEY_BACKWAIT2: JB KI,KEY5 ACALL DISP1 ACALL DISP2 DJNZ CNT,WAIT2KEY5: MOV A,GAO ADD A,1 DA A MOV GAO,A CJNE A,#10H,KEY_BACK 31 MOV GAO,#0KEY_BACK: RET;*延時(shí)程序 1*D0。6S:MOV R3,64HDEL3: MOV R4,#384HDEL4: NOP NOP NOP DJNZ R4,DEL4 DJNZ R3,DEL3 RET;*實(shí)測(cè)溫度顯示部分子程序*DISP1: MOV DPTR,TAB MOV A,SHI1 MOVC A,A+DPTR MOV P0,A MOV P1,#3FH CLR P1.0 ACALL TM MOV A,SHI
溫馨提示
- 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ù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 西安工業(yè)大學(xué)《高級(jí)分子生物學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 大連交通大學(xué)《文藝美學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 曲阜師范大學(xué)《資源與環(huán)境(地質(zhì)工程)領(lǐng)域工程倫理》2023-2024學(xué)年第二學(xué)期期末試卷
- 西安航空學(xué)院《專業(yè)英語(yǔ)》2023-2024學(xué)年第二學(xué)期期末試卷
- 廣東舞蹈戲劇職業(yè)學(xué)院《MG動(dòng)畫設(shè)計(jì)》2023-2024學(xué)年第二學(xué)期期末試卷
- 山東經(jīng)貿(mào)職業(yè)學(xué)院《商務(wù)統(tǒng)計(jì)與軟件應(yīng)用》2023-2024學(xué)年第二學(xué)期期末試卷
- 事業(yè)招聘試題及答案
- 2025年注冊(cè)消防工程師之消防安全案例分析考試必考題庫(kù)(B卷)含答案
- 林州建筑職業(yè)技術(shù)學(xué)院《管理》2023-2024學(xué)年第二學(xué)期期末試卷
- 書籍編輯學(xué)試題及答案
- 國(guó)家開(kāi)放大學(xué)2025年《創(chuàng)業(yè)基礎(chǔ)》形考任務(wù)2答案
- 中小學(xué)生心理訪談提綱記錄表
- (完整版)PEP人教版小學(xué)四年級(jí)英語(yǔ)下冊(cè)全冊(cè)單詞表帶音標(biāo)
- 上海光電心電圖機(jī)9620P資料
- 盾構(gòu)鋼環(huán)技術(shù)交底
- 典型工作任務(wù)及職業(yè)能力分析報(bào)告
- QC七大工具培訓(xùn)課件(共95頁(yè)).ppt
- 氣體滅火用量自動(dòng)計(jì)算表
- 最新中職烹飪?cè)霞庸ぜ夹g(shù)模擬試題一
- 商業(yè)發(fā)票模板(INVOICE)
- 培訓(xùn):醫(yī)患溝通技巧
評(píng)論
0/150
提交評(píng)論