




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、基于AT89C51的數(shù)字溫度計設(shè)計與仿真摘 要隨著科學(xué)技術(shù)的不斷發(fā)展,溫度的檢測、控制應(yīng)用于許多行業(yè),數(shù)字溫度計就是其中一例,它的反應(yīng)速度快、操作簡單,對環(huán)境要求不高,因此得到廣泛的應(yīng)用。傳統(tǒng)的溫度測量大多使用熱敏電阻,但熱敏電阻的可靠性差,測量溫度準確率低,而且必須經(jīng)過專門的接口電路將模擬信號轉(zhuǎn)換成數(shù)字信號才能由單片機進行處理。本課題采用單片機作為主控芯片,利用DS18B20來實現(xiàn)測溫,用LCD液晶顯示器來實現(xiàn)溫度顯示。溫度測量范圍為0119,精確度0.1。可以手動設(shè)置溫度上下限報警值,當溫度超出所設(shè)報警值時將發(fā)出報警鳴叫聲,并顯示溫度值,該溫度計適用于人們的日常生活和工、農(nóng)業(yè)生產(chǎn)領(lǐng)域。關(guān)鍵
2、詞:數(shù)字溫度計;DS18B20;AT89C51;LCD1602Digital Thermometers Design and Simulation Based on AT89C51Deng Lian Wei(Zhangjiajie College of Jishou University,Zhangjiajie,Hunan 427000)AbstractWith the continuous development of science and technology, the temperature detection and control used in many industries,
3、the digital thermometer is a case in which the reaction speed, simple operation, less demanding on the environment, it is widely used.Most of the traditional use of thermistor temperature measurement, but poor reliability of thermistors to measure temperature, low accuracy, and must go through a spe
4、cial interface circuit converts the analog signal to digital signal processing by the microcontroller. The subject of using SCM as the main chip, the use of DS18B20 to achieve temperature, with the LCD liquid crystal display to achieve the temperature display.Temperature measurement range is 0 119 ,
5、 accuracy of 0.1 . You can manually set the alarm value upper and lower temperature, when the temperature exceeds the set alarm when the alarm calls, and display temperature, the thermometer for people's daily lives and industrial and agricultural production areas.Keywords: Digital Thermometer;
6、DS18B20; AT89C51; LCD1602目 錄第一章 緒 論11.1 前言11.2 課題的目的及意義11.3 該論文研究的內(nèi)容1第二章 設(shè)計方案22.1 方案1:使用電阻元件22.2 方案2:使用溫度傳感器22.3 方案2的總體設(shè)計框圖22.3.1 溫度傳感器22.3.2 1602LCD顯示模塊6第三章 硬件電路設(shè)計103.1 電路原理圖103.2 LCD1602顯示器與單片機的接口電路103.2.1 查看溫度報警值113.2.2 報警狀態(tài)顯示113.3 DS18B20溫度傳感器與單片機的接口電路113.3.1 檢測DS18B20狀態(tài)123.4 按鍵與單片機的接口電路123.4.1
7、設(shè)定溫度報警值13第四章 軟件設(shè)計144.1 讀出溫度子程序154.2 溫度轉(zhuǎn)換子程序154.3 計算溫度子程序164.4 顯示數(shù)據(jù)刷新子程序164.5 電路仿真174.6 結(jié)果分析20總 結(jié)21參考文獻22附 件23第一章 緒 論1.1 前言 隨著人們生活水平的不斷提高,單片機控制無疑是人們追求的目標之一,它給人們帶來的方便也是不可否定的,其中數(shù)字溫度計就是一個典型的例子,但人們對它的要求也越來越高,要為現(xiàn)代人工作、科研、生活提供更好的更方便的設(shè)施就需要從單片機技術(shù)入手,一切向著數(shù)字化控制,智能化控制方向發(fā)展。單片機技術(shù)已經(jīng)普及到我們生活,工作,科研等各個領(lǐng)域,已經(jīng)成為一種非常成熟的技術(shù)。1
8、.2 課題的目的及意義數(shù)字溫度計與傳統(tǒng)溫度計相比,具有結(jié)構(gòu)簡單、可靠性高、成本低、測量范圍廣、體積小、功耗低、顯示直觀等特點。該設(shè)計使用AT89C51,DS18B20以及通用液晶顯示屏1602LCD等。通過本次設(shè)計能夠更加了解數(shù)字溫度計工作原理和熟悉單片機的發(fā)展與應(yīng)用,鞏固所學(xué)的知識,為以后工作與學(xué)習(xí)打下堅實的基礎(chǔ)。數(shù)字溫度計主要運用在工業(yè)生產(chǎn)和實驗研究中,如電力、化工、機械制造、糧食存儲等領(lǐng)域。溫度是表征其對象和過程狀態(tài)的重要參數(shù)之一。比如:發(fā)電廠鍋爐溫度必須控制在一定的范圍之內(nèi),許多化學(xué)反應(yīng)必須在適當?shù)臏囟认虏拍苓M行。沒有合適的溫度環(huán)境,許多電子設(shè)備就不能正常工作。因此,溫度的測量和控制是
9、非常重要的。1.3 該論文研究的內(nèi)容通過對目前各種溫度傳感器的分析與研究,對溫度傳感器做出合理選擇,并根據(jù)實際需要選擇合適的主芯片和顯示器,達到優(yōu)化整體結(jié)構(gòu),提高溫度檢測精度,同時使系統(tǒng)具有測溫范圍廣、體積小、功耗低、精度高、顯示直觀等優(yōu)點,并保證系統(tǒng)結(jié)構(gòu)簡潔。本課題的研究重點將放在元器件介紹、硬件電路和程序設(shè)計這三個方面。通過研究,將設(shè)計出一款簡潔實用、精確穩(wěn)定、使用直觀的便攜式數(shù)字溫度計。第二章 設(shè)計方案2.1 方案1:使用電阻元件由于本設(shè)計是測溫電路,可以使用熱敏電阻之類的器件,利用其感溫效應(yīng)將被測溫度變化的電壓或電流采集過來,進行A/D轉(zhuǎn)換后,就可以用單片機進行數(shù)據(jù)的處理,在顯示電路上
10、,可以將被測溫度顯示出來,這種設(shè)計需要用到A/D轉(zhuǎn)換電路,感溫電路比較復(fù)雜,成本高。2.2 方案2:使用數(shù)字溫度傳感器在單片機電路設(shè)計中,大多使用數(shù)字溫度傳感器3,本課題中使用一只溫度傳感器DS18B20,此傳感器可以很容易直接讀取被測溫度值,進行轉(zhuǎn)換,就可以滿足設(shè)計要求。方案二電路比較實用,軟件設(shè)計也比較簡單,故采用了方案二。2.3 方案2的總體設(shè)計框圖溫度計電路設(shè)計總體方框圖如圖2.1所示,控制器采用單片機AT89C51,溫度傳感器采用DS18B20,用LCD液晶顯示屏以串口傳送數(shù)據(jù)實現(xiàn)溫度顯示8。圖2.1 總體設(shè)計框圖2.3.1 溫度傳感器DS18B20溫度傳感器是美國DALLAS半導(dǎo)體
11、公司最新推出的一種改進型智能溫度傳感器,是一線式數(shù)字式溫度計芯片,體積更小、適用電壓更寬、更經(jīng)濟。它具有結(jié)構(gòu)簡單,不需外接元件等特點。與傳統(tǒng)的熱敏電阻測溫元件相比,它能直接讀出被測溫度,并且可根據(jù)實際要求通過簡單的編程獲得912位的數(shù)字值,使系統(tǒng)設(shè)計更靈活、方便。1. DS18B20的性能特點如下6l 獨特的單線接口僅需要一個端口引腳進行通信;l 多個DS18B20可以并聯(lián)在惟一的三線上,實現(xiàn)多點組網(wǎng)功能;l 無須外部器件;l 可通過數(shù)據(jù)線供電,電壓范圍為3.05.5V;l 零待機功耗;l 溫度用9或12位數(shù)字;l 用戶可定義報警設(shè)置;l 報警搜索命令識別并標志超過程序限定溫度(溫度報警條件)
12、的器件;l 負電壓特性,電源極性接反時,溫度計不會因發(fā)熱而燒毀,但不能正常工作。2. DS18B20的外形和內(nèi)部結(jié)構(gòu)DS18B20內(nèi)部結(jié)構(gòu)主要由四部分組成:64位光刻ROM、溫度傳感器、溫度報警觸發(fā)器TH和TL、配置寄存器。DS18B20的管腳排列如圖2.2所示。圖2.2 DS18B20外形圖引腳定義: (1) DQ為數(shù)字信號輸入/輸出端; (2) GND為電源地; (3) VDD為外接供電電源輸入端(在寄生電源接線方式時接地)。其內(nèi)部結(jié)構(gòu)框圖如圖2.3所示:圖2.3 DS18B20內(nèi)部
13、結(jié)構(gòu)64位ROM的結(jié)構(gòu)開始8位是產(chǎn)品類型的編號,接著是每個器件的惟一的序號,共有48位,最后8位是前面56位的CRC檢驗碼11,這也是多個DS18B20可以采用一線進行通信的原因。溫度報警觸發(fā)器TH和TL,可通過軟件寫入用戶報警上下限。DS18B20溫度傳感器的內(nèi)部存儲器還包括一個高速暫存RAM和一個非易失性的可電擦除的EEROM。高速暫存RAM的結(jié)構(gòu)為8字節(jié)的存儲器,結(jié)構(gòu)如圖2.4所示。頭2個字節(jié)包含測得的溫度信息,第3和第4字節(jié)TH和TL的拷貝,是易失的,每次上電復(fù)位時被刷新。第5個字節(jié),為配置寄存器,它的內(nèi)容用于確定溫度值的數(shù)字轉(zhuǎn)換分辨率。DS18B20工作時寄存器中的分辨率轉(zhuǎn)換為相應(yīng)精
14、度的溫度數(shù)值。該字節(jié)各位的定義如圖2.4所示。低5位一直為1,TM是工作模式位,用于設(shè)置DS18B20在工作模式還是在測試模式,DS18B20出廠時該位被設(shè)置為0,用戶要去改動,R1和R0決定溫度轉(zhuǎn)換的精度位數(shù),來設(shè)置分辨率。溫度 LSB溫度 MSBTH用戶字節(jié)1TL用戶字節(jié)2配置寄存器保留保留保留CRC 圖2.4 DS18B20字節(jié)定義DS18B20溫度轉(zhuǎn)換的時間比較長,而且分辨率越高,所需要的溫度數(shù)據(jù)轉(zhuǎn)換時間越長。因此,在實際應(yīng)用中要將分辨率和轉(zhuǎn)換時間權(quán)衡考慮。高速暫存RAM的第6、7、8字節(jié)保留未用,表現(xiàn)為全邏輯1。第9字節(jié)讀出前面所有8字節(jié)的CRC碼,可用來檢驗數(shù)據(jù),從而保證通信數(shù)據(jù)的
15、正確性。當DS18B20接收到溫度轉(zhuǎn)換命令后,開始啟動轉(zhuǎn)換。轉(zhuǎn)換完成后的溫度值就以16位帶符號擴展的二進制補碼形式存儲在高速暫存存儲器的第1、2字節(jié)。單片機可以通過單線接口讀出該數(shù)據(jù),讀數(shù)據(jù)時低位在先,高位在后,數(shù)據(jù)格式以0.0625LSB形式表示5。當符號位S0時,表示測得的溫度值為正值,可以直接將二進制位轉(zhuǎn)換為十進制;當符號位S1時,表示測得的溫度值為負值,要先將補碼變成原碼,再計算十進制數(shù)值。表2.1是一部分溫度值對應(yīng)的二進制溫度數(shù)據(jù)。DS18B20完成溫度轉(zhuǎn)換后,就把測得的溫度值與RAM中的TH、TL字節(jié)內(nèi)容作比較。若TTH或TTL,則將該器件內(nèi)的報警標志位置位,并對主機發(fā)出的報警搜索
16、命令作出響應(yīng)。因此,可用多只DS18B20同時測量溫度并進行報警搜索。在64位ROM的最高有效字節(jié)中存儲有循環(huán)冗余檢驗碼(CRC)。主機ROM的前56位來計算CRC值,并和存入DS18B20的CRC值作比較,以判斷主機收到的ROM數(shù)據(jù)是否正確。DS18B20的測溫原理是這樣的,器件中低溫度系數(shù)晶振的振蕩頻率受溫度的影響很小,用于產(chǎn)生固定頻率的脈沖信號送給減法計數(shù)器1;高溫度系數(shù)晶振隨溫度變化其振蕩頻率明顯改變,所產(chǎn)生的信號作為減法計數(shù)器2的脈沖輸入。器件中還有一個計數(shù)門,當計數(shù)門打開時,DS18B20就對低溫度系數(shù)振蕩器產(chǎn)生的時鐘脈沖進行計數(shù)進而完成溫度測量。減法計數(shù)器1對低溫度系數(shù)晶振產(chǎn)生的
17、脈沖信號進行減法計數(shù),當減法計數(shù)器1的預(yù)置值減到0時,溫度寄存器的值將加1,減法計數(shù)器1的預(yù)置將重新被裝入,減法計數(shù)器1重新開始對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進行計數(shù),如此循環(huán)直到減法計數(shù)器計數(shù)到0時,停止溫度寄存器的累加,此時溫度寄存器中的數(shù)值就是所測溫度值。其輸出用于修正減法計數(shù)器的預(yù)置值,只要計數(shù)器門仍未關(guān)閉就重復(fù)上述過程,直到溫度寄存器值達到被測溫度值。另外,由于DS18B20單線通信功能是分時完成的,它有嚴格的時隙概念,因此讀寫時序很重要。系統(tǒng)對DS18B20的各種操作按協(xié)議進行。操作協(xié)議為:初使化DS18B20(發(fā)復(fù)位脈沖)發(fā)ROM功能命令發(fā)存儲器操作命令處理數(shù)據(jù)表2.1 一部分溫
18、度對應(yīng)值表溫度/二進制表示十六進制表示+1250000 0111 1101 000007D0H+850000 0101 0101 00000550H+25.06250000 0001 1001 00000191H+10.1250000 0000 1010 000100A2H+0.50000 0000 0000 00100008H00000 0000 0000 10000000H 2.3.2 1602LCD模塊顯示特性4單5V電源電壓,低功耗、長壽命、高可靠性內(nèi)置192種字符(160個5×7點陣字符和32個5×10點陣字符)具有64個字節(jié)的自定義字符RAM,可定義8個5
19、15;8點陣字符或四個5×11點陣字符顯示方式:STN、半透、正顯驅(qū)動方式:1/16DUTY,1/5BIAS視角方向:6點背光方式:底部LED通訊方式:4位或8位并口可選標準的接口特性,適配MC51和M6800系列MPU的操作時序1. 1602LCD模塊引腳定義圖2.5 1602LCD引腳外形圖1602LCD采用標準的14腳(無背光)接口,各引腳功能說明如表2.2所示。表2.2 1602LCD引腳定義表管腳定義符號功能1Vss電源地(GND)2Vdd電源電壓(5V)3VEELCD驅(qū)動電壓(可調(diào))4RS寄存器選擇輸入端,輸入MPU選擇模塊內(nèi)部寄存器類型號;RS=0,當MPU行進寫模塊操
20、作,指向指令寄存器;當MPU進行讀模塊操作,指向地址計數(shù)器;RS=1,無論MPU讀操作還是寫操作,均指向數(shù)據(jù)寄存器5R/W讀寫控制輸入端,輸入MPU選擇讀/寫模塊操作操作信號:R/W0 讀操作;R/W1 寫操作6E使能信號輸入端,輸入MPU讀/寫模塊操作使能信號:讀操作時,高電平有效;寫操作時,下降沿有效7DB0數(shù)據(jù)輸入/輸出口,MPU與模塊之間的數(shù)據(jù)傳送通道8DB1數(shù)據(jù)輸入/輸出口,MPU與模塊之間的數(shù)據(jù)傳送通道9DB2數(shù)據(jù)輸入/輸出口,MPU與模塊之間的數(shù)據(jù)傳送通道10DB3數(shù)據(jù)輸入/輸出口,MPU與模塊之間的數(shù)據(jù)傳送通道11DB4數(shù)據(jù)輸入/輸出口,MPU與模塊之間的數(shù)據(jù)傳送通道12DB5
21、數(shù)據(jù)輸入/輸出口,MPU與模塊之間的數(shù)據(jù)傳送通道13DB6數(shù)據(jù)輸入/輸出口,MPU與模塊之間的數(shù)據(jù)傳送通道14DB7數(shù)據(jù)輸入/輸出口,MPU與模塊之間的數(shù)據(jù)傳送通道2.1602LCD液晶顯示模塊的控制命令1602LCD液晶模塊內(nèi)部的控制器共有11條控制命令,如表2.3所示表2.3 控制命令表序號指令RSR/WD7D6D5D4D3D2D1D01清顯示00000000012光標返回000000001*3置輸入模式00000001I/DS4顯示開/關(guān)控制0000001DCB5光標或字符移位000001S/CR/L*6置功能00001DLNF*7置字符發(fā)生存貯器地址0001字符發(fā)生存貯器地址8置數(shù)據(jù)存
22、貯器地址001顯示數(shù)據(jù)存貯器地址9讀忙標志或地址01BF計數(shù)器地址10寫數(shù)到CGRAM或DDRAM)10要寫的數(shù)據(jù)內(nèi)容11從CGRAM或DDRAM讀數(shù)11讀出的數(shù)據(jù)內(nèi)容1602液晶模塊的讀寫操作、屏幕和光標的操作都是通過指令編程來實現(xiàn)的(說明:1為高電平、0為低電平)。指令1:清顯示,指令碼01H,光標復(fù)位到地址00H位置。指令2:光標復(fù)位,光標返回到地址00H。指令3: 光標和顯示模式設(shè)置 I/D:光標移動方向,高電平右移,低電平左移 S:屏幕上所有文字是否左移或者右移。高電平表示有效,低電平則無效。 指令4:顯示開關(guān)控制。 D:控制整體顯示的開與關(guān),高電平表示開顯示,低電平表示關(guān)顯示 C:
23、控制光標的開與關(guān),高電平表示有光標,低電平表示無光標 B:控制光標是否閃爍,高電平閃爍,低電平不閃爍。指令5:光標或顯示移位 S/C:高電平時移動顯示的文字,低電平時移動光標。指令6:功能設(shè)置命令 DL:高電平時為4位總線,低電平時為8位總線 N:低電平時為單行顯示,高電平時雙行顯示 F: 低電平時顯示5x7的點陣字符,高電平時顯示5x10的點陣字符。指令7:字符發(fā)生器RAM地址設(shè)置。指令8:DDRAM地址設(shè)置。指令9:讀忙信號和光標地址 BF:為忙標志位,高電平表示忙,此時模塊不能接收命令或者數(shù)據(jù),如果為低電平表示不忙。指令10:寫數(shù)據(jù)。指令11:讀數(shù)據(jù)。初始化程序:SET_LCD: ;對
24、LCD 做初始化設(shè)置及測試 CLR LCD_EN CALL INIT_LCD ;初始化 LCDINIT_LCD: ;8位I/O控制 LCD 接口初始化 MOV A,#38H ;雙列顯示,字形5*7點陣 CALL WCOM CALL DELAY1DELAY1: ;延時5ms MOV R6,#25DL2: MOV R7,#100 DJNZ R7,$ DJNZ R6,DL2 RETMOV A,#01H ;清除 LCD 顯示屏第三章 硬件電路設(shè)計3.1 電路原理圖本溫度計大體分三個工作過程。首先,由DS18B20溫度傳感器芯片測量當前溫度,并將結(jié)果送入單片機。然后,通過AT89C51單片機芯片對送入的
25、測量溫度讀數(shù)進行計算和轉(zhuǎn)換,并將此結(jié)果送入液晶顯示模塊。最后,LCD 1602模塊將送來的值顯示于顯示屏上。溫度計的整體電路設(shè)計原理圖如圖3.1。從圖中可以看到,本電路主要由DS18B20溫度傳感器芯片、通用LCD 1602 液晶顯示模塊和AT89C51單片機芯片組成。其中,DS18B20溫度傳感器芯片采用“一線制”與單片機相連9,它獨立地完成溫度測量并將結(jié)果送到單片機進行處理。本系統(tǒng)測溫范圍為0119,精度達0.1 。當溫度超出所設(shè)上下限溫度報警值時,系統(tǒng)不但會顯示當時溫度值,同時也會發(fā)出報警鳴叫聲告知用戶溫度異常,并且可以手動設(shè)置上下限溫度報警值。圖3.1 電路原理圖3.2 LCD1602
26、顯示器與單片機的接口電路由于液晶顯示數(shù)字溫度使用方便、功耗低、顯示直觀、壽命長且便于實現(xiàn)小型化設(shè)計,另外該模塊顯示字符數(shù)量比以前的七段數(shù)碼管LED(Light Emitting Diode)顯示器要多得多。因此選用通用1602LCD顯示模塊10。圖3.2 LCD1602與單片機接口電路3.2.1 查看溫度報警值查看所設(shè)置的上下報警值。LCD 1602 此時顯示:LOOK ALERT CODETH:060.0 TL:09.0 ;顯示上下報警值,其中TH:060.0 是高位報警值,TL:09.0 是低位報警值3.2.2 報警狀態(tài)顯示(1) 當實際溫度大于 TH 的設(shè)定值時,LCD1602 顯示:D
27、S18B20 OKTEMP: 70.0 > H關(guān)閉繼電器,蜂鳴器響,表示超溫。(2) 當實際溫度小于 TL 的設(shè)定值時,LCD1602 顯示: DS18B20 OKTEMP: 08.0 < L蜂鳴器響,表示低于所設(shè)報警下限溫度值。3.3 DS18B20溫度傳感器與單片機的接口電路本設(shè)計中DS18B20溫度傳感器與單片機接口電路采用外接電源供電方式,此時DS18B20的1腳接地,2腳作為信號線,3腳接電源。如圖3.3所示。單 片 機DS18B20VDD+5VGND4.7kI/O圖3.3 外接電源方式3.3.1 檢測DS18B20狀態(tài)(1) DS18B20正常時則顯示: DS18B20
28、 OK TEMP: 25.0 ;顯示實際溫度(2) DS18B20不正常時則顯示:DS18B20 ERROR TEMP: - ;顯示這時要檢查DS18B20是否連接好、接對,否則要更換一個新的 DS18B20 芯片。3.4 按鍵與單片機的接口電路此設(shè)計通過四個按鍵來查看溫度計的溫度變化,此四個按鍵分別定為K1、K2、K3、K4。如圖3.4所示。圖3.4 按鍵接口電路3.4.1 設(shè)定溫度報警值K1 :進入設(shè)定溫度報警值狀態(tài)。LCD 1602 顯示:RESET ALERT CODETH:060.0 TL:09.0K1 : 設(shè)定值加(UP)、減(DOWN)方式選擇鍵(默認為減少)K2 : TH值設(shè)定
29、鍵K3 : TL值設(shè)定鍵K4 : 確定鍵 (退出設(shè)定狀態(tài))K2 或 K3 以減(DOWN)方式設(shè)定,當設(shè)定數(shù)值減到“0”時自動轉(zhuǎn)換為加(UP)方式。K2 或 K3 以加(UP)方式設(shè)定,當設(shè)定數(shù)值 TH=120.0、TL=100.0 時,設(shè)定數(shù)值均變?yōu)椤?”。K4:確定并退出設(shè)定溫度報警值狀態(tài)。將設(shè)定的溫度報警值自動存入 DS18B20 的 EEROM 中,可永久保存,每次開機時自動從 DS18B20 的 EEROM 讀出溫度報警值。第四章 軟件設(shè)計初始化 DS18B20存在? 顯示DS18B20 ERROR 發(fā)報警搜索命顯示溫度 數(shù)據(jù)處理 讀DS18B20 顯示DS18B20 OK DS18
30、B20 溫度超限? 鳴報警器有鍵按下嗎? 按鍵處理 N N Y Y Y N 圖4.1 主程序流程圖本設(shè)計使用單片機C語言編寫程序,使用Keil C51進行編譯 12。主程序的主要功能是負責溫度的實時顯示、檢測鳴警信號和按鍵信號,主程序流程圖如圖4.1所示。4.1 讀出溫度子程序讀出溫度子程序的主要功能是讀出RAM中的字節(jié),其程序流程圖如圖4.2所示。圖4.2 讀溫度流程圖4.2 溫度轉(zhuǎn)換命令子程序溫度轉(zhuǎn)換命令子程序主要是發(fā)溫度轉(zhuǎn)換開始命令,當采用12位分辨率時轉(zhuǎn)換時間約為750ms,在本程序設(shè)計中采用1s顯示程序延時法等待轉(zhuǎn)換的完成。溫度轉(zhuǎn)換命令子程序流程圖如圖4.3所示圖4.3 溫度轉(zhuǎn)換流程
31、圖4.3 計算溫度子程序計算溫度子程序從RAM中讀取值進行BCD碼的轉(zhuǎn)換運算,其程序流程圖如圖4.4所示。圖4.4 計算溫度流程圖4.4 顯示數(shù)據(jù)刷新子程序顯示數(shù)據(jù)刷新子程序主要是對顯示緩沖器中的顯示數(shù)據(jù)進行刷新操作,當最高顯示位為0時將符號顯示位移入下一位。程序流程圖如圖4.5所示。圖4.5 顯示數(shù)據(jù)刷新流程圖4.5 電路仿真本課題電路運用Proteus進行仿真2,畫好電路圖,單擊Play按鈕,進入仿真狀態(tài),通過調(diào)節(jié)K2、K3按鈕,出現(xiàn)如圖4.6所示仿真圖。圖4.6 設(shè)定上下限溫度值圖4.7 顯示溫度在正常范圍內(nèi)圖4.8 顯示外界溫度小于最低溫度值圖4.9 顯示外界溫度大于最高溫度值4.6
32、結(jié)果分析對于圖4.6,通過調(diào)節(jié)K2,K3按鈕,可以調(diào)節(jié)控制溫度范圍的上下限,上限溫度TH可調(diào)范圍為0.0119.0,下限溫度TL可調(diào)范圍為0.099.0。在此圖中,上限溫度調(diào)為60.0,下限溫度調(diào)為9.0。對于圖4.7,所測溫度在控制范圍內(nèi),即9.0<59.0<60.0時,顯示為59.0,蜂鳴器不發(fā)出報警聲。對于圖4.8,當傳感器采集外界溫度低于所設(shè)定溫度的下限時,即6.0<9.0時,顯示為6.0<L,則蜂鳴器發(fā)出報警聲。對于圖4.9,當傳感器采集外界溫度高于所設(shè)定溫度的上限時,即70.0>60.0時,顯示為70.0>H,則蜂鳴器發(fā)出報警聲??傊?,仿真結(jié)果基
33、本能夠符合設(shè)計要求???結(jié)該論文主要介紹了數(shù)字溫度計的設(shè)計過程,主要從元器件開始談起,介紹了兩個主要器件溫度傳感器DS18B20以及LCD1602顯示屏,這兩個元器件在生活和工業(yè)生產(chǎn)中得到了廣泛的應(yīng)用。然后從硬件和軟件兩個方面來介紹,硬件電路主要介紹DS18B20與單片機的接口電路,按鍵接口電路,顯示屏LCD1602與單片機的接口電路。軟件方面,主要闡述了程序流程圖,溫度子程序流程圖,溫度轉(zhuǎn)換命令流程,溫度計算子程序流程以及數(shù)據(jù)刷新子程序流程圖。設(shè)計的具體功能也在仿真結(jié)果中得到現(xiàn)實的體現(xiàn)。通過這次畢業(yè)設(shè)計也使我對單片機技術(shù)有了更進一步的了解,實際操作和課本上的知識有很大的聯(lián)系,一個看似很簡單的
34、電路,要動手做出來就比較困難了,因為是設(shè)計讓我們在以后的學(xué)習(xí)中要注意這點,要把課本上所學(xué)的知識跟實際聯(lián)系起來。有好多的東西,只有我們?nèi)ピ囍隽?,才能真正的掌握,只學(xué)習(xí)理論有些東西是很難理解的,更談不上掌握,同時本次電路的設(shè)計鞏固了所學(xué)知識,增強了學(xué)習(xí)的興趣,考驗了我們借助圖書館、互聯(lián)網(wǎng)搜索、查閱相關(guān)資料,以及綜合能力。從這次的畢業(yè)設(shè)計中,我真正地意識到,在以后的學(xué)習(xí)中,要理論聯(lián)系實際,把我們所學(xué)的理論知識用到實際當中,學(xué)習(xí)更是如此,這就是我在這次畢業(yè)設(shè)計中的最大收獲,為以后從事電子電路設(shè)計、研制電子產(chǎn)品方面的工作奠定了一定的基礎(chǔ)。在設(shè)計過程中,得到了相關(guān)老師的大力幫助,尤其得到了向繼文老師的精
35、心指導(dǎo),給予了我無微不至的幫助。學(xué)院各位老師的那種誨人不倦,治學(xué)嚴謹?shù)淖黠L給我留下了深刻的印象,在此,對全體老師表示衷心的感謝!向各位老師致以最崇高的敬意!參考文獻1 張培仁基于C語言編程MCS-51單片機原理與應(yīng)用M北京:清華大學(xué)出版社,20032 嚴天峰單片機應(yīng)用系統(tǒng)設(shè)計與仿真調(diào)試M北京:北京航空航天大學(xué)出版社,20053 明德剛DS18B20在單片機溫控系統(tǒng)中的應(yīng)用J貴州大學(xué)學(xué)報,2006年(1):1061104 李建忠單片機原理及應(yīng)用M 陜西:西安電子科技大學(xué)出版社,2004.15 閻石數(shù)字電子技術(shù)基礎(chǔ)(第四版)M 北京:高等教育出版社,19976 沙占友智能化集成溫度傳感器
36、原理與應(yīng)用 M北京:機械工業(yè)出版社,20027 周航慈單片機應(yīng)用程序設(shè)計技術(shù)M北京:北京航空航天大學(xué)出版社,20018 何立民MCS-51系列單片機應(yīng)用系統(tǒng)設(shè)計M北京:北京航空航天大學(xué)出版社,19959 謝自美電子線路綜合設(shè)計M 武漢:華中科技大學(xué)出版社, 200610 李朝青單片機原理及接口技術(shù)(簡明修訂版)M北京:北京航空航天大學(xué)出版社,199811 蔣根深,張明亮,解旭輝,李圣怡基于 DS18B20 的數(shù)字式溫度控制系統(tǒng)M 控制工程,200312 蔣延彪單片機原理及應(yīng)用M重慶:重慶大學(xué)出版社,2005附 件附件1:完整程序清單 TEMP_ZH DATA 24H ;實時溫度值存放單元 TE
37、MPL DATA 25H ; TEMPH DATA 26H ; TEMP_TH DATA 27H ;高溫報警值存放單元 TEMP_TL DATA 28H ;低溫報警值存放單元 TEMPHC DATA 29H ; TEMPLC DATA 2AH K1 EQU P1.4 K2 EQU P1.5 K3 EQU P1.6 K4 EQU P1.7 BEEP EQU P3.7 RELAY EQU P1.3 LCD_X EQU 2FH ;LCD 地址變量 LCD_RS EQU P2.0 LCD_RW EQU P2.1 LCD_EN EQU P2.2 flag1 equ 20H.0 ;DS18B20是否存在標
38、記 KEY_UD EQU 20H.1 ;設(shè)定 KEY 的UP與DOWN 標記 date_line equ p3.3;= ORG 0000H JMP MAINMAIN: MOV SP,#60H MOV A,#00H MOV R0,#20H ;將 20H-2FH 單元清零 MOV R1,#10HCLEAR: MOV R0,A INC R0 DJNZ R1,CLEAR CALL SET_LCD CALL RE_18B20start: CALL RESET ;18B20復(fù)位子程序 JNB FLAG1,START1 ;DS18B20不存在 CALL MENU_OK CALL READ_E2 CALL T
39、EMP_BJ ;顯示溫度標記 JMP START2START1: CALL MENU_ERROR CALL TEMP_BJ ;顯示溫度標記 JMP $START2: CALL RESET JNB FLAG1,START1 ;DS1820不存在 MOV A,#0CCH ; 跳過ROM匹配 CALL WRITE MOV A,#44H ; 發(fā)出溫度轉(zhuǎn)換命令 CALL WRITE CALL RESET MOV A,#0CCH ; 跳過ROM匹配 CALL WRITE MOV A,#0BEH ; 發(fā)出讀溫度命令 CALL WRITE CALL READ call CONVTEMP Call DISPBC
40、D CALL CONV CALL TEMP_COMP CALL PROC_KEY ; 鍵掃描 SJMPSTART2;-PROC_KEY: JB K1,PROC_K1 ; 按鍵K1處理 CALL BEEP_BL JNB K1,$ MOV DPTR,#M_ALAX1 MOV A,#1 CALL LCD_PRINT CALL LOOK_ALARM JB K3,$ CALL BEEP_BL JMP PROC_K2PROC_K1: ; 按鍵K2處理 JB K2,PROC_END CALL BEEP_BL JNB K2,$ MOV DPTR,#RESET_A1 MOV A,#1 CALL LCD_PRIN
41、T CALL SET_ALARM CALL RE_18B20 ;將設(shè)定的TH,TL值寫入DS18B20內(nèi) CALL WRITE_E2PROC_K2: CALL MENU_OK CALL TEMP_BJPROC_END: RET;=;設(shè)定報警值 TH、TL;=SET_ALARM: ;CALL RESET_ALARM CALL LOOK_ALARMAS0: JB K1,AS00 CALL BEEP_BL JNB K1,$ CPL 20H.1 ;UP/DOWN 標記AS00: JB 20H.1,ASZ01 ;20H.1=1,UP JMP ASJ01 ;20H.1=0,DOWNASZ01: JB K2
42、,ASZ02 ;TH值調(diào)整(增加) CALL BEEP_BL INC TEMP_TH MOV A,TEMP_TH CJNE A,#120,ASZ011 MOV TEMP_TH,#0ASZ011: CALL LOOK_ALARM MOV R5,#10 CALL DELAY JMP ASZ01ASZ02: JB K3,ASZ03 ;TL值調(diào)整(增加) CALL BEEP_BL INC TEMP_TL MOV A,TEMP_TL CJNE A,#99,ASZ021 MOV TEMP_TL,#00HASZ021: CALL LOOK_ALARM ; MOV R5,#10 CALL DELAY JMP ASZ02ASZ03: JB K4,AS0 ;確定調(diào)整 OK CALL BEEP_BL JNB K4,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 供電班組定置管理制度
- 便攜公司午餐管理制度
- 保安公司安全服務(wù)管理制度
- 街吧奶茶-菜單
- 保安口袋財物管理制度
- 保安車輛出入管理制度
- 保密公司保安管理制度
- 保密設(shè)備設(shè)施管理制度
- 保潔清潔大堂管理制度
- 保潔著裝禮儀管理制度
- 北京市順義區(qū)2023-2024學(xué)年六年級下學(xué)期數(shù)學(xué)期末試卷(含答案)
- JG/T 283-2010膨脹?;⒅檩p質(zhì)砂漿
- 電力法規(guī)考試試題及答案
- 2025昆明醫(yī)科大學(xué)海源學(xué)院輔導(dǎo)員考試試題及答案
- 路沿石購銷合同模板
- 誰是消費“領(lǐng)頭羊”:人口周期改變消費模式221mb
- 2024福建省閩投深海養(yǎng)殖裝備租賃有限責任公司招聘7人筆試參考題庫附帶答案詳解
- 2025年江西省贛州市八年級中考模擬預(yù)測生物試題(含答案)
- 車牌過戶協(xié)議書范本
- 火災(zāi)自動報警系統(tǒng)故障應(yīng)急預(yù)案
- 《拓印新貌》教學(xué)課件-2024-2025學(xué)年滬書畫版(五四學(xué)制)(2024)初中美術(shù)六年級下冊
評論
0/150
提交評論