課程設計---基于51單片機的多路溫度采集控制系統(tǒng)設計_第1頁
已閱讀1頁,還剩25頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p><b>  前言</b></p><p>  隨著現(xiàn)代信息技術的飛速發(fā)展,溫度測量控制系統(tǒng)在工業(yè)、農(nóng)業(yè)及人們的日常生活中扮演著一個越來越重要的角色,它對人們的生活具有很大的影響,所以溫度采集控制系統(tǒng)的設計與研究有十分重要的意義。</p><p>  本次設計的目的在于學習基于51單片機的多路溫度采集控制系統(tǒng)設計的基本流程。本設計采用單片機作為數(shù)據(jù)處理

2、與控制單元,為了進行數(shù)據(jù)處理,單片機控制數(shù)字溫度傳感器,把溫度信號通過單總線從數(shù)字溫度傳感器傳遞到單片機上。單片機數(shù)據(jù)處理之后,發(fā)出控制信息改變報警和控制執(zhí)行模塊的狀態(tài),同時將當前溫度信息發(fā)送到LED進行顯示。本系統(tǒng)可以實現(xiàn)多路溫度信號采集與顯示,可以使用按鍵來設置溫度限定值,通過進行溫度數(shù)據(jù)的運算處理,發(fā)出控制信號達到控制蜂鳴器和繼電器的目的。我所采用的控制芯片為AT89c51,此芯片功能較為強大,能夠滿足設計要求。通過對電路的設計,

3、對芯片的外圍擴展,來達到對某一車間溫度的控制和調(diào)節(jié)功能。</p><p>  1.總體設計方案 </p><p>  1.1 溫度控制系統(tǒng)設計方案</p><p>  圖1.溫度控制系統(tǒng)的系統(tǒng)款圖 </p><p>  溫度控制系統(tǒng)主要是由四部分組成:其中包括CPU單片機處理器;外圍輸入設備按鍵,其功能是設置溫度報警的上下限;數(shù)碼管顯

4、示部分,顯示當前等我溫度和溫度的上下限;溫度傳感器,也是最重要的部分其功能是采集周圍的溫度;蜂蜜器用于報警使用,但溫度超過上線溫度和下線溫度時則發(fā)出報警聲,直到溫度恢復正常。</p><p>  1.2溫度控制系統(tǒng)的方案和原理</p><p>  該系統(tǒng)的設計方案是通過溫度傳感器DS18B20將周圍的環(huán)境溫度進行采集,等待單片機將其采集,當采集的信號一到就釋放信號。而單片機通過單線總線的方

5、式對DS18B20采集的信號進行采集并且將其轉化成數(shù)字信號通過數(shù)碼管進行顯示。而獨立按鍵是用來設置溫度的上下限的。</p><p>  其原理是:單片機對采集的溫度進行處理并且進行采集,將采集到的溫度使用數(shù)碼管進行顯示,并且將采集的溫度和存儲的上下限溫度進行比較,當溫度超過上下限制的時候驅動蜂鳴器鳴叫,直到溫度達到正常溫度是蜂鳴器停止工作;而使用兩個獨立按鍵則是用來設計溫度上下限。</p><

6、p><b>  2.單元模塊設計</b></p><p>  2.1主控制器 單片機AT89C51具有低電壓供電和體積小等特點,四個端口只需要兩個口就能滿足電路系統(tǒng)的設計需要,很適合便攜手持式產(chǎn)品的設計使用系統(tǒng)可用二節(jié)電池供電。AT89C51單片機是ATMEL公司生產(chǎn)的高性能8位單片機,主要功能特性如下: ①兼容MCS-51指令系統(tǒng); ②32個雙向I/O口,兩個1

7、6位可編程定時/計數(shù)器; ③1個串行中斷,兩個外部中斷源; ④可直接驅動LED; ⑤低功耗空閑和掉電模式; ⑥4 kB可反復擦寫(>1 000次)FLASI ROM; ⑦全靜態(tài)操作O~24 MHz; ⑧128×8 b內(nèi)部RAM。該款芯片的超低功耗和良好的性能價格比使其非常適合嵌入式產(chǎn)品應用。 </p><p>  2.2溫度傳感器DS18B20 DS1

