




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、摘要···············································1一、引言··
2、;·············································2二、總體方案設(shè)計(jì)與論證···
3、;······························3 1、方案一··················
4、3;······················3 2、方案二··························
5、83;··············4三、系統(tǒng)硬件選擇··································
6、·····51、單片機(jī)的選擇···································52 89C51 引腳功能介紹:······
7、;····················· 63、溫度傳感器的選擇···························
8、;····8四硬件電路設(shè)計(jì)·······································10 1溫度檢測(cè)電路····
9、;·······························112顯示電路·················
10、3;·····················12五、系統(tǒng)軟件設(shè)計(jì)···························
11、············131概述·····································&
12、#183;·······132主程序流程圖·····································133C語(yǔ)言程序··
13、183;····································14六、設(shè)計(jì)體會(huì)············
14、·······························20附錄:參考文獻(xiàn)·················
15、83;·······················21摘要:隨著時(shí)代的進(jìn)步和發(fā)展,單片機(jī)技術(shù)已經(jīng)普及到我們生活、工作、科研、各個(gè)領(lǐng)域,已經(jīng)成為一種比較成熟的技術(shù), 本文主要介紹了一個(gè)基于89C51單片機(jī)的測(cè)溫系統(tǒng),詳細(xì)描述了利用數(shù)字溫度傳感器DS18B20開發(fā)測(cè)溫系統(tǒng)的過程,重點(diǎn)對(duì)傳感器在單片機(jī)下的硬件連接,軟件編程以及各模塊系統(tǒng)流程進(jìn)行了詳盡分析,對(duì)各部分的電路也
16、一一進(jìn)行了介紹,該系統(tǒng)可以方便的實(shí)現(xiàn)實(shí)現(xiàn)溫度采集和顯示,并可根據(jù)需要任意設(shè)定上下限報(bào)警溫度,它使用起來相當(dāng)方便,具有精度高、量程寬、靈敏度高、體積小、功耗低等優(yōu)點(diǎn),適合于我們?nèi)粘I詈凸?、農(nóng)業(yè)生產(chǎn)中的溫度測(cè)量,也可以當(dāng)作溫度處理模塊嵌入其它系統(tǒng)中,作為其他主系統(tǒng)的輔助擴(kuò)展。DS18B20與AT89C51結(jié)合實(shí)現(xiàn)最簡(jiǎn)溫度檢測(cè)系統(tǒng),該系統(tǒng)結(jié)構(gòu)簡(jiǎn)單,抗干擾能力強(qiáng),適合于惡劣環(huán)境下進(jìn)行現(xiàn)場(chǎng)溫度測(cè)量,有廣泛的應(yīng)用前景。關(guān)鍵詞:?jiǎn)纹瑱C(jī);溫度檢測(cè);AT89C51;DS18B20;一、引言隨著科技的不斷發(fā)展,現(xiàn)代社會(huì)對(duì)各種信息參數(shù)的準(zhǔn)確度和精確度的要求都有了幾何級(jí)的增長(zhǎng),而如何準(zhǔn)確而又迅速的獲得這些參數(shù)就需要
17、受制于現(xiàn)代信息基礎(chǔ)的發(fā)展水平。在三大信息信息采集(即傳感器技術(shù))、信息傳輸(通信技術(shù))和信息處理(計(jì)算機(jī)技術(shù))中,傳感器屬于信息技術(shù)的前沿尖端產(chǎn)品,尤其是溫度傳感器技術(shù),在我國(guó)各領(lǐng)域已經(jīng)引用的非常廣泛,可以說是滲透到社會(huì)的每一個(gè)領(lǐng)域,人民的生活與環(huán)境的溫度息息相關(guān),在工業(yè)生產(chǎn)過程中需要實(shí)時(shí)測(cè)量溫度,在農(nóng)業(yè)生產(chǎn)中也離不開溫度的測(cè)量,因此研究溫度的測(cè)量方法和裝置具有重要的意義。測(cè)量溫度的關(guān)鍵是溫度傳感器,溫度傳感器的發(fā)展經(jīng)歷了三個(gè)發(fā)展階段:傳統(tǒng)的分立式溫度傳感器模擬集成溫度傳感器智能集成溫度傳感器。目前的智能溫度傳感器(亦稱數(shù)字溫度傳感器)是在20世紀(jì)90年代中期問世的,它是微電子技術(shù)、計(jì)算機(jī)技術(shù)
18、和自動(dòng)測(cè)試技術(shù)(ATE)的結(jié)晶,特點(diǎn)是能輸出溫度數(shù)據(jù)及相關(guān)的溫度控制量,適配各種微控制器(MCU)。社會(huì)的發(fā)展使人們對(duì)傳感器的要求也越來越高,現(xiàn)在的溫度傳感器正在基于單片機(jī)的基礎(chǔ)上從模擬式向數(shù)字式,從集成化向智能化、網(wǎng)絡(luò)化的方向飛速發(fā)展,并朝著高精度、多功能、總線標(biāo)準(zhǔn)化、高可靠性及安全性、開發(fā)虛擬傳感器和網(wǎng)絡(luò)傳感器、研制單片測(cè)溫系統(tǒng)等高科技的方向迅速發(fā)展,本文將介紹智能集成溫度傳感器DS18B20的結(jié)構(gòu)特征及控制方法,并對(duì)以此傳感器,89C51單片機(jī)為控制器構(gòu)成的數(shù)字溫度測(cè)量裝置的工作原理及程序設(shè)計(jì)作了詳細(xì)的介紹。與傳統(tǒng)的溫度計(jì)相比,其具有讀數(shù)方便,測(cè)溫范圍廣,測(cè)溫準(zhǔn)確,輸出溫度采用數(shù)字顯示,
19、主要用于對(duì)測(cè)溫要求比較準(zhǔn)確的場(chǎng)所,或科研實(shí)驗(yàn)室使用。該設(shè)計(jì)控制器使用ATMEL公司的AT89C51單片機(jī),測(cè)溫傳感器使用DALLAS公司DS18B20,用液晶來實(shí)現(xiàn)溫度顯示。二、系統(tǒng)方案論證與比較該系統(tǒng)主要由溫度測(cè)量和數(shù)據(jù)采集兩部分電路組成,實(shí)現(xiàn)的方法有很多種,下面將列出兩種在日常生活中和工農(nóng)業(yè)生產(chǎn)中經(jīng)常用到的實(shí)現(xiàn)方案。2. 1、方案一采用熱電偶溫差電路測(cè)溫,溫度檢測(cè)部分可以使用低溫?zé)崤?,熱電偶由兩個(gè)焊接在一起的異金屬導(dǎo)線所組成(熱電偶的構(gòu)成如圖 3.1),熱電偶產(chǎn)生的熱電勢(shì)由兩種金屬的接觸電勢(shì)和單一導(dǎo)體的溫差電勢(shì)組成。通過將參考結(jié)點(diǎn)保持在已知溫度并測(cè)量該電壓,便可推斷出檢測(cè)結(jié)點(diǎn)的溫度。數(shù)據(jù)采
20、集部分則使用帶有A/D 通道的單片機(jī),在將隨被測(cè)溫度變化的電壓或電流采集過來,進(jìn)行A/D 轉(zhuǎn)換后,就可以用單片機(jī)進(jìn)行數(shù)據(jù)的處理,在顯示電路上,就可以將被測(cè)溫度顯示出來。熱電偶的優(yōu)點(diǎn)是工作溫度范圍非常寬,且體積小,但是它們也存在著輸出電壓小、容易遭受來自導(dǎo)線環(huán)路的噪聲影響以及漂移較高的缺點(diǎn),并且這種設(shè)計(jì)需要用到A/D 轉(zhuǎn)換電路,感溫電路比較麻煩。圖 3.1熱電偶電路圖系統(tǒng)主要包括對(duì)A/D0809 的數(shù)據(jù)采集,自動(dòng)手動(dòng)工作方式檢測(cè),溫度的顯示等,這幾項(xiàng)功能的信號(hào)通過輸入輸出電路經(jīng)單片機(jī)處理。此外還有復(fù)位電路,晶振電路,啟動(dòng)電路等。故現(xiàn)場(chǎng)輸入硬件有手動(dòng)復(fù)位鍵、A/D 轉(zhuǎn)換芯片,處理芯片為51 芯片,
21、執(zhí)行機(jī)構(gòu)有4 位數(shù)碼管、報(bào)警器等。2. 2、方案二采用數(shù)字溫度芯片DS18B20 測(cè)量溫度,輸出信號(hào)全數(shù)字化。便于單片機(jī)處理及控制,省去傳統(tǒng)的測(cè)溫方法的很多外圍電路。且該芯片的物理化學(xué)性很穩(wěn)定,它能用做工業(yè)測(cè)溫元件,此元件線形較好。在0100 攝氏度時(shí),最大線形偏差小于1 攝氏度。DS18B20 的最大特點(diǎn)之一采用了單總線的數(shù)據(jù)傳輸,由數(shù)字溫度計(jì)DS18B20和微控制器AT89C51構(gòu)成的溫度測(cè)量裝置,它直接輸出溫度的數(shù)字信號(hào),可直接與計(jì)算機(jī)連接。這樣,測(cè)溫系統(tǒng)的結(jié)構(gòu)就比較簡(jiǎn)單,體積也不大。采用51 單片機(jī)控制,軟件編程的自由度大,可通過編程實(shí)現(xiàn)各種各樣的算術(shù)算法和邏輯控制,而且體積小,硬件實(shí)
22、現(xiàn)簡(jiǎn)單,安裝方便。既可以單獨(dú)對(duì)多DS18B20控制工作,還可以與PC 機(jī)通信上傳數(shù)據(jù),另外AT89S51 在工業(yè)控制上也有著廣泛的應(yīng)用,編程技術(shù)及外圍功能電路的配合使用都很成熟。該系統(tǒng)利用AT89C51芯片控制溫度傳感器DS18B20進(jìn)行實(shí)時(shí)溫度檢測(cè)并顯示,能夠?qū)崿F(xiàn)快速測(cè)量環(huán)境溫度,并可以根據(jù)需要設(shè)定上下限報(bào)警溫度。該系統(tǒng)擴(kuò)展性非常強(qiáng),它可以在設(shè)計(jì)中加入時(shí)鐘芯片DS1302以獲取時(shí)間數(shù)據(jù),在數(shù)據(jù)處理同時(shí)顯示時(shí)間,并可以利用AT24C16芯片作為存儲(chǔ)器件,以此來對(duì)某些時(shí)間點(diǎn)的溫度數(shù)據(jù)進(jìn)行存儲(chǔ),利用鍵盤來進(jìn)行調(diào)時(shí)和溫度查詢,獲得的數(shù)據(jù)可以通過MAX232芯片與計(jì)算機(jī)的RS232接口進(jìn)行串口通信,方
23、便的采集和整理時(shí)間溫度數(shù)據(jù)。系統(tǒng)框圖如圖 3.3所示圖 3.3 DS18B20溫度測(cè)溫系統(tǒng)框圖從以上兩種方案,容易看出方案一的測(cè)溫裝置可測(cè)溫度范圍寬、體積小,但是線性誤差較大。方案二的測(cè)溫裝置電路簡(jiǎn)單、精確度較高、實(shí)現(xiàn)方便、軟件設(shè)計(jì)也比較簡(jiǎn)單,故本次設(shè)計(jì)采用了方案二。三、系統(tǒng)器件選擇3.1、 單片機(jī)的選擇對(duì)于單片機(jī)的選擇,可以考慮使用8031與8051系列,由于8031沒有內(nèi)部RAM,系統(tǒng)又需要大量?jī)?nèi)存存儲(chǔ)數(shù)據(jù),因而不適用。AT89C51 是美國(guó) ATMEL 公司生產(chǎn)的低功耗,高性能 CMOS8 位單片機(jī),片內(nèi)含 4kbytes 的可編程的 Flash 只讀程序存儲(chǔ)器,兼容標(biāo)準(zhǔn) 8051 指令
24、系統(tǒng)及引腳。它集 Flash 程序存儲(chǔ)器既可在線編程(ISP),也可用傳統(tǒng)方法進(jìn)行編程,所以低價(jià)位 AT89C51單片機(jī)可為提供許多高性價(jià)比的應(yīng)用場(chǎng)合,可靈活應(yīng)用于各種控制領(lǐng)域,對(duì)于簡(jiǎn)單的測(cè)溫系統(tǒng)已經(jīng)足夠。單片機(jī)AT89C51 具有低電壓供電和體積小等特點(diǎn),四個(gè)端口只需要兩個(gè)口就能滿足電路系統(tǒng)的設(shè)計(jì)需要,很適合便攜手持式產(chǎn)品的設(shè)計(jì)使用系統(tǒng)可用二節(jié)電池供電。主要特性如下圖-1所示:與MCS-51 兼容4K字節(jié)可編程閃爍存儲(chǔ)器壽命:1000寫/擦循環(huán)數(shù)據(jù)保留時(shí)間:10年全靜態(tài)工作:0Hz-24Hz三級(jí)程序存儲(chǔ)器鎖定128*8位內(nèi)部RAM32可編程I/O線兩個(gè)16位定時(shí)器/計(jì)數(shù)器5個(gè)中斷源 AT89
25、C51單片機(jī)引腳如圖-1所示可編程串行通道 低功耗的閑置和掉電模式片內(nèi)振蕩器和時(shí)鐘電路 3.2 89C51 引腳功能介紹: AT89C51 單片機(jī)為40 引腳雙列直插式封裝,其引腳排列和邏輯符號(hào)如圖-1 所示:各引腳功能簡(jiǎn)單介紹如下:VCC:供電電壓 GND:接地 P0口:P0口為一個(gè)8位漏級(jí)開路雙向I/O口,每個(gè)管腳可吸收8TTL門電流。當(dāng)P1口的管腳寫“1”時(shí),被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲(chǔ)器,它可以被定義為數(shù)據(jù)/地址的第八位。在FLASH編程時(shí),P0口作為原碼輸入口,當(dāng)FLASH進(jìn)行校驗(yàn)時(shí),P0輸出原碼,此時(shí)P0外部電位必須被拉高。P1口:P1口是一個(gè)內(nèi)部提供上拉電阻的8
26、位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入“1”后,電位被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時(shí),將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗(yàn)時(shí),P1口作為第八位地址接收。P2口:P2口為一個(gè)內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個(gè)TTL門電流,當(dāng)P2口被寫“1”時(shí),其管腳電位被內(nèi)部上拉電阻拉高,且作為輸入。作為輸入時(shí),P2口的管腳電位被外部拉低,將輸出電流,這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲(chǔ)器或16位地址外部數(shù)據(jù)存儲(chǔ)器進(jìn)行存取時(shí),P2口輸出地址的高八位。在給出地址“1”時(shí),它利用內(nèi)部上拉的優(yōu)勢(shì),當(dāng)對(duì)外部八
27、位地址數(shù)據(jù)存儲(chǔ)器進(jìn)行讀寫時(shí),P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗(yàn)時(shí)接收高八位地址信號(hào)和控制信號(hào)。P3口:P3口管腳是8個(gè)帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個(gè)TTL門電流。當(dāng)P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入時(shí),由于外部下拉為低電平,P3口將輸出電流(ILL),也是由于上拉的緣故。P3口也可作為AT89C51的一些特殊功能口:P3.0 RXD(串行輸入口)P3.1 TXD(串行輸出口)P3.2 INT0(外部中斷0)P3.3 INT1(外部中斷1)P3.4 T0(記時(shí)器0外部輸入)P3.5 T1(記時(shí)器1外部輸入)P3.6 WR (
28、外部數(shù)據(jù)存儲(chǔ)器寫選通)P3.7 RD (外部數(shù)據(jù)存儲(chǔ)器讀選通)同時(shí)P3口同時(shí)為閃爍編程和編程校驗(yàn)接收一些控制信號(hào)。RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)機(jī)器周期的高平時(shí)間。ALE / PROG :當(dāng)訪問外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時(shí),ALE端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的1/6。因此它可用作對(duì)外部輸出的脈沖或用于定時(shí)目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過一個(gè)ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時(shí), ALE只有在執(zhí)行MOVX,MOVC
29、指令時(shí)ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。PSEN:外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取址期間,每個(gè)機(jī)器周期PSEN兩次有效。但在訪問內(nèi)部部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的PSEN信號(hào)將不出現(xiàn)。EA/VPP:當(dāng)EA保持低電平時(shí),訪問外部ROM;注意加密方式1時(shí),EA將內(nèi)部鎖定為RESET;當(dāng)EA端保持高電平時(shí),訪問內(nèi)部ROM。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。XTAL1:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。XTAL2:來自反向振蕩器的輸出。3.3、溫度傳感器的選擇3.3.1. DS18B20 簡(jiǎn)單介
30、紹:DALLAS 最新單線數(shù)字溫度傳感器DS18B20是一種新型的“一線器件”,其體積更小、更適用于多種場(chǎng)合、且適用電壓更寬、更經(jīng)濟(jì)。DALLAS 半導(dǎo)體公司的數(shù)字化溫度傳感器DS18B20是世界上第一片支持“一線總線”接口的溫度傳感器。溫度測(cè)量范圍為-55+125 攝氏度,可編程為9位12 位轉(zhuǎn)換精度,測(cè)溫分辨率可達(dá)0.0625攝氏度,分辨率設(shè)定參數(shù)以及用戶設(shè)定的報(bào)警溫度存儲(chǔ)在EEPROM 中,掉電后依然保存。被測(cè)溫度用符號(hào)擴(kuò)展的16位數(shù)字量方式串行輸出;其工作電源既可以在遠(yuǎn)端引入,也可以采用寄生電源方式產(chǎn)生;多個(gè)DS18B20可以并聯(lián)到3 根或2 根線上,CPU只需一根端口線就能與諸多DS
31、18B20 通信,占用微處理器的端口較少,可節(jié)省大量的引線和邏輯電路。因此用它來組成一個(gè)測(cè)溫系統(tǒng),具有線路簡(jiǎn)單,在一根通信線,可以掛很多這樣的數(shù)字溫度計(jì),十分方便。DS18B20 的性能特點(diǎn)如下:獨(dú)特的單線接口方式,DS18B20在與微處理器連接時(shí)僅需要一條口線即可實(shí)現(xiàn)微處理器與DS18B20的雙向通訊DS18B20支持多點(diǎn)組網(wǎng)功能,多個(gè)DS18B20可以并聯(lián)在唯一的三線上,實(shí)現(xiàn)組網(wǎng)多點(diǎn)測(cè)溫DS18B20在使用中不需要任何外圍元件,全部傳感元件及轉(zhuǎn)換電路集成在形如一只三極管的集成電路內(nèi)適應(yīng)電壓范圍更寬,電壓范圍:3.05.5V,在寄生電源方式下可由數(shù)據(jù)線供電溫范圍55125,在-10+85時(shí)精
32、度為±0.5零待機(jī)功耗可編程的分辨率為912位,對(duì)應(yīng)的可分辨溫度分別為0.5、0.25、0.125和0.0625,可實(shí)現(xiàn)高精度測(cè)溫在9位分辨率時(shí)最多在93.75ms內(nèi)把溫度轉(zhuǎn)換為數(shù)字,12位分辨率時(shí)最多在750ms內(nèi)把溫度值轉(zhuǎn)換為數(shù)字,速度更快測(cè)量結(jié)果直接輸出數(shù)字溫度信號(hào),以"一線總線"串行傳送給CPU,同時(shí)可傳送CRC校驗(yàn)碼,具有極強(qiáng)的抗干擾糾錯(cuò)能力負(fù)電壓特性,電源極性接反時(shí),溫度計(jì)不會(huì)因發(fā)熱而燒毀,但不能正常工作以上特點(diǎn)使DS18B20非常適用與多點(diǎn)、遠(yuǎn)距離溫度檢測(cè)系統(tǒng)。DS18B20內(nèi)部結(jié)構(gòu)主要由四部分組成:64位光刻ROM、溫度傳感器、非揮發(fā)的溫度報(bào)警觸發(fā)
33、器TH和TL、配置寄存器。DS18B20的管腳排列、各種封裝形式如圖 4.2 所示,DQ 為數(shù)據(jù)輸入/輸出引腳。開漏單總線接口引腳。當(dāng)被用著在寄生電源下,也可以向器件提供電源;GND為地信號(hào);VDD為可選擇的VDD引腳。當(dāng)工作于寄生電源時(shí),此引腳必須接地。其電路圖 4.3所示.。 圖 4.2 外部封裝形式 圖4.3 傳感器電路圖3.3.2 DS18B20使用中的注意事項(xiàng)DS18B20 雖然具有測(cè)溫系統(tǒng)簡(jiǎn)單、測(cè)溫精度高、連接方便、占用口線少等優(yōu)點(diǎn),但在實(shí)際應(yīng)用中也應(yīng)注意以下幾方面的問題:DS18B20 從測(cè)溫結(jié)束到將溫度值轉(zhuǎn)換成數(shù)字量需要一定的轉(zhuǎn)換時(shí)間,這是必須保證的,不然會(huì)出現(xiàn)轉(zhuǎn)換錯(cuò)誤的現(xiàn)象,
34、使溫度輸出總是顯示85。在實(shí)際使用中發(fā)現(xiàn),應(yīng)使電源電壓保持在5V 左右,若電源電壓過低,會(huì)使所測(cè)得的溫度精度降低。較小的硬件開銷需要相對(duì)復(fù)雜的軟件進(jìn)行補(bǔ)償,由于DS1820與微處理器間采用串行數(shù)據(jù)傳送,因此,在對(duì)DS1820進(jìn)行讀寫編程時(shí),必須嚴(yán)格的保證讀寫時(shí)序,否則將無法讀取測(cè)溫結(jié)果。在使用PL/M、C等高級(jí)語(yǔ)言進(jìn)行系統(tǒng)程序設(shè)計(jì)時(shí),對(duì)DS1820操作部分最好采用匯編語(yǔ)言實(shí)現(xiàn)。在DS18B20的有關(guān)資料中均未提及單總線上所掛DS18B20 數(shù)量問題,容易使人誤認(rèn)為可以掛任意多個(gè)DS18B20,在實(shí)際應(yīng)用中并非如此,當(dāng)單總線上所掛DS18B20 超過8 個(gè)時(shí),就需要解決微處理器的總線驅(qū)動(dòng)問題,這
35、一點(diǎn)在進(jìn)行多點(diǎn)測(cè)溫系統(tǒng)設(shè)計(jì)時(shí)要加以注意。在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)行DS18B20硬件連接和軟件設(shè)計(jì)時(shí)也要給予一定的重視。四.硬件電路設(shè)計(jì)本設(shè)計(jì)由DS18B20溫度傳感器芯片測(cè)量當(dāng)前的溫度并將轉(zhuǎn)換后的結(jié)果送入單片機(jī)。然后通過A89C51單片機(jī)驅(qū)動(dòng)兩位共陽(yáng)極8段LED數(shù)碼管顯示測(cè)量溫度值。如附錄中本設(shè)計(jì)硬件電路圖所示,本電路主要有DS18B20溫度傳感器芯片,兩位共陽(yáng)極數(shù)碼管,AT89C51單片機(jī)及相應(yīng)外
36、圍電路組成。其中DS18B20采用“一線制”與單片機(jī)相連。4.1、溫度檢測(cè)電路DS18B20 最大的特點(diǎn)是單總線數(shù)據(jù)傳輸方式,DS18B20 的數(shù)據(jù)I/O 均由同一條線來完成。DS18B20 的電源供電方式有2 種: 外部供電方式和寄生電源方式。工作于寄生電源方式時(shí), VDD 和GND 均接地, 他在需要遠(yuǎn)程溫度探測(cè)和空間受限的場(chǎng)合特別有用, 原理是當(dāng)1 W ire 總線的信號(hào)線DQ 為高電平時(shí), 竊取信號(hào)能量給DS18B20 供電, 同時(shí)一部分能量給內(nèi)部電容充電, 當(dāng)DQ為低電平時(shí)釋放能量為DS18B20 供電。但寄生電源方式需要強(qiáng)上拉電路, 軟件控制變得復(fù)雜(特別是在完成溫度轉(zhuǎn)換和拷貝數(shù)據(jù)
37、到E2PROM 時(shí)) , 同時(shí)芯片的性能也有所降低。外部電源供電方式是DS18B20最佳的工作方式,工作穩(wěn)定可靠,抗干擾能力強(qiáng),而且電路也比較簡(jiǎn)單,可以開發(fā)出穩(wěn)定可靠的多點(diǎn)溫度監(jiān)控系統(tǒng)。因此本設(shè)計(jì)采用外部供電方式。如下圖所示:DS18B204.7K+5V+5V溫度傳感器DS18B20的測(cè)量范圍為-55+125,在-10+85時(shí)精度為±0.5。因?yàn)楸驹O(shè)計(jì)只用于測(cè)量環(huán)境溫度,所以只顯示0+85。 4.2、顯示電路 本設(shè)計(jì)顯示電路采用兩位共陽(yáng)極LED數(shù)碼管來顯示測(cè)量得到的溫度值。LED數(shù)碼管能在低電壓下工作,而且體積小、重量輕、使用壽命長(zhǎng),因次本設(shè)計(jì)選用此數(shù)碼管作為顯示器件。 一個(gè)LED數(shù)
38、碼管只能顯示一位的字符,如果字符位數(shù)不止一位,可以用幾個(gè)數(shù)碼管組成,但要控制多位的顯示電路需要有字段控制和字位控制,字段控制是指控制所要顯示的字符是什么,控制電路應(yīng)將字符的七段碼通過輸出口連接到LED的ag引腳,是某些段點(diǎn)亮,某些段處于熄滅狀態(tài)。字位控制是指控制在多位顯示器中,哪幾位發(fā)光或那幾位不發(fā)光,字位控制則需要通過字位碼作用于LED數(shù)碼管的公共引腳,是某一位或某幾位的數(shù)碼管可以發(fā)光。數(shù)碼管顯示電路分為動(dòng)態(tài)顯示和靜態(tài)顯示。 靜態(tài)顯示方式是指每一個(gè)數(shù)碼管的字段控制是獨(dú)立的,每一個(gè)數(shù)碼管都需要配置一個(gè)8位輸出口來輸出該字位的七段碼。因此需要顯示多位時(shí)需要多個(gè)輸出口,通常片內(nèi)并口不夠用,需要在片
39、外擴(kuò)展。 動(dòng)態(tài)顯示又稱為掃描顯示方式,也就是在某一時(shí)刻只能讓一個(gè)字位處于選通狀態(tài),其他字位一律斷開,同時(shí)在字段線上發(fā)出該位要顯示的字段碼,這樣在某一時(shí)刻某一位數(shù)碼管就會(huì)被點(diǎn)亮,并顯示出相應(yīng)的字符。下一時(shí)刻改變所顯示的字位和字段碼,點(diǎn)亮另一個(gè)數(shù)碼管,顯示另一個(gè)字符。繞后一次掃描輪流點(diǎn)亮其他數(shù)碼管,只要掃描速度快,利用人眼的視覺殘留效應(yīng),會(huì)使人感覺到幾位數(shù)碼管都在穩(wěn)定的顯示。 本設(shè)計(jì)采用數(shù)碼管動(dòng)態(tài)顯示,電路如下圖所示:顯示部分電路 圖-6圖中由單片機(jī)P1口串接74HC245驅(qū)動(dòng)兩位共陽(yáng)極數(shù)碼管,上拉電阻排為10K。由P2.0和P2.1通過PNP型三極管Q1,Q2驅(qū)動(dòng)其字位。三極管發(fā)射極接高電平,當(dāng)
40、P2.0或P2.1為低電平時(shí)使三極管導(dǎo)通選通數(shù)碼管的某一位。五、系統(tǒng)軟件設(shè)計(jì)5.1、 概述整個(gè)系統(tǒng)的功能是由硬件電路配合軟件來實(shí)現(xiàn)的,當(dāng)硬件基本定型后,軟件的功能也就基本定下來了。從軟件的功能不同可分為兩大類:一是監(jiān)控軟件(主程序),它是整個(gè)控制系統(tǒng)的核心,專門用來協(xié)調(diào)各執(zhí)行模塊和操作者的關(guān)系。二是執(zhí)行軟件(子程序),它是用來完成各種實(shí)質(zhì)性的功能如測(cè)量、計(jì)算、顯示、通訊等。每一個(gè)執(zhí)行軟件也就是一個(gè)小的功能執(zhí)行模塊。這里將各執(zhí)行模塊一一列出,并為每一個(gè)執(zhí)行模塊進(jìn)行功能定義和接口定義。各執(zhí)行模塊規(guī)劃好后,就可以規(guī)劃監(jiān)控程序了。首先要根據(jù)系統(tǒng)的總體功能選擇一種最合適的監(jiān)控程序結(jié)構(gòu),然后根據(jù)實(shí)時(shí)性的要
41、求,合理地安排監(jiān)控軟件和各執(zhí)行模塊之間地調(diào)度關(guān)系。5.2總程序流程圖 對(duì)溫度傳感器進(jìn)行設(shè)置,讀取溫度數(shù)據(jù)轉(zhuǎn)化顯示溫度開始結(jié)束5.3C語(yǔ)言程序#include<reg52.h> /包含頭文件,一般情況不需要改動(dòng),頭文件包含特殊功能寄存器的定義#include<math.h>#include<INTRINS.H>#define uchar unsigned char#define uint unsigned int;/*/* 定義端口 */*/sbit seg1=P20;sbit seg2=P21;sbit seg3=P22;sbit s1=P30;sbit D
42、Q=P13;/ds18b20 端口sfr dataled=0x80;/顯示數(shù)據(jù)端口/*/* 全局變量 */*/uint temp;uchar flag_get,count,num,minute,second,x;uchar code tab=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f; /7段數(shù)碼管段碼表共陽(yáng)uchar str6;/*/* 函數(shù)聲明 */*/void delay1(uchar MS);unsigned int ReadTemperature(void);void Init_DS18B20(void);unsigned ch
43、ar ReadOneChar(void);void WriteOneChar(unsigned char dat);void delay(unsigned int i);/*/* 主函數(shù) */*/main()unsigned char TempH,TempL;TMOD|=0x01;/定時(shí)器設(shè)置TH0=0xef;TL0=0xf0;IE=0x82;TR0=1;P2=0x00; count=0;x=0;while(1) if(!s1) delay(300); if(!s1) x+; if(x=2) x=0; str5=0x39; /顯示C符號(hào) str1=tabTempH/100; /百位溫度 str
44、2=tab(TempH%100)/10; /十位溫度 str3=tab(TempH%100)%10|0x80; /個(gè)位溫度,帶小數(shù)點(diǎn) str4=tabTempL; if(flag_get=1) /定時(shí)讀取當(dāng)前溫度 temp=ReadTemperature(); if(temp&0x8000) str0=0x40;/負(fù)號(hào)標(biāo)志 temp=temp; / 取反加1 temp +=1; else str0=0; TempH=temp>>4; TempL=temp&0x0F; TempL=TempL*6/10;/小數(shù)近似處理 flag_get=0; /*/* 定時(shí)器中斷 */
45、*/void tim(void) interrupt 1 using 1/中斷,用于數(shù)碼管掃描和溫度檢測(cè)間隔TH0=0xef;/定時(shí)器重裝值TL0=0xf0;num+;if (num=50) num=0; flag_get=1;/標(biāo)志位有效 second+; if(second>=60) second=0; minute+; if(x=0)count+;if(count=1) P2=0; dataled=str0;/數(shù)碼管掃描if(count=2) P2=1; dataled=str1;if(count=3) P2=2; dataled=str2; if(count=4) P2=3; d
46、ataled=str3; if(count=5) P2=4; dataled=str4; if(count=6) P2=5; dataled=str5; count=0; if(x=1) count+;if(count=1) str4=0;if(count=2) P2=4; dataled=str5; if(count=3) P2=0; dataled=str0;if(count=4) P2=1; dataled=str1; if(count=5) P2=2; dataled=str2; if(count=6) P2=3; dataled=str3; count=0; /*/* 延時(shí)函數(shù) */*/void delay(unsigned int i)/延時(shí)函數(shù) while(i-);/*/* 初始化 */*/void Init_DS18B20(void) unsigned char x=0; DQ = 1; /DQ復(fù)位 delay(8); /稍做延時(shí) DQ = 0; /單片機(jī)將DQ拉低 delay(80); /精確延時(shí) 大于 480us DQ = 1; /拉高總線 delay(10); x=DQ; /稍做延時(shí)后 如果x=0則初始化成功 x=1則初始化失敗 delay(5);/*/* 讀一個(gè)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年經(jīng)濟(jì)政策與行業(yè)風(fēng)險(xiǎn)分析試題及答案
- 網(wǎng)絡(luò)管理員考試各類型訓(xùn)練試題及答案
- 軟件系統(tǒng)測(cè)試核心概念解析試題及答案
- 計(jì)算機(jī)科學(xué)理論與實(shí)踐結(jié)合試題及答案
- VB編程理論試題及答案
- 提升營(yíng)收的多元化策略計(jì)劃
- 吉林省松原市名校2025屆數(shù)學(xué)七下期末監(jiān)測(cè)模擬試題含解析
- 擇業(yè)思考與決策計(jì)劃
- 2025軟考網(wǎng)絡(luò)管理員提高試題及答案
- 倉(cāng)庫(kù)貨物損耗控制措施計(jì)劃
- 信貸業(yè)務(wù)法律風(fēng)險(xiǎn)防范
- 幼兒園藝術(shù)(美術(shù))教育活動(dòng)設(shè)計(jì)與實(shí)施 課件 模塊4 設(shè)計(jì)與實(shí)施幼兒園美術(shù)欣賞活動(dòng)
- 冷鏈物流司機(jī)崗位職責(zé)與工作流程介紹
- 2型糖尿病中西醫(yī)結(jié)合診療指南(2025年)解讀課件
- 浙江大學(xué)專職輔導(dǎo)員招聘真題2024
- 2022萬能試驗(yàn)機(jī)驗(yàn)收規(guī)范
- 西部計(jì)劃考試考題及答案
- 《低鉀血癥病人護(hù)理》課件
- 消防水池防水合同
- 2025年供港活牛供宰與屠宰設(shè)備采購(gòu)合同
- 2024綠城地產(chǎn)代建項(xiàng)目合作協(xié)議范本9篇
評(píng)論
0/150
提交評(píng)論