AT89C51單片機(jī)溫度控制系統(tǒng)_第1頁
AT89C51單片機(jī)溫度控制系統(tǒng)_第2頁
AT89C51單片機(jī)溫度控制系統(tǒng)_第3頁
AT89C51單片機(jī)溫度控制系統(tǒng)_第4頁
AT89C51單片機(jī)溫度控制系統(tǒng)_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、畢 業(yè) 設(shè) 計(jì)(論 文)論文題目: AT89C51單片機(jī)溫度控制系統(tǒng) 所屬系部: 電子工程系指導(dǎo)老師: 職 稱: 學(xué)生姓名: 班級(jí)、學(xué)號(hào): 專 業(yè): 應(yīng)用電子技術(shù) 2012 年 05 月 15 日畢業(yè)設(shè)計(jì)(論文)任務(wù)書題目: AT89C51單片機(jī)溫度控制系統(tǒng)任務(wù)與要求: 設(shè)計(jì)并制作一個(gè)能夠控制1KW電爐的溫度控制系 統(tǒng),控制溫 度恒定在37-38度之間。時(shí)間: 年 月 日 至 年 月 日 所屬系部: 電子工程系學(xué)生姓名: 學(xué)號(hào): 專 業(yè): 應(yīng)用電子技術(shù)指導(dǎo)單位或教研室: 測(cè)控技術(shù)教研室指導(dǎo)教師: 職 稱: 年 月 日歡迎下載摘要本設(shè)計(jì)是以一個(gè)1KW電爐為控制對(duì)象,以AT89C51為控制系統(tǒng)核心

2、,通過單片機(jī)系統(tǒng)設(shè)計(jì)實(shí)現(xiàn)對(duì)保電爐溫度的顯示和控制功能。本溫度控制系統(tǒng)是一個(gè)閉環(huán)反饋調(diào)節(jié)系統(tǒng),由溫度傳感器DS18B20對(duì)保爐內(nèi)溫度進(jìn)行檢測(cè),經(jīng)過調(diào)理電路得到合適的電壓信號(hào)。經(jīng)A/D轉(zhuǎn)換芯片得到相應(yīng)的溫度值,將所得的溫度值與設(shè)定溫度值相比較得到偏差。通過對(duì)偏差信號(hào)的處理獲得控制信號(hào),去調(diào)節(jié)加熱器的通斷,從而實(shí)現(xiàn)對(duì)保溫箱溫度的顯示和控制。本文主要介紹了電爐溫度控制系統(tǒng)的工作原理和設(shè)計(jì)方法,論文主要由三部分構(gòu)成。 系統(tǒng)整體方案設(shè)計(jì)。 硬件設(shè)計(jì),主要包括溫度檢測(cè)電路、A/D轉(zhuǎn)換電路、顯示電路、鍵盤設(shè)計(jì)和控制電路。 系統(tǒng)軟件設(shè)計(jì),軟件的設(shè)計(jì)采用模塊化設(shè)計(jì),主要包括A/D轉(zhuǎn)換模塊、顯示模塊等。關(guān)鍵詞:?jiǎn)纹?/p>

3、機(jī) 傳感器 溫度控制目 錄緒論1第一章 溫度控制系統(tǒng)設(shè)計(jì)和思路21.1溫度控制系統(tǒng)設(shè)計(jì)思路21.2 系統(tǒng)框圖2第二章 AT89C51單片機(jī)32.1 AT89C51單片機(jī)的簡(jiǎn)介32.2 AT89C51單片機(jī)的主要特性32.3 AT89C51單片機(jī)管腳說明4第三章 溫度控制的硬件設(shè)備63.1溫度傳感器簡(jiǎn)介63.2 DS18B20工作原理73.3 DS18B20使用中注意事項(xiàng)8第四章 系統(tǒng)硬件設(shè)計(jì)94.1溫度采集電路94.2 數(shù)碼管溫度顯示電路94.2.1 數(shù)碼管的分類94.2.2 數(shù)碼管的驅(qū)動(dòng)方式104.2.3 恒流驅(qū)動(dòng)與非恒流驅(qū)動(dòng)對(duì)數(shù)碼管的影響114.3 單片機(jī)接口電路124.3.1 P0口的上

4、拉電阻原理124.3.2 上拉電阻的選擇144.4 單片機(jī)電源及下載線電路144.5 溫度控制電路15第五章 溫度控制的軟件設(shè)計(jì)175.1 數(shù)碼管動(dòng)態(tài)顯示175.2 DS18B20初始化175.3 系統(tǒng)流程圖19謝辭20參考文獻(xiàn)21附錄22緒論溫度控制,在工業(yè)自動(dòng)化控制中占有非常重要的地位。單片機(jī)系統(tǒng)的開發(fā)應(yīng)用給現(xiàn)代工業(yè)測(cè)控領(lǐng)域帶來了一次新的技術(shù)革命,自動(dòng)化、智能化均離不開單片機(jī)的應(yīng)用。將單片機(jī)控制方法運(yùn)用到溫度控制系統(tǒng)中,可以克服溫度控制系統(tǒng)中存在的嚴(yán)重滯后現(xiàn)象,同時(shí)在提高采樣頻率的基礎(chǔ)上可以很大程度的提高控制效果和控制精度?,F(xiàn)代自動(dòng)控制越來越朝著智能化發(fā)展,在很多自動(dòng)控制系統(tǒng)中都用到了工控