8、8B20溫度傳感器是美國DALLAS半導體公司最新推出的一種改進型智能溫度傳感器,與傳統(tǒng)的熱敏電阻等測溫元件相比,它能直接讀出被測溫度,并且可根據(jù)實際要求通過簡單的編程實現(xiàn)9~12位的數(shù)字值讀數(shù)方式。</p><p>  2.2.1 DS18B20特性介紹 </p><p>  DS18B20是DALLAS公司的最新單線數(shù)字溫度傳感器,它的體積更小、適用電壓更寬、更經(jīng)濟,DS18B20是世

9、界上第一片支持“一線總線”接口的溫度傳感器,一線總線獨特而且經(jīng)濟的特點,使用戶可輕松地組建傳感器網(wǎng)絡,為測量系統(tǒng)的構建引入全新概念,它的測量溫度范圍為-55~+125℃,在-10~+85℃范圍內(nèi),精度為±0.5℃,現(xiàn)場溫度直接以“一線總線”的數(shù)字方式傳輸,大大提高了系統(tǒng)的抗干擾性,適合于惡劣環(huán)境的現(xiàn)場溫度測量,如:環(huán)境控制、設備或過程控制、測溫類消費電子產(chǎn)品等,與前一代產(chǎn)品不同,新的產(chǎn)品支持3~5.5V的電壓范圍,使系統(tǒng)設計更

10、靈活、方便,而且新一代產(chǎn)品更便宜,體積更小,DS18B20可以程序設定9~12位的分辨率,精度為±0.5℃??梢赃x擇更小的封裝方式,更寬的電壓適用范圍,分辨率設定及用戶設定的報警溫度存儲在E2PROM中,掉電后依然保存,DS18B20的性能是新一代產(chǎn)品中最好的,性能價格比也非常出色,繼“一線總線”的早期產(chǎn)品后,DS18B20開辟了溫度傳感器技術的新概念,DS18B20和DS18B22使電壓、特性及封裝有更多的選擇,讓我們可以構

11、建適合自己的經(jīng)濟的測溫系統(tǒng)。</p><p>  2.2.2 DS18B20的內(nèi)部結構</p><p>  DS18B20采用3腳PR-35封裝或8腳SOIC封裝,其內(nèi)部結構框圖如圖2所示,主要由4部分組成:64位光刻ROM,溫度傳感器,非揮發(fā)的溫度報警觸發(fā)器TH和TL,配制寄存器。DS18B20的管腳排列如圖所示。</p><p>  圖3. DS18B20引腳圖

12、</p><p>  2.2.3 DS18B20溫度傳感器的存儲器 </p><p>  64位ROM的結構開始8位是產(chǎn)品類型的編號,接著是每個器件的惟一的序號,共有48位,最后8位是前面56位的CRC檢驗碼,這也是多個DS18B20可以采用一線進行通信的原因。溫度報警觸發(fā)器TH和TL,可通過軟件寫入戶報警上下限。 DS18B20溫度傳感器的內(nèi)部存儲器還包括一個高速暫存RAM和一

13、個非易失性的可電擦除的EERAM。高速暫存RAM的結構為8字節(jié)的存儲器,結構如圖3所示。頭2個字節(jié)包含測得的溫度信息,第8和第4字節(jié)TH和TL的拷貝,是易失的,每次上電復位時被刷新。第5個字節(jié),為配置寄存器,它的內(nèi)容用于確定溫度值的數(shù)字轉換分辨率。DS18B20工作時寄存器中的分辨率轉換為相應精度的溫度數(shù)值。該字節(jié)各位的定義如圖3所示。低5位一直為1,TM是工作模式位,用于設置DS18B20在工作模式還是在測試模式,DS18B20出廠時