5、機(jī),小型機(jī)、甚至是巨型機(jī)處理機(jī)等,當(dāng)然這些處理機(jī)有一個(gè)很大的特點(diǎn),那就是很高的運(yùn)行速度,很大的內(nèi)存,大量的數(shù)據(jù)存儲(chǔ)器。但隨之而來的是巨額的成本。在很多的小型系統(tǒng)中,處理機(jī)的成本占系統(tǒng)成本的比例高達(dá)20%,而對(duì)于這些小型的系統(tǒng)來說,配置一個(gè)如此高速的處理機(jī)沒有任何必要,因?yàn)檫@些小系統(tǒng)追求經(jīng)濟(jì)效益,而不是最在乎系統(tǒng)的快速性,所以用成本低廉的單片機(jī)控制小型的,而又不是很復(fù)雜,不需要大量復(fù)雜運(yùn)算的系統(tǒng)中是非常適合的。 溫度控制,在工業(yè)自動(dòng)化控制中占有非常重要的地位,如在鋼鐵冶煉過程中要對(duì)出爐的鋼鐵進(jìn)行熱處理,才能達(dá)到性能指標(biāo),塑料的定型過程中也要保持一定的溫度。隨著科學(xué)技術(shù)的迅猛發(fā)展,各個(gè)領(lǐng)域?qū)ψ詣?dòng)控

6、制系統(tǒng)控制精度、響應(yīng)速度、系統(tǒng)穩(wěn)定性與自適應(yīng)能力的要求越來越高,被控對(duì)象或過程的非線性、時(shí)變性、多參數(shù)點(diǎn)的強(qiáng)烈耦合、較大的隨機(jī)擾動(dòng)、各種不確定性以及現(xiàn)場(chǎng)測(cè)試手段不完善等,使難以按數(shù)學(xué)方法建立被控對(duì)象的精確模型的情況。 隨著電子技術(shù)以及應(yīng)用需求的發(fā)展,單片機(jī)技術(shù)得到了迅速的發(fā)展,在高集成度,高速度,低功耗以及高性能方面取得了很大的進(jìn)展。伴隨著科學(xué)技術(shù)的發(fā)展,電子技術(shù)有了更高的飛躍,我們現(xiàn)在完全可以運(yùn)用單片機(jī)和電子溫度傳感器對(duì)某處進(jìn)行溫度檢測(cè),而且我們可以很容易地做到多點(diǎn)的溫度檢測(cè),如果對(duì)此原理圖稍加改進(jìn),我們還可以進(jìn)行不同地點(diǎn)的實(shí)時(shí)溫度檢測(cè)和控制。第一章 溫度控制系統(tǒng)設(shè)計(jì)和思路1.1溫度控制系統(tǒng)

7、設(shè)計(jì)思路在這個(gè)系統(tǒng)中我們從性能及設(shè)計(jì)成本考慮,我們選擇AT89C51芯片。AT89C51的廣泛使用,使單片機(jī)的價(jià)格大大下降。目前,89C51的市場(chǎng)零售價(jià)已經(jīng)低廉因此,如把89C51作為接口芯片使用,在經(jīng)濟(jì)上是合算的。在溫度傳感器的選擇上我們采用溫度芯片DS18B20測(cè)量溫度。該芯片的物理化學(xué)性很穩(wěn)定,它能用做工業(yè)測(cè)溫元件,且此元件線形較好。在0100攝氏度時(shí),最大線形偏差小于1攝氏度。該芯片直接向單片機(jī)傳輸數(shù)字信號(hào),便于單片機(jī)處理及控制。本制作的最大特點(diǎn)之一就是直接采用溫度芯片對(duì)溫度進(jìn)行測(cè)量,使數(shù)據(jù)傳輸和處理簡(jiǎn)單化。采用溫度芯片DS18B20測(cè)量溫度,體現(xiàn)了作品芯片化這個(gè)趨勢(shì)。部分功能電路的集

8、成,使總體電路更簡(jiǎn)潔,搭建電路和焊接電路時(shí)更快。而且,集成塊的使用,有效地避免外界的干擾,提高測(cè)量電路的精確度。所以芯片的使用將成為電路發(fā)展的一種趨勢(shì)。本方案應(yīng)用這一溫度芯片,也是順應(yīng)這一趨勢(shì)。對(duì)于溫度的調(diào)節(jié)系統(tǒng),我們才用的只是簡(jiǎn)單的升溫和降溫方法,當(dāng)溫度低于我們?cè)O(shè)定的最低溫度值時(shí),則單片機(jī)系統(tǒng)則會(huì)通過一個(gè)高電平的脈沖電流直接送給繼電器,使連接在繼電器上的電阻絲通電產(chǎn)生熱量來提高溫度。如果當(dāng)溫度高于我們?cè)O(shè)定的最高溫度值時(shí),則單片機(jī)會(huì)通過另一個(gè)口發(fā)出一個(gè)高電平的脈沖電流送個(gè)繼電器,使連在繼電器上的一個(gè)風(fēng)扇啟動(dòng),來降低溫度。在次過程中,我們通過單片機(jī)將傳感器所測(cè)量出來的溫度通過數(shù)碼管顯示出來。這樣

9、就能只管的觀察到即時(shí)的溫度情況,以便更好的驗(yàn)證系統(tǒng)的性能。1.2 系統(tǒng)框圖 單片機(jī)溫度控制系統(tǒng)采用的裝置有單片機(jī)、溫度傳感器和顯示器組成起結(jié)構(gòu)如圖1.1硬件結(jié)構(gòu)圖所示。數(shù)據(jù)顯示溫度傳感器AT89C51單片機(jī)溫度控制鍵盤圖1.1溫度控制系統(tǒng)硬件結(jié)構(gòu)圖第二章 AT89C51單片機(jī)2.1 AT89C51單片機(jī)的簡(jiǎn)介 AT89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低電壓,高性能CMOS8位微處理器,俗稱單片機(jī)。AT89C2051是一種帶2K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器的單片機(jī)。