14、該位被設置為0,用戶要去改動,R1和R0決定溫度轉換的精度位數(shù),來設置分辨率。</p><p>  由表1可見,DS18B20溫度轉換的時間比較長,而且分辨率越高,所需要的溫度數(shù)據(jù)轉換時間越長。因此,在實際應用中要將分辨率和轉換時間權衡考慮。高速暫存RAM的第6、7、8字節(jié)保留未用,表現(xiàn)為全邏輯1。第9字節(jié)讀出前面所有8字節(jié)的CRC碼,可用來檢驗數(shù)據(jù),從而保證通信數(shù)據(jù)的正確性。當DS18B20接收到溫度轉換命令后

15、,開始啟動轉換。轉換完成后的溫度值就以16位帶符號擴展的二進制補碼形式存儲在高速暫存存儲器的第1、2字節(jié)。單片機可以通過單線接口讀出該數(shù)據(jù),讀數(shù)據(jù)時低位在先,高位在后,數(shù)據(jù)格式以0.0625℃/LSB形式表示。當符號位S=0時,表示測得的溫度值為正值,可以直接將二進制位轉換為十進制;當符號位S=1時,表示測得的溫度值為負值,要先將補碼變成原碼,再計算十進制數(shù)值。表2是一部分溫度值對應的二進制溫度數(shù)據(jù)。 </p>

16、<p>  DS18B20完成溫度轉換后,就把測得的溫度值與RAM中的TH、TL字節(jié)內(nèi)容作比較。若T>TH或T<TL,則將該器件內(nèi)的報警標志位置位,并對主機發(fā)出的報警搜索命令作出響應。因此,可用多只DS18B20同時測量溫度并進行報警搜索。在64位ROM的最高有效字節(jié)中存儲有循環(huán)冗余檢驗碼(CRC)。主機ROM的前56位來計算CRC值,并和存入DS18B20的CRC值作比較,以判斷主機收到的ROM數(shù)據(jù)是否正確。</p

17、><p>  2.2.4 DS18B20控制方法 </p><p>  在硬件上,DS18B20與單片機的連接有兩種方法,一種是Vcc接外部電源,GND接地,I/O與單片機的I/O線相連;另一種是用寄生電源供電,此時UDD、GND接地,I/O接單片機I/O。無論是內(nèi)部寄生電源還是外部供電,I/O口線要接5KΩ左右的上拉電阻。 </p><p>  DS18B20有六條控

18、制命令,如表所示:</p><p><b>  表2 指令表</b></p><p>  CPU對DS18B20的訪問流程是:先對DS18B20初始化,再進行ROM操作命令,最后才能對存儲器操作,數(shù)據(jù)操作。DS18B20每一步操作都要遵循嚴格的工作時序和通信協(xié)議。如主機控制DS18B20完成溫度轉換這一過程,根據(jù)DS18B20的通訊協(xié)議,須經(jīng)三個步驟:每一次讀寫之前都

19、要對DS18B20進行復位,復位成功后發(fā)送一條ROM指令,最后發(fā)送RAM指令,這樣才能對DS18B20進行預定的操作。</p><p>  2.2.5 DS18B20的測溫原理</p><p>  DS18B20的測溫原理是這這樣的,器件中低溫度系數(shù)晶振的振蕩頻率受溫度的影響很小,用于產(chǎn)生固定頻率的脈沖信號送給減法計數(shù)器1;高溫度系數(shù)晶振隨溫度變化其振蕩頻率明顯改變,所產(chǎn)生的信號作為減法計

20、數(shù)器2的脈沖輸入。器件中還有一個計數(shù)門,當計數(shù)門打開時,DS18B20就對低溫度系數(shù)振蕩器產(chǎn)生的時鐘脈沖進行計數(shù)進而完成溫度測量。計數(shù)門的開啟時間由高溫度系數(shù)振蕩器來決定,每次測量前,首先將-55℃所對應的一個基數(shù)分別置入減法計數(shù)器1、溫度寄存器中,計數(shù)器1和溫度寄存器被預置在-55℃所對應的一個基數(shù)值。減法計數(shù)器1對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進行減法計數(shù),當減法計數(shù)器1的預置值減到0時,溫度寄存器的值將加1,減法計數(shù)器1的預置將重新

21、被裝入,減法計數(shù)器1重新開始對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進行計數(shù),如此循環(huán)直到減法計數(shù)器計數(shù)到0時,停止溫度寄存器的累加,此時溫度寄存器中的數(shù)值就是所測溫度值。其輸出用于修正減法計數(shù)器的預置值,只要計數(shù)器門仍未關閉就重復上述過程,直到溫度寄存器值大致被測溫度值。 </p><p>  2.2.6 DS18B20溫度傳感器與單片機的接口電路</p><p>  DS18B20可以采用兩種

22、方式供電,一種是采用電源供電方式,此時DS18B20的1腳接地,2腳作為信號線,3腳接電源。另一種是寄生電源供電方式,如圖4 所示單片機端口接單線總線,為保證在有效的DS18B20時鐘周期內(nèi)提供足夠的電流,可用一個MOSFET管來完成對總線的上拉。當DS18B20處于寫存儲器操作和溫度A/D轉換操作時,總線上必須有強的上拉,上拉開啟時間最大為10us。采用寄生電源供電方式時VDD端接地。由于單線制只有一根線,因此發(fā)送接口必須是三態(tài)的。

23、</p><p>  3.溫度控制系統(tǒng)程序設計</p><p>  本軟件系統(tǒng)有1個主程序,6個子程序組成。6個子程序為定時/計數(shù)器0中斷服務程序、溫度采集及模數(shù)轉換子程序ADCON、溫度計算子程序CALCU、驅動控制子程序DRVCON、十進制轉換子程序METRICCON及數(shù)碼管顯示子程序DISP。</p><p><b>  3.1主程序</b&g

24、t;</p><p>  主程序進行系統(tǒng)初始化操作,主要是進行定時/計數(shù)器的初始化。</p><p>  3.2 定時/計數(shù)器0中斷服務程序</p><p>  應用定時計數(shù)器0中斷的目的是進行定時采樣,消除數(shù)碼管溫度顯示的閃爍現(xiàn)象,用戶可以根據(jù)實際環(huán)境溫度變化率進行采樣時間調(diào)整。每當定時時間到,調(diào)用溫度采集機模數(shù)轉換子程序ADCON,得到一個溫度樣本,并將其轉換為

25、數(shù)字量,傳送給89C51單片機,然后在調(diào)用溫度計算子程序CALCU,驅動控制子程序DRVCON,十進制轉換子程序MERTRICCON,溫度數(shù)碼顯示子程序DISP。</p><p>  3.3 溫度采集及模數(shù)轉換子程序ADCON</p><p>  該子程序進行溫度采樣并將其轉換為8位數(shù)字量傳送給89C51的P0口。采樣得到的溫度數(shù)據(jù)存放在片內(nèi)RAM的20H單元中。</p>&

26、lt;p>  3.4 溫度計算子程序CALCU</p><p>  根據(jù)熱敏電阻的分度值和電路參數(shù)計算出出一張溫度表,存放在DATATAB數(shù)據(jù)表中,由于篇幅關系,本程序只給出0-49℃的溫度數(shù)據(jù)。一個溫度有兩個字節(jié)組成,前一字節(jié)為溫度值,后一字節(jié)為該溫度所對應的熱敏電阻上的電壓的數(shù)字量。根據(jù)采樣值,通過查表及比較的方法計算出當前的溫度值,并將其存入片內(nèi)RAM的21H單元。采用查表法計算溫度值時為了克服熱敏電

27、阻的阻值——溫度特性曲線的非線性,提高測量精度。</p><p>  3.5 驅動控制子程序DRVCON</p><p>  該子程序調(diào)節(jié)溫度,當溫度高于上限溫度時(本程序設為30℃), P1.0輸出驅動控制信號,驅動外設工作降溫;當溫度下降到下限溫度時(本程序設為25℃),P1.0停止輸出,溫度上升,周而復始;工作狀態(tài)有LED1-LED4指示。</p><p> 