10、單片機(jī)的可擦除只讀存儲(chǔ)器可以反復(fù)擦除100次。該器件采用ATMEL高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲(chǔ)器組合在單個(gè)芯片中,ATMEL的AT89C51是一種高效微控制器,AT89C2051是它的一種精簡(jiǎn)版本。AT89C51單片機(jī)為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價(jià)廉的方案。2.2 AT89C51單片機(jī)的主要特性 與MCS-51 兼容 4K字節(jié)可編程閃爍存儲(chǔ)器 壽命:1000寫/擦循環(huán) 數(shù)據(jù)保留時(shí)間:10年 全靜態(tài)工作:0Hz-24Hz 三級(jí)程序存儲(chǔ)器鎖定 128*8位內(nèi)部RAM 32可編程I/O線 兩個(gè)16位定時(shí)器

11、/計(jì)數(shù)器 5個(gè)中斷源 可編程串行通道 低功耗的閑置和掉電模式 圖2.1 AT89C51引腳圖 片內(nèi)振蕩器和時(shí)鐘電路 2.3 AT89C51單片機(jī)管腳說明 如圖2.1為AT89C51引腳圖,各引腳功能說明如下: VCC: 電源 GND: 地 P0 口:P0口是一個(gè)8位漏極開路的雙向I/O口。作為輸出口,每位能驅(qū)動(dòng)8個(gè)TTL邏輯電平。對(duì)P0端口寫“1”時(shí),引腳用作高阻抗輸入。當(dāng)訪問外部程序和數(shù)據(jù)存儲(chǔ)器時(shí),P0口也被作為低8位地址/數(shù)據(jù)復(fù)用。在這種模式下,P0具有內(nèi)部上拉電阻。在flash編程時(shí),P0口也用來接收指令字節(jié);在程序校驗(yàn)時(shí),輸出指令字節(jié)。程序校驗(yàn)時(shí),需要外部上拉電阻。 P1 口:P1 口

12、是一個(gè)具有內(nèi)部上拉電阻的8 位雙向I/O 口,P1輸出緩沖器能驅(qū)動(dòng)4個(gè)TTL邏輯電平。對(duì)P1 端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。此外,P1.0和P1.2分別作定時(shí)器/計(jì)數(shù)器2的外部計(jì)數(shù)輸入(P1.0/T2)和時(shí)器/計(jì)數(shù)器2的觸發(fā)輸入(P1.1/T2EX) P2 口:P2 口是一個(gè)具有內(nèi)部上拉電阻的8 位雙向I/O 口,P2 輸出緩沖器能驅(qū)動(dòng)4 個(gè)TTL 邏輯電平。對(duì)P2 端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出

13、電流(IIL)。在訪問外部程序存儲(chǔ)器或用16位地址讀取外部數(shù)據(jù)存儲(chǔ)器(例如執(zhí)行MOVX DPTR)時(shí),P2 口送出高八位地址。在這種應(yīng)用中,P2 口使用很強(qiáng)的內(nèi)部上拉發(fā)送1。在使用8位地址(如MOVX RI)訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),P2口輸出P2鎖存器的內(nèi)容。在flash編程和校驗(yàn)時(shí),P2口也接收高8位地址字節(jié)和一些控制信號(hào)。 P3 口:P3 口是一個(gè)具有內(nèi)部上拉電阻的8 位雙向I/O 口,對(duì)P3 端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。P3口亦作為AT89C51特殊功能(第二功能)使用,如表2-1

14、所示。P3.0 RXD(串行輸入)P3.1 TXD(串行輸出)P3.2 INT0(外部中斷0)P3.3 INT0(外部中斷0)P3.4 T0(定時(shí)器0外部輸入)P3.5 T1(定時(shí)器1外部輸入)P3.6WR(外部數(shù)據(jù)存儲(chǔ)器寫選通)P3.7 RD(外部數(shù)據(jù)存儲(chǔ)器讀選通) 表2-1 AT89C51引腳號(hào)第二功能 RST: 復(fù)位輸入,晶振工作時(shí),RST腳持續(xù)2個(gè)機(jī)器周期高電平將使單片機(jī)復(fù)位??撮T狗計(jì)時(shí)完成后,RST 腳輸出96個(gè)晶振周期的高電平。特殊寄存器AUXR(地址8EH)上的DISRTO位可以使此功能無效。DISRTO默認(rèn)狀態(tài)下,復(fù)位高電平有效。 ALE/PROG:地址鎖存控制信號(hào)(ALE)是

15、訪問外部程序存儲(chǔ)器時(shí),鎖存低8 位地址的輸出脈沖。在flash編程時(shí),此引腳(PROG)也用作編程輸入脈沖。在一般情況下,ALE 以晶振六分之一的固定頻率輸出脈沖,可用來作為外部定時(shí)器或時(shí)鐘使用。然而,特別強(qiáng)調(diào),在每次訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),ALE脈沖將會(huì)跳過。如果需要,通過將地址為8EH的SFR的第0位置“1”,ALE操作將無效。這一位置“1”,ALE 僅在執(zhí)行MOVX 或MOVC指令時(shí)有效。否則,ALE 將被微弱拉高。這個(gè)ALE 使能標(biāo)志位(地址為8EH的SFR的第0位)的設(shè)置對(duì)微控制器處于外部執(zhí)行模式下無效。 PSEN:外部程序存儲(chǔ)器選通信號(hào)(PSEN)是外部程序存儲(chǔ)器選通信號(hào)。當(dāng)AT89

16、C51從外部程序存儲(chǔ)器執(zhí)行外部代碼時(shí),PSEN在每個(gè)機(jī)器周期被激活兩次,而在訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),PSEN將不被激活。 EA/VPP:訪問外部程序存儲(chǔ)器控制信號(hào)。為使能從0000H 到FFFFH的外部程序存儲(chǔ)器讀取指令,EA必須接GND。為了執(zhí)行內(nèi)部程序指令,EA應(yīng)該接VCC。在flash編程期間,EA也接收12伏VPP電壓。 XTAL1:振蕩器反相放大器和內(nèi)部時(shí)鐘發(fā)生電路的輸入端。 XTAL2:振蕩器反相放大器的輸出端。第三章 溫度控制的硬件設(shè)備3.1溫度傳感器簡(jiǎn)介 DS18B20原理與特性本系統(tǒng)采用了DS18B20單總線可編程溫度傳感器,來實(shí)現(xiàn)對(duì)溫度的采集和轉(zhuǎn)換,大大簡(jiǎn)化了電路的復(fù)雜度,以

17、及算法的要求。首先先來介紹一下DS18B20這塊傳感器的特性及其功能: DSl8B20的管腳及特點(diǎn) DS18B20可程溫度傳感器有3個(gè)管腳內(nèi)部結(jié)構(gòu)主要由四部分組成:64位光刻ROM、溫度傳感器、非揮發(fā)的溫度報(bào)警觸發(fā)器TH和TL、配置寄存器。DS18B20的外形及管腳排列如下圖所示,GND為接地線,DQ為數(shù)據(jù)輸入輸出接口,通過一個(gè)較弱的上拉電阻與單片機(jī)相連。VDD為電源接口,既可由數(shù)據(jù)線提供電源,又可由外部提供電源,范圍3O55 V。本文使用外部電源供電。圖3.1 DS18B20的外形及管腳 主要特點(diǎn)有: 1. 用戶可自設(shè)定報(bào)警上下限溫度值。 2. 不需要外部組件,能測(cè)量55+125 范圍內(nèi)的溫

18、度。 3. 10 +85 范圍內(nèi)的測(cè)溫準(zhǔn)確度為05 。 4. 通過編程可實(shí)現(xiàn)9l2位的數(shù)字讀數(shù)方式,可在至多750 ms內(nèi)將溫度轉(zhuǎn)換成12 位的數(shù)字,測(cè)溫分辨率可達(dá)00625 。 5. 獨(dú)特的單總線接口方式,與微處理器連接時(shí)僅需要一條線即可實(shí)現(xiàn)與微處理器雙向通訊。6. 測(cè)量結(jié)果直接輸出數(shù)字溫度信號(hào),以一線總線串行傳送給CPU,同時(shí)可傳送CRC校驗(yàn)碼,具有極強(qiáng)的抗干擾糾錯(cuò)能力。7. 負(fù)壓特性:電源極性接反時(shí),芯片不會(huì)因發(fā)熱而燒毀,但不能正常工作。8. DS18B20支持多點(diǎn)組網(wǎng)功能,多個(gè)DS18B20可以并聯(lián)在唯一的三線上,實(shí)現(xiàn)組網(wǎng)多點(diǎn)測(cè)溫。3.2 DS18B20工作原理DS18B20的讀寫時(shí)序

19、和測(cè)溫原理與DS1820相同,只是得到的溫度值的位數(shù)因分辨率不同DS18B20 為9位12位A/D轉(zhuǎn)換精度,而DS1820為9位A/D轉(zhuǎn)換,雖然我們采用了高精度的芯片,但在實(shí)際情況上由于技術(shù)問題比較難實(shí)現(xiàn),而實(shí)際精度此時(shí)溫度寄存器中的數(shù)值即為所測(cè)溫度。斜率累加器用于補(bǔ)償和修正測(cè)溫過程中的非線性,其輸出用于修正計(jì)數(shù)器1的預(yù)置值。測(cè)溫原理圖不同,且溫度轉(zhuǎn)換時(shí)的延時(shí)時(shí)間由2s減為750ms。低溫度系數(shù)晶振的振蕩頻率受溫度影響很小,用于產(chǎn)生固定頻率的脈沖信號(hào)送給計(jì)數(shù)器1。則高溫度系數(shù)晶振隨溫度變化其振蕩率明顯改變,所產(chǎn)生的信號(hào)作為計(jì)數(shù)器2的脈沖輸入。計(jì)數(shù)器1和溫度寄存器被預(yù)置在55所對(duì)應(yīng)的一個(gè)基數(shù)值時(shí)

20、。計(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í),停止溫度寄存器值。3.3 DS18B20使用中注意事項(xiàng) DS18B20雖然具有測(cè)溫系統(tǒng)簡(jiǎn)單、測(cè)溫精度高、連接方便、占用口線少等優(yōu)點(diǎn),但在實(shí)際應(yīng)用中也應(yīng)注意以下幾方面的問題: 1) 較小的硬件開銷需要相對(duì)復(fù)雜的軟件進(jìn)行補(bǔ)償,由于DS18B20與微處理器間采用串行數(shù)據(jù)傳送,因此,在對(duì)DS18B20進(jìn)行讀寫編程時(shí),必須嚴(yán)格的保證讀寫時(shí)序,否則將無法讀取測(cè)溫結(jié)果。在使用PL/M、C等高