28、 3.6十進制轉換子程序METRICCON</p><p>  將存放于內(nèi)部RAM21H單元的當前溫度值得二進制數(shù)形式轉換為十進制數(shù)(BCD碼)形式,以便輸出顯示,轉換結果存放在片內(nèi)RAM的32H單元(百位)、31H(十位)、30H單元(個位)。</p><p>  3.7數(shù)碼顯示子程序DISP</p><p>  該子程序利用89C51串口的方式0串行移位寄存器工

29、作方式,將片內(nèi)RAM的30H、31H、32H單元的BCD碼查表轉換為七段碼后由RXD端串行發(fā)出去,然后經(jīng)74LS164串并轉換,將七段值傳送給數(shù)碼管,以十進制形式顯示出當前溫度值。</p><p>  4系統(tǒng)軟件算法分析 </p><p>  系統(tǒng)程序主要包括主程序,讀出溫度子程序,溫度轉換命令子程序,計算溫度子程序,顯示數(shù)據(jù)刷新子程序等。</p><p>&

30、lt;b>  4.1主程序流程</b></p><p>  主程序的主要功能是負責溫度的實時顯示、讀出并處理DS18B20的測量的當前溫度值,溫度測量每1s進行一次。這樣可以在一秒之內(nèi)測量一次被測溫度,其程序流程見下圖所示.</p><p><b>  圖4 主函數(shù)流程圖</b></p><p>  4.2 DS18B20復位

31、子程序</p><p>  此部分程序在執(zhí)行前先將DAT復位,然后通過對DAT的判斷來檢測DS18B20的回應,并進行相應的置位,通過R2計數(shù)的控制來將C中的數(shù)據(jù)送入數(shù)據(jù)線,一共寫入一字節(jié),本程序當R2=8時共計數(shù)8次,送入的數(shù)據(jù)正好一字節(jié),其程序流程見下圖所示。</p><p>  N </p><p>  Y

32、 </p><p>  圖5 DS18B20流程圖 </p><p>  4.3 讀溫度值命令</p><p>  此子程序主要是通過FLAG1的判斷來進行如何執(zhí)行,若存在,則跳過ROM,并由DS18B20發(fā)出溫度轉換命令,并讀取命令,最終在DS18B20中讀取兩字節(jié)溫度。若不存在,則返回,對應程序流程圖如下。</

33、p><p><b>  N</b></p><p><b>  Y</b></p><p>  圖6 溫度讀取流程圖</p><p><b>  4.4 按鍵設置</b></p><p>  此程序是通過對四個按鍵有無按下的判斷來對其相應的TH、TL值進行相

34、應的設置,其流程圖如下。</p><p><b>  K1</b></p><p>  K4 K2</p><p><b>  K3</b></p><p>  圖7 按鍵設計流程圖</p><p>  4.5響鈴與

35、亮燈的設置</p><p>  此程序是通過TEMPNUM與TH的比較來進行是否響鈴與亮燈,其流程圖如下圖。</p><p><b>  Y</b></p><p><b>  N</b></p><p><b>  Y</b></p><p><

36、b>  N</b></p><p>  圖8 蜂鳴器程序流程圖</p><p><b>  5 設計總結</b></p><p>  經(jīng)過將近兩周的單片機課程設計,終于完成了數(shù)字溫度傳感器測溫現(xiàn)實系統(tǒng)的設計,雖然有些地方可能還存在一些小缺點,但從心底里說,還是高興的,畢竟這次設計把實物都做了出來,高興之余不得不深思呀!在本次