21、級(jí)語言進(jìn)行系統(tǒng)程序設(shè)計(jì)時(shí),對(duì)DS18B20操作部分最好采用匯編語言實(shí)現(xiàn)。 2) 在DS18B20的有關(guān)資料中均未提及單總線上所掛DS18B20數(shù)量問題,容易使人誤認(rèn)為可以掛任意多個(gè)DS18B20,在實(shí)際應(yīng)用中并非如此。當(dāng)單總線上所掛DS18B20超過8個(gè)時(shí),就需要解決微處理器的總線驅(qū)動(dòng)問題,這一點(diǎn)在進(jìn)行多點(diǎn)測(cè)溫系統(tǒng)設(shè)計(jì)時(shí)要加以注意。 3) 連接DS18B20的總線電纜是有長(zhǎng)度限制的。試驗(yàn)中,當(dāng)采用普通信號(hào)電纜傳輸長(zhǎng)度超過50m時(shí),讀取的測(cè)溫?cái)?shù)據(jù)將發(fā)生錯(cuò)誤。當(dāng)將總線電纜改為雙絞線帶屏蔽電纜時(shí),正常通訊距離可達(dá)150m,當(dāng)采用每米絞合次數(shù)更多的雙絞線帶屏蔽電纜時(shí),正常通訊距離進(jìn)一步加長(zhǎng)。這種情況主

22、要是由總線分布電容使信號(hào)波形產(chǎn)生畸變?cè)斐傻摹R虼?,在用DS18B20進(jìn)行長(zhǎng)距離測(cè)溫系統(tǒng)設(shè)計(jì)時(shí)要充分考慮總線分布電容和阻抗匹配問題。 4) 在DS18B20測(cè)溫程序設(shè)計(jì)中,向DS18B20發(fā)出溫度轉(zhuǎn)換命令后,程序要等待DS18B20的返回信號(hào),一旦某個(gè)DS18B20接觸不好或斷線,當(dāng)程序讀該DS18B20時(shí),將沒有返回信號(hào),程序進(jìn)入死循環(huán)。這一點(diǎn)在進(jìn)行DS1820硬件連接和軟件設(shè)計(jì)時(shí)也要給予一定的重視。 測(cè)溫電纜線建議采用屏蔽4芯雙絞線,其中一對(duì)線接地線與信號(hào)線,另一組接VCC和地線,屏蔽層在源端單點(diǎn)接地。第四章 系統(tǒng)硬件設(shè)計(jì)4.1溫度采集電路數(shù)據(jù)采集電路如圖4.1所示,由溫度傳感器DS18B2

23、0采集被控對(duì)象的實(shí)時(shí)溫度,提供給AT89S52的P3.1口作為數(shù)據(jù)輸入。在本次設(shè)計(jì)中我們所控的對(duì)象為所處室溫。當(dāng)然作為改進(jìn)我們可以把傳感器與電路板分離,由數(shù)據(jù)線相連進(jìn)行通訊,便于觀察。4.2 數(shù)碼管溫度顯示電路4.2.1 數(shù)碼管的分類 數(shù)碼管是一種半導(dǎo)體發(fā)光器件,其基本單元是發(fā)光二極管。數(shù)碼管按段數(shù)分為七段數(shù)碼管和八段數(shù)碼管,八段數(shù)碼管比七段數(shù)碼管多一個(gè)發(fā)光二極管單元(多一個(gè)小數(shù)點(diǎn)顯示);按能顯示多少個(gè)“8”可分為1位、2位、4位等等數(shù)碼管;按發(fā)光二極管單元連接方式分為共陽極數(shù)碼管和共陰極數(shù)碼管。共陽數(shù)碼管是指將所有發(fā)光二極管的陽極接到一起形成公共陽極(COM)的數(shù)碼管。共陽數(shù)碼管在應(yīng)用時(shí)應(yīng)將

24、公共極COM接到+5V,當(dāng)某一字段發(fā)光二極管的陰極為低電平時(shí),相應(yīng)字段就點(diǎn)亮。當(dāng)某一字段的陰極為高電平時(shí),相應(yīng)字段就不亮。共陰數(shù)碼管是指將所有發(fā)光二極管的陰極接到一起形成公共陰極(COM)的數(shù)碼管。共陰數(shù)碼管在應(yīng)用時(shí)應(yīng)將公共極COM接到地線GND上,當(dāng)某一字段發(fā)光二極管的陽極為高電平時(shí),相應(yīng)字段就點(diǎn)亮。當(dāng)某一字段的陽極為低電平時(shí),相應(yīng)字段就不亮。圖4.1單片機(jī)89C51與溫度傳感器DS18B20的連接圖4.2.2 數(shù)碼管的驅(qū)動(dòng)方式 靜態(tài)顯示驅(qū)動(dòng):靜態(tài)驅(qū)動(dòng)也稱直流驅(qū)動(dòng)。靜態(tài)驅(qū)動(dòng)是指每個(gè)數(shù)碼管的每一個(gè)段碼都由一個(gè)單片機(jī)的I/O端口進(jìn)行驅(qū)動(dòng),或者使用如BCD碼二-十進(jìn)制譯碼器譯碼進(jìn)行驅(qū)動(dòng)。靜態(tài)驅(qū)動(dòng)的

25、優(yōu)點(diǎn)是編程簡(jiǎn)單,顯示亮度高,缺點(diǎn)是占用I/O端口多,如驅(qū)動(dòng)5個(gè)數(shù)碼管靜態(tài)顯示則需要5840根I/O端口來驅(qū)動(dòng),要知道一個(gè)89S51單片機(jī)可用的I/O端口才32個(gè)呢:),實(shí)際應(yīng)用時(shí)必須增加譯碼驅(qū)動(dòng)器進(jìn)行驅(qū)動(dòng),增加了硬件電路的復(fù)雜性。 動(dòng)態(tài)顯示驅(qū)動(dòng):數(shù)碼管動(dòng)態(tài)顯示接口是單片機(jī)中應(yīng)用最為廣泛的一種顯示方式之一,動(dòng)態(tài)驅(qū)動(dòng)是將所有數(shù)碼管的8個(gè)顯示筆劃a,b,c,d,e,f,g,dp的同名端連在一起,另外為每個(gè)數(shù)碼管的公共極COM增加位選通控制電路,位選通由各自獨(dú)立的I/O線控制,當(dāng)單片機(jī)輸出字形碼時(shí),所有數(shù)碼管都接收到相同的字形碼,但究竟是那個(gè)數(shù)碼管會(huì)顯示出字形,取決于單片機(jī)對(duì)位選通COM端電路的控制,

26、所以我們只要將需要顯示的數(shù)碼管的選通控制打開,該位就顯示出字形,沒有選通的數(shù)碼管就不會(huì)亮。通過分時(shí)輪流控制各個(gè)數(shù)碼管的的COM端,就使各個(gè)數(shù)碼管輪流受控顯示,這就是動(dòng)態(tài)驅(qū)動(dòng)。在輪流顯示過程中,每位數(shù)碼管的點(diǎn)亮?xí)r間為12ms,由于人的視覺暫留現(xiàn)象及發(fā)光二極管的余輝效應(yīng),盡管實(shí)際上各位數(shù)碼管并非同時(shí)點(diǎn)亮,但只要掃描的速度足夠快,給人的印象就是一組穩(wěn)定的顯示數(shù)據(jù),不會(huì)有閃爍感,動(dòng)態(tài)顯示的效果和靜態(tài)顯示是一樣的,能夠節(jié)省大量的I/O端口,而且功耗更低。4.2.3 恒流驅(qū)動(dòng)與非恒流驅(qū)動(dòng)對(duì)數(shù)碼管的影響1、顯示效果:由于發(fā)光二極管基本上屬于電流敏感器件,其正向壓降的分散性很大, 并且還與溫度有關(guān),為了保證數(shù)

27、碼管具有良好的亮度均勻度,就需要使其具有恒定的工作電流,且不能受溫度及其它因素的影響。另外,當(dāng)溫度變化時(shí)驅(qū)動(dòng)芯片還要能夠自動(dòng)調(diào)節(jié)輸出電流 的大小以實(shí)現(xiàn)色差平衡溫度補(bǔ)償。2、安全性:即使是短時(shí)間的電流過載也可能對(duì)發(fā)光管造成永久性的損壞,采用恒流驅(qū)動(dòng)電路后可防止 由于電流故障所引起的數(shù)碼管的大面積損壞。另外,我們所采用的超大規(guī)模集成電路還具有級(jí)聯(lián)延時(shí)開關(guān)特性,可防止反向尖峰電壓對(duì)發(fā)光二極管的損害。超大規(guī)模集成電路還具有熱保護(hù)功能,當(dāng)任何一片的溫度超過一定值時(shí)可自動(dòng)關(guān)斷,并且可在控制室內(nèi)看到故障顯示。 圖4.2 數(shù)碼管顯示電路4.3 單片機(jī)接口電路4.3.1 P0口的上拉電阻原理 1、當(dāng)TTL電路驅(qū)

28、動(dòng)COMS電路時(shí),如果TTL電路輸出的高電平低于COMS電路的最低高電平(一般為3.5v)這時(shí)就需要在TTL的輸出端接上拉電阻,以提高輸出高電平的值。 2、OC門電路必須加上拉電阻,才能使用。 3、為加大輸出引腳的驅(qū)動(dòng)能力,有的單片機(jī)管腳上也常使用上拉電阻。 4、在COMS芯片上,為了防止靜電造成損壞,不用的管腳不能懸空,一般接上拉電阻產(chǎn)生降低輸入阻抗,提供泄荷通路。 5、芯片的管腳加上拉電阻來提高輸出電平,從而提高芯片輸入信號(hào)的噪聲容限增強(qiáng)抗干擾能力。 6、提高總線的抗電磁干擾能力。管腳懸空就比較容易接受外界的電磁干擾。7、長(zhǎng)線傳輸中電阻不匹配容易引起反射波干擾,加上下拉電阻是電阻匹配,有效

29、的抑制反射波干擾。 上拉電阻阻值的選擇原則包括:1、從節(jié)約功耗及芯片的灌電流能力考慮應(yīng)當(dāng)足夠大;電阻大,電流小。2、從確保足夠的驅(qū)動(dòng)電流考慮應(yīng)當(dāng)足夠小;電阻小,電流大。3、對(duì)于高速電路,過大的上拉電阻可能邊沿變平緩。綜合考慮以上三點(diǎn),通常在1k到10k之間選取。對(duì)下拉電阻也有類似道理 對(duì)上拉電阻和下拉電阻的選擇應(yīng)結(jié)合開關(guān)管特性和下級(jí)電路的輸入特性進(jìn)行設(shè)定 主要需要考慮以下幾個(gè)因素:1、驅(qū)動(dòng)能力與功耗的平衡。以上拉電阻為例,一般地說,上拉電阻越小,驅(qū)動(dòng)能力越強(qiáng),但功耗越大,設(shè)計(jì)是應(yīng)注意兩者之間的均衡。2、下級(jí)電路的驅(qū)動(dòng)需求。同樣以上拉電阻為例,當(dāng)輸出高電平時(shí),開關(guān)管斷開,上拉電阻應(yīng)適當(dāng)選擇以能夠