37、設計的過程中,我們發(fā)現(xiàn)很多的問題,雖然以前還做過這樣的設計但這次設計真的讓我們長進了很多。在調(diào)程序的時候按鍵一度成為我們的難點,但經(jīng)過反復調(diào)整修改程序,還是實現(xiàn)了按鍵功能。單片機課程設計重點就在于軟件算法的設計,需要有很巧妙的程序算法,雖然以前寫過幾次程序,但我們覺的寫好一個程序并不是一件簡單的事,有好多的東西,只有我們?nèi)ピ囍隽?,才能真正的掌握,只學習理論有些東西是很難理解的,更談不上掌握。 從這次的課程設計中,我們真真正正的

38、意識到,在以后的學習中,要理論聯(lián)系實際,把我們所學的理論知識用到實際當中,學習單機片機更是如此,程序只有在經(jīng)常的寫與讀的過程中才能提高,這就是我在這次課程設計中的最大收獲。</p><p><b>  6 參考文獻</b></p><p>  [1] 李朝青.單片機原理及接口技術:北京航空航天大學出版社,1998.1-29[2] 李廣弟.單片機基礎[M].北京:北京

39、航空航天大學出版社,1994.42-91[3] 閻石.數(shù)字電子技術基礎(第三版). 北京:高等教育出版社,1989.28-29[4] 廖常初.現(xiàn)場總線概述[J].電工技術,1999.111-123</p><p>  [4] 胡學海.單片機原理及應用系統(tǒng)設計:電子工業(yè)出版社,2005.8.101-134</p><p>  [6] 李勛.單片機實用教程:北京航空航天大學出版社,200

40、6.5.104-107</p><p><b>  附錄1:系統(tǒng)原理圖</b></p><p><b>  附錄2:元件清單</b></p><p><b>  附錄3 程序部分</b></p><p>  #include<regx52.h></p>

41、<p>  #include<intrins.h></p><p>  #include"confing.h"</p><p>  void main()</p><p><b>  {</b></p><p><b>  HC138(5);</b><

42、;/p><p>  P0 = 0x00; //關閉蜂蜜器、繼電器</p><p>  HC138(0); //鎖存</p><p>  P0 = 0XFF;//消隱</p><p><b>  HC138(4);</b></p><p>  P0 = 0xff; //關閉LED</p>

43、<p>  HC138(0); //鎖存</p><p><b>  while(1)</b></p><p><b>  {</b></p><p>  read_ds18b20_temp();</p><p>  display();</p><p>&l

44、t;b>  key();</b></p><p><b>  get();</b></p><p><b>  alarm();</b></p><p><b>  }</b></p><p><b>  }</b></p>

45、<p>  void HC138(unsigned char x)</p><p><b>  {</b></p><p>  P2 = ( x<<5 )|( P2&0x1f);</p><p><b>  }</b></p><p>  void delay(uns

46、igned char i)</p><p><b>  {</b></p><p>  unsigned char k;</p><p>  while(i--)</p><p>  for(k = 0 ; k <20 ; k ++);</p><p><b>  }</b&

47、gt;</p><p>  void read_ds18b20_temp()</p><p><b>  {</b></p><p>  Init_DS18B20(); //初始化</p><p>  Write_DS18B20(0xcc); //跳過ROM區(qū)</p><p>

48、;  Write_DS18B20(0x44); //溫度轉換</p><p>  Init_DS18B20();</p><p>  Write_DS18B20(0xcc);</p><p>  Write_DS18B20(0xbe); //讀取地址</p><p>  temp_L = Read_DS18B20();

49、 //讀取低字節(jié)</p><p>  temp_H = Read_DS18B20(); //讀取高字節(jié)</p><p>  temp_H = temp_H<<4;</p><p>  temp_L = temp_L>>4;</p><p>  wen_H = temp_H|temp_L; //整數(shù)部

50、分</p><p><b>  }</b></p><p>  void get()//讀取密碼</p><p><b>  {</b></p><p>  table[0] = read_dat(0x01);</p><p>  delay(10);</p>