30、向下級(jí)電路提供足夠的電流。 3、高低電平的設(shè)定。不同電路的高低電平的門檻電平會(huì)有不同,電阻應(yīng)適當(dāng)設(shè)定以確保能輸出正確的電平。以上拉電阻為例,當(dāng)輸出低電平時(shí),開關(guān)管導(dǎo)通,上拉電阻和開關(guān)管導(dǎo)通電阻分壓值應(yīng)確保在零電平門檻之下。4、頻率特性。以上拉電阻為例,上拉電阻和開關(guān)管漏源級(jí)之間的電容和下級(jí)電路之間的輸入電容會(huì)形成RC延遲,電阻越大,延遲越大。上拉電阻的設(shè)定應(yīng)考慮電路在這方面的需求。下拉電阻的設(shè)定的原則和上拉電阻是一樣的。OC門輸出高電平時(shí)是一個(gè)高阻態(tài),其上拉電流要由上拉電阻來提供,設(shè)輸入端每端口不大于100uA,設(shè)輸出口驅(qū)動(dòng)電流約500uA,標(biāo)準(zhǔn)工作電壓是5V,輸入口的高低電平門限為0.8V(

31、低于此值為低電平);2V(高電平門限值)。選上拉電阻時(shí):500uA x 8.4K= 4.2即選大于8.4K時(shí)輸出端能下拉至0.8V以下,此為最小阻值,再小就拉不下來了。如果輸出口驅(qū)動(dòng)電流較大,則阻值可減小,保證下拉時(shí)能低于0.8V即可。當(dāng)輸出高電平時(shí),忽略管子的漏電流,兩輸入口需200uA,200uA x15K=3V即上拉電阻壓降為3V,輸出口可達(dá)到2V,此阻值為最大阻值,再大就拉不到2V了。選10K可用。COMS門的可參考74HC系列設(shè)計(jì)時(shí)管子的漏電流不可忽略,IO口實(shí)際電流在不同電平下也是不同的,上述僅僅是原理,一句話概括為:輸出高電平時(shí)要喂飽后面的輸入口,輸出低電平不要把輸出口喂撐了(否

32、則多余的電流喂給了級(jí)聯(lián)的輸入口,高于低電平門限值就不可靠了)。4.3.2 上拉電阻的選擇我們?cè)诖嗽O(shè)計(jì)中原則的是用P0口來驅(qū)動(dòng)數(shù)碼管的顯示,所以我們所通過上述原理。如果是驅(qū)動(dòng)led,那么用1K左右的就行了。如果希望亮度大一些,電阻可減小,最小不要小于200歐姆,否則電流太大;如果希望亮度小一些,電阻可增大,增加到多少,主要看亮度情況,以亮度合適為準(zhǔn),一般來說超過3K以上時(shí),亮度就很弱了,但是對(duì)于超高亮度的LED,有時(shí)候電阻為10K時(shí)覺得亮度還能夠用。通常就用1k的。其具體的連接電路圖如圖4.3所示:圖4.3單片機(jī)上拉電阻示意圖4.4 單片機(jī)電源及下載線電路 7805是我們最常用到的穩(wěn)壓芯片了,他

33、的使用方便,用很簡(jiǎn)單的電路即可以輸入一個(gè)直流穩(wěn)壓電源,他的輸出電壓恰好為5v,剛好是51系列單片機(jī)運(yùn)行所需的電壓,介紹一下他的3個(gè)引腳以及用它來構(gòu)成的穩(wěn)壓電路的資料。其中1接整流器輸出的+電壓,2為公共地(也就是負(fù)極),3就是我們需要的正5V輸出電壓了。 圖4.4 7085引腳圖 圖4.5 7085電源原理圖本次用的下載線電路是以一塊74LS373芯片為主的電路。原理圖如圖4.6。該電路在原理圖上只有一個(gè)下載口的體現(xiàn),只要把下載線接到下載口就可以把程序下載到單片機(jī)中了。圖4.6下載線電路原理圖4.5 溫度控制電路溫度控制分為高、低溫控制。設(shè)計(jì)所要達(dá)到的效果就是,我們給單片機(jī)設(shè)置一個(gè)固定的溫度范

34、圍,當(dāng)溫度傳感器測(cè)量的溫度高于我們?cè)O(shè)置的最高數(shù)值時(shí),這時(shí)單片機(jī)指令控制P3.2口產(chǎn)生一個(gè)高電平信號(hào)送給固態(tài)繼電器,是繼電器的產(chǎn)開開關(guān)閉合,使開關(guān)打開通電??刂埔粋€(gè)降溫裝置的開啟(本設(shè)計(jì)中考慮到成本和技術(shù)問題,采用電風(fēng)扇進(jìn)行降溫控制)。相反,當(dāng)溫度傳感器測(cè)量的溫度低于設(shè)置的最低數(shù)值的時(shí)候,這時(shí)單片機(jī)又控制P3.3口產(chǎn)生一個(gè)高電平送給繼電器,使開關(guān)打開從而控制升問裝置進(jìn)行加熱(本系統(tǒng)采用電熱絲進(jìn)行加熱)。通過一個(gè)升溫和一個(gè)降溫裝置,就能實(shí)現(xiàn)溫度的調(diào)節(jié)。只要通過程序,將我們所要達(dá)到的溫度控制在一個(gè)恒溫狀態(tài)下??刂齐娐返脑韴D如5.7所示,繼電器的正極接電源電壓,負(fù)極接三極管的集電極,之所以采用三極管

35、,就是繼電器一般是需要驅(qū)動(dòng)電壓的。而單片機(jī)的管腳不能提供最后高的電壓,這樣就會(huì)導(dǎo)致即使單片機(jī)送出了高電平也無法將繼電器開關(guān)打開。當(dāng)接上三極管后就能將輸入信號(hào)的發(fā)送到繼電器當(dāng)中,驅(qū)動(dòng)開關(guān)使溫度調(diào)節(jié)器改變溫度。圖4.7溫度控制電路繼電器的選擇上,我們選擇北京科通繼電器總廠生產(chǎn)的GX-10F繼電器為例,列出輸入、輸出參數(shù),根據(jù)輸入電壓參數(shù)值大小,可確定工作電壓大小。如采用TTL或CMOS等邏輯電平控制時(shí),最好采用有足夠帶載能力的低電平驅(qū)動(dòng),并盡可能使“0”電平低于0.8 V。如在噪聲很強(qiáng)的環(huán)境下工作,不能選用通、斷電壓值相差小的產(chǎn)品,必需選用通、斷電壓值相差大的產(chǎn)品,(如選接通電壓為8 V或12 V

36、的產(chǎn)品)這樣不會(huì)因噪聲干擾而造成控制失靈 。我們?cè)谶@選擇12V的繼電器作為我們使用的器件。使用的具體元件參數(shù)如下表。第五章 溫度控制的軟件設(shè)計(jì)5.1 數(shù)碼管動(dòng)態(tài)顯示單片機(jī)AT89C51輸出8個(gè)高低電平信號(hào)每個(gè)數(shù)碼管的8個(gè)段分別連接P0.0-P0.7口上當(dāng)某個(gè)數(shù)碼管的公共端為“0”時(shí),那么這個(gè)數(shù)碼管被選中,這時(shí)此數(shù)碼管的哪段為”1“則哪段就被點(diǎn)亮初學(xué)者可以利用本實(shí)驗(yàn)板自帶的仿真器功能來單步執(zhí)行,來觀察數(shù)碼管的工作原理,由于I/O資源有限,一個(gè)51單片機(jī)只有32個(gè)I/O所以只能將8個(gè)數(shù)碼管以動(dòng)態(tài)掃描的方式來顯示,何為動(dòng)態(tài)掃描呢?動(dòng)態(tài)掃描的連接方式是將8個(gè)數(shù)碼管的8個(gè)段用相同的I/O來控制,即第一個(gè)

37、數(shù)碼管的”a“段由P0.0控制第二個(gè)數(shù)碼管的”a“段也是由P0.0來控制的而8個(gè)數(shù)碼管的公共端則是由不同的I/O來控制,即第一個(gè)數(shù)碼管的公共端由P2.4控制而第二個(gè)數(shù)碼管的公共端有P2.5控制動(dòng)態(tài)掃描的控制原理是:將第一個(gè)數(shù)碼管要顯示的內(nèi)容顯示出來,然后立刻將第二個(gè)數(shù)碼管的內(nèi)容顯示出來,一次把第8個(gè)數(shù)碼管的內(nèi)容顯示出來由于單片機(jī)的工作速度非???,所以當(dāng)顯示第8個(gè)數(shù)碼管的時(shí)候第一個(gè)數(shù)碼管的內(nèi)容還沒有完全消失,這時(shí)立刻重復(fù)上面的過程,就實(shí)現(xiàn)了數(shù)碼管的。數(shù)碼關(guān)分共陽極數(shù)碼管,還有就是共陰極數(shù)碼管,我們就采用共陰來使用。單片機(jī)各個(gè)口的電壓輸出的都為高電平。共陰就通過控制陽極,即可控制LED顯示。5.2

38、 DS18B20初始化DS18B20的一線工作協(xié)議流程是:初始化ROM操作指令存儲(chǔ)器操作指令數(shù)據(jù)傳輸。其工作時(shí)序包括初始化時(shí)序、寫時(shí)序和讀時(shí)序。故主機(jī)控制DS18B20完成溫度轉(zhuǎn)換必須經(jīng)過三個(gè)步驟:每一次讀寫之前都要對(duì)DS18B20進(jìn)行復(fù)位,復(fù)位成功后發(fā)送一條ROM指令,最后發(fā)送RAM指令,這樣才能對(duì)DS18B20進(jìn)行預(yù)定的操作。復(fù)位要求主CPU將數(shù)據(jù)線下拉500微秒,然后釋放,DS18B20收到信號(hào)后等待1660微秒左右,后發(fā)出60240微秒的存在低脈沖,主CPU收到此信號(hào)表示復(fù)位成功。DS18B20的單線協(xié)議和命令 DS18B20有嚴(yán)格的通信協(xié)議來保證各位數(shù)據(jù)的傳輸?shù)恼_性和完整性主機(jī)操作

39、單線器件DS18B20必須遵循下面的順序.1.初始化單線總線上的所有操作均從初始化開始。初始化過程如下:主機(jī)通過拉低單線480us以上,產(chǎn)生復(fù)位脈沖,然后釋放該線,進(jìn)入Rx接收模式主機(jī)釋放總線時(shí),會(huì)產(chǎn)生一個(gè)上升沿。單線期間DS18B20檢測(cè)到改上升沿后,延時(shí)15-60us,通過拉低總線60-240us來產(chǎn)生應(yīng)答脈沖。主機(jī)棘手到從機(jī)的應(yīng)答脈沖后,說明有單線器件在線。2.ROM操作命令一旦總線主機(jī)檢測(cè)到應(yīng)答脈沖,便可以發(fā)起ROM操作命令。工有5位ROM操作命令。3.內(nèi)存操作命令在成功執(zhí)行了ROM操作命令之后,才可以使用內(nèi)存操作命令。主機(jī)可以提供6種內(nèi)存操作命令。4.數(shù)據(jù)處理DS18B20要有嚴(yán)格的時(shí)序來保證數(shù)據(jù)的完整性。在單線DQ上,存在復(fù)位脈沖、應(yīng)答脈沖、寫“0”、寫“1”、讀“0”和讀“1”幾種信號(hào)類型。其中,出來映帶脈沖之外,均由主機(jī)產(chǎn)生。數(shù)據(jù)位的讀和寫則是通過使用讀、寫時(shí)隙實(shí)現(xiàn)的。首先來看寫時(shí)隙。當(dāng)主機(jī)將數(shù)據(jù)從高電平來至低電平時(shí),產(chǎn)生寫時(shí)隙

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論