51、<p>  table[1] = read_dat(0x02);</p><p>  delay(10);</p><p><b>  }</b></p><p>  void set()</p><p><b>  {</b></p><p>  write_

52、dat(0x01,a[0]);</p><p>  delay(10);</p><p>  write_dat(0x02,a[1]);</p><p>  delay(10);</p><p><b>  }</b></p><p>  void key() //按鍵掃描</p>

53、;<p><b>  {</b></p><p>  if(k1 == 0) //溫度上限加</p><p><b>  {</b></p><p>  delay(20);</p><p>  while(k1 == 0);</p><p><b&g

54、t;  a[0]++;</b></p><p>  if(a[0]==100)</p><p><b>  {</b></p><p>  a[0] = a[1];</p><p><b>  }</b></p><p><b>  set();<

55、/b></p><p><b>  }</b></p><p>  if(k2 == 0) //上限溫度減</p><p><b>  {</b></p><p>  delay(20);</p><p>  while(k2 == 0);</p>

56、<p>  if(a[0]>a[1])</p><p><b>  a[0]--;</b></p><p><b>  set();</b></p><p><b>  }</b></p><p>  if(k3 == 0) //溫度下限加</p>

57、;<p><b>  {</b></p><p>  delay(20);</p><p>  while(k3 == 0);</p><p><b>  a[1]++;</b></p><p>  if(a[1] >= a[0])</p><p><

58、;b>  {</b></p><p>  a[1] = a[0];</p><p><b>  }</b></p><p><b>  set();</b></p><p><b>  }</b></p><p>  if(k4 ==

59、0) //下限溫度減</p><p><b>  {</b></p><p>  delay(20);</p><p>  while(k4 == 0);</p><p>  if(a[1]>0)</p><p><b>  a[1]--;</b></p&g

60、t;<p><b>  set();</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  void alarm()</p><p><b>  {</b></p><

61、p>  if(wen_H < table[1]||wen_H>table[0])</p><p><b>  {</b></p><p><b>  HC138(5);</b></p><p>  P0 = 0x50; //關閉蜂蜜器,打開繼電器</p><p>  HC138(0

62、); //鎖存</p><p>  P0 = 0XFF;//消隱</p><p><b>  }</b></p><p><b>  else</b></p><p><b>  {</b></p><p><b>  HC138(5);&

63、lt;/b></p><p>  P0 = 0x00; //關閉蜂蜜器,打開繼電器</p><p>  HC138(0); //鎖存</p><p>  P0 = 0XFF;//消隱</p><p><b>  }</b></p><p><b>  }</b>&l

64、t;/p><p><b>  目 錄</b></p><p><b>  前言1</b></p><p>  1.總體設計方案2</p><p>  1.1 溫度控制系統(tǒng)設計方案2</p><p>  2.單元模塊設計3</p><p><

65、;b>  2.1主控制器3</b></p><p>  2.2溫度傳感器18B203</p><p>  2.2.1 DS18B20特性介紹4</p><p>  2.2.2 DS18B20的內(nèi)部結構4</p><p>  2.2.3 DS18B20溫度傳感器的存儲器6</p><p>  

66、2.2.4 DS18B20控制方法7</p><p>  2.2.5 DS18B20的測溫原理8</p><p>  2.2.6 DS18B20溫度傳感器與單片機的接口電路9</p><p>  3.溫度控制系統(tǒng)程序設計9</p><p><b>  3.1主程序9</b></p><p&

67、gt;  3.2 定時/計數(shù)器0中斷服務程序10</p><p>  3.3 溫度采集及模數(shù)轉換子程序ADCON10</p><p>  3.4 溫度計算子程序CALCU10</p><p>  3.5 驅動控制子程序DRVCON10</p><p>  3.6十進制轉換子程序METRICCON11</p><p

68、>  3.7數(shù)碼顯示子程序DISP11</p><p>  4系統(tǒng)軟件算法分析 11</p><p>  4.1主程序流程11</p><p>  4.2 DS18B20復位子程序12</p><p>  4.3 讀溫度值命令14</p><p>  4.4 按鍵設置15</p><

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論