2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩24頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p><b>  摘 要</b></p><p>  本設(shè)計主要包括溫度傳感器DS18B20、單片機(jī)AT89S51和LCD1602等器件,硬件電路包括溫度檢測電路、溫度控制電路和一些接口電路等輔助電路,軟件設(shè)計主要包括 數(shù)碼管顯示程序、鍵盤掃描及按鍵處理程序、溫度信號處理程序、繼電器控制程序、超溫報警程序五個模塊。設(shè)計電路工作原理為:首先,由DS18B20溫度傳感器芯片測量

2、當(dāng)前的溫度,并將結(jié)果送入單片機(jī)。然后,通過AT89S51單片機(jī)芯片對送來的測量溫度讀數(shù)進(jìn)行計算和轉(zhuǎn)換,井將此結(jié)果送入液晶顯示模塊,如果測量溫度超過預(yù)定值,單片機(jī)同時也會把信號傳遞給報警電路單元。最后,LCD1602A芯片將送來的值顯示于顯示屏上。</p><p>  關(guān)鍵詞:AT89S51單片機(jī);溫度傳感器;DS18B20;LCD1602</p><p><b>  ABSTRA

3、CT</b></p><p>  The design includes temperature sensor DS18B20, MCU AT89S51, LCD1602 and other devices. Hardware circuit includes the temperature sensing circuit, the temperature control circuit , a n

4、umber of interface circuits and other auxiliary circuits, Software design process includes five modules, such as digital tube display, keyboard scanning and key processes, the temperature signal processing, relay control

5、 procedures, over-temperature alarm program. The circuit design works as follows: First, by mea</p><p>  Keywords: AT89S51 Microcontroller, Temperature sensor, DS18B20, LCD1602</p><p><b> 

6、 目 錄</b></p><p><b>  第一章 前言1</b></p><p>  1.1 課題背景及目的1</p><p>  1.2 論文構(gòu)成及研究內(nèi)容1</p><p>  1.3 倉庫溫度檢測系統(tǒng)的原理框圖1</p><p>  第二章 核心器件的選擇

7、3</p><p>  2.1 單片機(jī)的選擇3</p><p>  2.1.1 AT89S51簡介3</p><p>  2.1.2 AT89S51引腳功能3</p><p>  2.2 溫度傳感器的選擇5</p><p>  2.2.1 DS18B20簡介5</p><p&g

8、t;  2.2.2 DS18B20的性能特點6</p><p>  第三章 硬件設(shè)計電路7</p><p>  3.1 主控制器8</p><p>  3.2 顯示電路8</p><p>  3.3 溫度檢測電路8</p><p>  3.4 溫度報警電路9</p><p&g

9、t;  第四章 軟件設(shè)計10</p><p>  4.1 概述10</p><p>  4.2 溫度檢測流程及程序?qū)崿F(xiàn)10</p><p>  4.2.1 初始化流程10</p><p>  4.2.2 讀DS18B20流程11</p><p>  4.2.3 寫18B20流程13</p&

10、gt;<p>  4.3 報警模塊流程15</p><p>  4.4 中斷設(shè)定流程15</p><p>  第五章 結(jié)論17</p><p><b>  參考文獻(xiàn)18</b></p><p><b>  致謝19</b></p><p><

11、;b>  第一章 前言</b></p><p>  1.1 課題背景及目的</p><p>  電子科技時代的今天,社會中的諸多行業(yè)對各種信息參數(shù)的準(zhǔn)確度和精確度的要求都有了幾何級的增長,而如何準(zhǔn)確而又迅速的獲得這些參數(shù)就需要受制于現(xiàn)代信息基礎(chǔ)的發(fā)展水平。在三大信息信息采集(即傳感器技術(shù))、信息傳輸(通信技術(shù))和信息處理(計算機(jī)技術(shù))中,傳感器屬于信息技術(shù)的前沿尖端產(chǎn)

12、品,尤其是溫度傳感器技術(shù),在我國各領(lǐng)域已經(jīng)引用的非常廣泛,可以說是滲透到社會的每一個領(lǐng)域,人民的生活與環(huán)境的溫度息息相關(guān),在工業(yè)生產(chǎn)過程中需要實時測量溫度,在農(nóng)業(yè)生產(chǎn)中也離不開溫度的測量,因此研究溫度的測量方法和裝置具有重要的意義。同時,溫度檢測控制系統(tǒng)已廣泛應(yīng)用于社會生活的各個領(lǐng)域 ,甚至在各種行業(yè)的那些條件不易人們親自接近的貨物儲藏的倉庫已普遍使用。檢測控制對象慣性大,滯后現(xiàn)象嚴(yán)重,存在很多不確定的因素,難以建立精確的數(shù)學(xué)模型,從而

13、導(dǎo)致檢測控制系統(tǒng)性能不佳,甚至出現(xiàn)控制不穩(wěn)定、失控現(xiàn)象。本設(shè)計采用數(shù)字溫度傳感器DS18B20,因其內(nèi)部集成了A/D轉(zhuǎn)換器,使得電路結(jié)構(gòu)更加簡單,而且減少了溫度測量轉(zhuǎn)換時的精度損失,使得測量溫度更加精確。數(shù)字溫度傳感器DS18B20只用一個引腳即可與單片機(jī)進(jìn)行通信,大大減少了接線的麻煩</p><p>  1.2 論文構(gòu)成及研究內(nèi)容</p><p>  本設(shè)計包括了緒論、核心器件的選擇、

14、硬件電路設(shè)計、軟件設(shè)計[2]四個部分,其中主要介紹了組成電路各部分主要功能的簡單說明以及各元件的選擇因素及其具體參數(shù)。 </p><p>  本設(shè)計是基于溫度傳感器[4]的溫度檢測系統(tǒng)[3]中的溫度檢測、電路控制、報警系統(tǒng)及顯示部分的實現(xiàn)。以智能溫度傳感器應(yīng)用技術(shù)和單片機(jī)應(yīng)用技術(shù)為核心進(jìn)行開發(fā),并且以理論分析和該技術(shù)方案為基礎(chǔ),在不斷地研究過程中進(jìn)行不斷的調(diào)整,完成了一個溫度監(jiān)測系統(tǒng)的設(shè)計。</p>

15、<p>  1.3 倉庫溫度檢測系統(tǒng)的原理框圖</p><p>  本系統(tǒng)采用單片機(jī)及外圍電路完成。最重要的部分即測溫電路將采用數(shù)字溫度芯片測量溫度,這樣輸出的信號為數(shù)字信號,可以直接由單片機(jī)來處理;按鍵輸入電路用于進(jìn)行調(diào)時和溫度查詢,以方便對系統(tǒng)各項參數(shù)的修改;時鐘及復(fù)位電路將提供給單片機(jī)必不可少的時鐘信號和復(fù)位信號以使單片機(jī)正常工作。報警電路用于當(dāng)倉庫溫度超過額定范圍時,及時報警通知。顯示電路則

16、是顯示倉庫溫度。系統(tǒng)的原理框圖如圖1.1所示。</p><p>  圖1.1 系統(tǒng)原理框圖</p><p>  第二章 核心器件的選擇</p><p>  2.1 單片機(jī)的選擇</p><p>  由于系統(tǒng)要利用單片機(jī)控制溫度傳感器進(jìn)行實時溫度檢測并顯示,而且要求能夠?qū)崿F(xiàn)快速測量環(huán)境溫度,并可以根據(jù)需要設(shè)定上下限報警溫度。所以系統(tǒng)對單片

17、機(jī)性能要求較高,選用常用的8031系列和8051系列的單片機(jī)可以方便的編程,但8031沒有內(nèi)部RAM,系統(tǒng)又需要大量內(nèi)存存儲數(shù)據(jù),因而不適用。經(jīng)過綜合考慮,本系統(tǒng)采用是美國 ATMEL 公司生產(chǎn)的AT89S51,它的介紹如下:</p><p>  2.1.1 AT89S51簡介</p><p>  AT89S51 是美國 ATMEL 公司生產(chǎn)的低功耗,高性能 CMOS8 位單片機(jī),片內(nèi)含

18、 4kbytes 的可編程的 Flash 只讀程序存儲器,兼容標(biāo)準(zhǔn) 8051 指令系統(tǒng)及引腳。它既可在線編程(ISP),也可用傳統(tǒng)方法進(jìn)行編程,所以低價位 AT89S51單片機(jī)可為提供許多高性價比的應(yīng)用場合,可靈活應(yīng)用于各種控制領(lǐng)域,對于簡單的測溫系統(tǒng)已經(jīng)足夠。單片機(jī)AT89S51 具有低電壓供電和體積小等特點,四個端口只需要兩個口就能滿足電路系統(tǒng)的設(shè)計需要,很適合便攜手持式產(chǎn)品的設(shè)計。主要特性有:1)與MCS-51 兼容;2)4K字節(jié)

19、可編程閃爍存儲器;3)壽命:100000寫/擦循環(huán);4)數(shù)據(jù)保留時間:10年;5)全靜態(tài)工作:0Hz-24Hz;6)三級程序存儲器鎖定;7)128*8位內(nèi)部RAM;8)32可編程I/O線;9)兩個16位定時器/計數(shù)器;10)5個中斷源;11)可編程串行通道;12)低功耗的閑置和掉電模式;13)片內(nèi)振蕩器和時鐘電路。</p><p>  2.1.2 AT89S51引腳功能</p><p>

20、  AT89S51 單片機(jī)[7]為40 引腳雙列直插式封裝,其引腳排列和邏輯符號如圖2.1 所示。</p><p>  各引腳功能簡單介紹如下:</p><p><b>  VCC:供電電壓</b></p><p><b>  GND:接地</b></p><p>  P0口為一個8位漏級開路雙向I

21、/O口,每個管腳可吸收8TTL門電流。當(dāng)P1口的管腳寫“1”時,被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù)/地址的第八位。在FLASH編程時,P0口作為原碼輸入口,當(dāng)FLASH進(jìn)行校驗時,P0輸出原碼[6],此時P0外部電位必須被拉高。</p><p>  P1口:P1口是一個內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入“1”后,電位被內(nèi)部上拉

22、為高,可用作輸入,P1口被外部下拉為低電平時,將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗時,P1口作為第八位地址接收。</p><p>  圖2.1 AT89S51單片機(jī)引腳圖</p><p>  P2口為一個內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個TTL門電流,當(dāng)P2口被寫“1”時,其管腳電位被內(nèi)部上拉電阻拉高,且作為輸入。作為輸入時,P2口的管腳電

23、位被外部拉低,將輸出電流,這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲器或16位地址外部數(shù)據(jù)存儲器進(jìn)行存取時,P2口輸出地址的高八位。在給出地址“1”時,它利用內(nèi)部上拉的優(yōu)勢,當(dāng)對外部八位地址數(shù)據(jù)存儲器進(jìn)行讀寫時,P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗時接收高八位地址信號和控制信號。</p><p>  P3口管腳是8個帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個TTL門電流。當(dāng)P3口

24、寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入時,由于外部下拉為低電平,P3口將輸出電流(ILL),也是由于上拉的緣故。P3口也可作為AT89C51的一些特殊功能口,同時P3口同時為閃爍編程和編程校驗接收一些控制信號。</p><p>  RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時,要保持RST腳兩個機(jī)器周期的高電平時間。</p><p>  ALE / PROG :當(dāng)訪問外部存儲器

25、時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時,ALE端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲器時,將跳過一個ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時, ALE只有在執(zhí)行MOVX,MOVC指令時ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀

26、態(tài)ALE禁止,置位無效。</p><p>  PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取址期間,每個機(jī)器周期PSEN兩次有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的PSEN信號將不出現(xiàn)。</p><p>  EA/VPP:當(dāng)EA保持低電平時,訪問外部ROM;注意加密方式1時,EA將內(nèi)部鎖定為RESET;當(dāng)EA端保持高電平時,訪問內(nèi)部ROM。在FLASH編程期間,此引腳也用于施

27、加12V編程電源(VPP)。</p><p>  XTAL1:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。</p><p>  XTAL2:來自反向振蕩器的輸出。</p><p>  2.2 溫度傳感器的選擇</p><p>  由于傳統(tǒng)的熱敏電阻等測溫元件測出的一般都是電壓,再轉(zhuǎn)換成對應(yīng)的溫度,需要比較多的外部元件支持,且硬件電路復(fù)雜,

28、制作成本相對較高。這里采用DALLAS公司的數(shù)字溫度傳感器DS18B20作為測溫元件。</p><p>  2.2.1 DS18B20簡介</p><p>  溫度傳感器DS18B20[5]是一種新型的“一線器件”,其體積更小、更適用于多種場合、且適用電壓更寬、更經(jīng)濟(jì)。溫度測量范圍為-55~+125 攝氏度,可編程為9位~12 位轉(zhuǎn)換精度,測溫分辨率可達(dá)0.0625攝氏度,分辨率設(shè)定參數(shù)

29、以及用戶設(shè)定的報警溫度存儲在EEPROM 中,掉電后依然保存。被測溫度用符號擴(kuò)展的16位數(shù)字量方式串行輸出;其工作電源既可以在遠(yuǎn)端引入,也可以采用寄生電源方式產(chǎn)生;多個DS18B20可以并聯(lián)到3 根或2 根線上,CPU只需一根端口線就能與諸多DS18B20 通信,占用微處理器的端口較少,可節(jié)省大量的引線和邏輯電路。因此用它來組成一個測溫系統(tǒng),具有線路簡單,在一根通信線,可以掛很多這樣的數(shù)字溫度計,十分方便。其封裝方式如圖2.2所示。DQ

30、 為數(shù)據(jù)輸入/輸出引腳;GND為地信號;VCC為電源引腳。</p><p>  圖2.2 DS18B20封裝方式</p><p>  2.2.2 DS18B20的性能特點</p><p>  DS18B20非常適用與多點、遠(yuǎn)距離溫度檢測系統(tǒng),其性能特點如下:</p><p>  獨特的單線接口方式,DS18B20在與微處理器連接時僅需要一

31、條口線即可實現(xiàn)微處理器與DS18B20的雙向通訊。</p><p>  DS18B20支持多點組網(wǎng)功能,多個DS18B20可以并聯(lián)在唯一的三線上,實現(xiàn)組網(wǎng)多點測溫。</p><p>  DS18B20在使用中不需要任何外圍元件,全部傳感元件及轉(zhuǎn)換電路集成在形如一只三極管的集成電路內(nèi)。</p><p>  適應(yīng)電壓范圍更寬,電壓范圍:3.0~5.5V,在寄生電源方式下

32、可由數(shù)據(jù)線供電。</p><p>  溫范圍-55℃~+125℃,在-10~+85℃時精度為±0.5℃。</p><p><b>  零待機(jī)功耗。</b></p><p>  可編程的分辨率為9~12位,對應(yīng)的可分辨溫度分別為0.5℃、0.25℃、0.125℃和0.0625℃,可實現(xiàn)高精度測溫。</p><p>

33、;  在9位分辨率時最多在93.75ms內(nèi)把溫度轉(zhuǎn)換為數(shù)字,12位分辨率時最多在750ms內(nèi)把溫度值轉(zhuǎn)換為數(shù)字,速度更快。</p><p>  用戶可定義報警設(shè)置。</p><p>  報警搜索命令識別并標(biāo)志超過程序限定溫度(溫度報警條件)的器件。</p><p>  測量結(jié)果直接輸出數(shù)字溫度信號,以"一線總線"串行傳送給CPU,同時可傳送CRC

34、校驗碼,具有極強(qiáng)的抗干擾糾錯能力。</p><p>  負(fù)電壓特性,電源極性接反時,溫度計不會因發(fā)熱而燒毀,但不能正常工作。</p><p>  第三章 硬件設(shè)計電路</p><p>  電路設(shè)計原理圖如圖3.1所示,控制器使用單片機(jī)AT89S51,溫度傳感器使用DS18B20,用液晶實現(xiàn)溫度顯示。</p><p>  圖3.1 硬件設(shè)計

35、電路圖</p><p>  本溫度計大體分三個工作過程。首先,由DS18B20溫度傳感器芯片測量當(dāng)前的溫度,并將結(jié)果送入單片機(jī)。然后,通過AT89S51單片機(jī)芯片對送來的測量溫度讀數(shù)進(jìn)行計算和轉(zhuǎn)換,井將此結(jié)果送入液晶顯示模塊。最后,SMC1602A芯片將送來的值顯示于顯示屏上。 由圖3.1可看到,本電路主要由DSl8B20溫度傳感器芯片、SMCl602A液晶顯示模塊芯片和AT89S51單片機(jī)芯片組成。其

36、中,DSI8B20溫度傳感器芯片采用“一線制”與單片機(jī)相連,它獨立地完成溫度測量以及將溫度測量結(jié)果送到單片機(jī)的工作。</p><p><b>  3.1 主控制器</b></p><p>  AT89S51的復(fù)位電路[9]由C1、R1組成,觸動開關(guān)K1即可可靠復(fù)位。時鐘電路由C3、C4及12MHz的石英晶振組成,提供12MHz的時鐘信號。P2.0控制DS18B20完

37、成溫度測量,用P2.7控制報警電路,用P0口控制顯示電路。主機(jī)控制DS18B20完成溫度轉(zhuǎn)換必須經(jīng)過三個步驟:初始化、ROM操作指令、存儲器操作指令。必須先啟動DS18B20開始轉(zhuǎn)換,再讀出溫度轉(zhuǎn)換值。</p><p><b>  3.2 顯示電路</b></p><p>  顯示電路采用SMCI602A[8]液晶顯示模塊芯片該芯片可顯示16×2個字符,比

38、以前的七段數(shù)碼管LED顯示器在顯示字符的數(shù)量上要多得多。另外,由于SMCl602芯片編程比較簡單,界面直觀,因此更加易于使用者操作和觀測。SMCl602A芯片的接口信號說明如表3.1所列。驅(qū)動電路包含在SMCI602A液晶顯示模塊芯片,所以不必外加驅(qū)動電路。其控制由單片機(jī)來完成,亮度調(diào)節(jié)是通過變阻器R2完成。</p><p>  表3.1 SMCl602A芯片的接口信號說明</p><p&g

39、t;  3.3 溫度檢測電路</p><p>  DS18B20 最大的特點是單總線數(shù)據(jù)傳輸方式,DS18B20 的數(shù)據(jù)I/O 均由同一條線來完成。DS18B20 的電源供電方式[12]有2 種: 外部供電方式和寄生電源方式。工作于寄生電源方式時, VDD 和GND 均接地, 它在需要遠(yuǎn)程溫度探測和空間受限的場合特別有用, 原理是當(dāng)1 Wire 總線的信號線DQ 為高電平時, 竊取信號能量給DS18B20 供電

40、, 同時一部分能量給內(nèi)部電容充電, 當(dāng)DQ為低電平時釋放能量為DS18B20 供電。但寄生電源方式需要強(qiáng)上拉電路, 軟件控制變得復(fù)雜(特別是在完成溫度轉(zhuǎn)換和拷貝數(shù)據(jù)到E2PROM 時) , 同時芯片的性能也有所降低。因此, 在條件允許的場合, 盡量采用外供電方式。無論是內(nèi)部寄生電源還是外部供電,I/O口線要接5KΩ左右的上拉電阻。在這里采用前者方式供電。DS18B20與芯片連接電路如圖 3.2所示。</p><p&g

41、t;  圖3.2 DS18B20與單片機(jī)的連接</p><p>  外部電源供電方式是DS18B20最佳的工作方式,工作穩(wěn)定可靠,抗干擾能力強(qiáng),而且電路也比較簡單,可以開發(fā)出穩(wěn)定可靠的多點溫度監(jiān)控系統(tǒng)。在開發(fā)中使用外部電源供電方式,比寄生電源方式只多接一根VCC引線。在外接電源方式下,可以充分發(fā)揮DS18B20寬電源電壓范圍的優(yōu)點,即使電源電壓VCC 降到3V 時,依然能夠保證溫度量精度。</p>

42、<p>  3.4 溫度報警電路</p><p>  本設(shè)計采軟件處理報警,利用有源蜂鳴器進(jìn)行報警輸出,采用直流供電。當(dāng)所測溫度超過或者低于所預(yù)設(shè)的溫度時,數(shù)據(jù)口相應(yīng)拉高電平,報警輸出。也可采用發(fā)光二級管報警電路,如果需要報警,則只需將相應(yīng)位置1,當(dāng)參數(shù)判斷完畢后,再看報警模型單元ALARM 的內(nèi)容是否與預(yù)設(shè)一樣,如不一樣,則發(fā)光報警。報警電路硬件連接見圖3.3。</p><p&

43、gt;  圖3.3 蜂鳴器電路連接圖</p><p><b>  第四章 軟件設(shè)計</b></p><p><b>  4.1 概述</b></p><p>  整個系統(tǒng)的功能是由硬件電路配合軟件來實現(xiàn)的,當(dāng)硬件基本定型后,軟件的功能也就基本定下來了。從軟件的功能不同可分為兩大類:一是監(jiān)控軟件(主程序),它是整個控制

44、系統(tǒng)[11]的核心,專門用來協(xié)調(diào)各執(zhí)行模塊和操作者的關(guān)系。二是執(zhí)行軟件(子程序),它是用來完成各種實質(zhì)性的功能如測量、計算、顯示、通訊等。每一個執(zhí)行軟件也就是一個小的功能執(zhí)行模塊。這里將各執(zhí)行模塊一一列出,并為每一個執(zhí)行模塊進(jìn)行功能定義和接口定義。各執(zhí)行模塊規(guī)劃好后,就可以規(guī)劃監(jiān)控程序了。首先要根據(jù)系統(tǒng)的總體功能選擇一種最合適的監(jiān)控程序結(jié)構(gòu),然后根據(jù)實時性的要求,合理地安排監(jiān)控軟件和各執(zhí)行模塊之間地調(diào)度關(guān)系。主程序需要調(diào)用4 個子程序,

45、分別為數(shù)碼管顯示程序,溫度測試及處理子程序,報警子程序,中斷設(shè)定子程序。各模塊程序功能如下:1)數(shù)碼管顯示程序:向數(shù)碼的顯示送數(shù),控制系統(tǒng)的顯示部分。2)溫度測試及處理程序:對溫度芯片送過來的數(shù)據(jù)進(jìn)行處理,進(jìn)行判斷和顯示。3)報警子程序:進(jìn)行溫度上下限判斷及報警輸出。4)中斷設(shè)定程序:實現(xiàn)設(shè)定上下限報警功能。</p><p>  4.2 溫度檢測流程及程序?qū)崿F(xiàn)</p><p>  DS1

46、8B20在單片機(jī)控制下分三個階段:1)18B20 初始化;2)讀18B20時序; 3)寫18B20時序[2]。 </p><p>  4.2.1 初始化流程</p><p>  初始化流程見圖4.1。首先對AT89S51的寄存器初試化[2],并檢測DS18B20是否存在,如果存在,開始檢測溫度,完成一系列的轉(zhuǎn)化操作,做適當(dāng)處理后,由顯示電路顯示,最后進(jìn)入一個循環(huán)程序,不斷檢測溫度是否超過

47、設(shè)定范圍,一旦超過,做報警處理。</p><p>  在主機(jī)初始化過程,主機(jī)通過拉低單總線至少480us,來產(chǎn)生復(fù)位脈沖。接著,主機(jī)釋放總線,并進(jìn)入接收模式。當(dāng)總線被釋放后,上拉電阻將單總線拉高。在單總線器件檢測到上升沿后,延時15~60us,接著通過拉低總線60~240us,以產(chǎn)生應(yīng)答脈沖。其程序如下:</p><p>  源程序: 其中TEM PD IN 定義為DS18B20 的數(shù)據(jù)管

48、腳, 主機(jī)為AT89S51。</p><p>  N ITDS1820: SETB TEM PD N</p><p><b>  NO P</b></p><p><b>  NO P</b></p><p>  CLR TEM PD N</p><p>  MOV  R6,

49、 # 0A 0H ; 延時640 Ls</p><p>  DJN Z R6, $</p><p>  MOV  R6, # 0A 0H</p><p>  DJN Z R6, $</p><p>  SETB TEM PD N ; 釋放總線</p>

50、<p>  MOV  R6, # 32H ; 延時100 Ls, 等待回應(yīng)</p><p>  DJN Z R6, $</p><p>  MOV  R6, # 3CH</p><p>  LOO P1820: MOV  C, TEM PD N ; 采樣總線信號</p>

51、;<p>  JC  N ITDS1820OU T</p><p>  DJN Z  R6,LOO P1820</p><p>  MOV   R6, # 064H</p><p>  DJN Z  R6, $</p><p>  SJM P  N ITDS1820</p><p><b>  

52、RET</b></p><p>  IN ITDS1820OU T: SETB TEM PD N</p><p><b>  RET</b></p><p>  圖4.1 初始化流程圖</p><p>  4.2.2 讀DS18B20流程</p><p>  讀DS18B20流程見

53、圖4.2。首先設(shè)置循環(huán)次數(shù)為8次,通過總線延遲將8位數(shù)據(jù)讀入單片機(jī)內(nèi)[2]。</p><p>  當(dāng)從DS18B20 讀數(shù)據(jù)時,主機(jī)生成讀時間隙。當(dāng)主機(jī)把數(shù)據(jù)從高電平拉到低電平時,寫時間隙開始,數(shù)據(jù)線必須保持至少1μs;從DS18B20輸出的數(shù)據(jù)在讀時間隙的下降沿出現(xiàn)后15μs 內(nèi)有效。</p><p>  因此,主機(jī)在讀時間隙開始后必須把I/O 腳驅(qū)動拉為的電平保持15μs,以讀取I/O

54、 腳狀態(tài)。在讀時間隙的結(jié)尾,I/O 引腳將被外部上拉電阻拉到高電平。所有讀時間隙必須最少60μs,包括兩個讀周期至少1μs的恢復(fù)時間。</p><p>  圖4.2 讀DS18B20流程圖</p><p>  源程序: 假設(shè)要讀1B 的數(shù)據(jù), 且數(shù)據(jù)放在A 中。</p><p>  READDS1820:MOV  R7, # 08H

55、 ; 1 個字節(jié)8 位</p><p>  SETB  TEM PD IN</p><p><b>  NO P</b></p><p><b>  NO P</b></p><p>  READDS1820LOO P: CLR TEM PD IN</p><p>

56、<b>  NO P</b></p><p>  SETB TEM PD IN ; 釋放總線</p><p>  MOV   R6, # 05H ; 延時10 Ls</p><p>  DJN Z  R6, $</p><p>  MOV   C, TEM PD N

57、 ; 采樣總線數(shù)據(jù)</p><p>  MOV   R6, # 14H ; 延時40 Ls</p><p>  DJN Z  R6, $</p><p>  RRC  A ; 采樣數(shù)據(jù)存入A</p><p>  SETB TEM PD IN

58、 ; 釋放總線</p><p>  DJN Z R7, READDS1820LOO P ; 采樣下一位</p><p>  MOV R6, # 14H ; 延時40 Ls</p><p>  DJN Z  R6, $</p><p><b>  RET</b><

59、;/p><p>  4.2.3 寫18B20流程</p><p>  寫18B20流程見圖4.3。同樣,先設(shè)置循環(huán)次數(shù)為8次,通過總線延遲將8位數(shù)據(jù)寫入單片機(jī)內(nèi)[2]。</p><p>  當(dāng)主機(jī)把數(shù)據(jù)從邏輯高電平拉到邏輯低電平的時候,寫時間隙開始。有兩種寫時間隙,寫1 時間隙和寫0 時間隙。所有寫時間隙必須最少持續(xù)60μs,包括兩個寫周期至少1μs 的恢復(fù)時間。I/

60、O線電平變低后,DS18B20 在一個15μs 到60μs 的窗口內(nèi)對I/O 線采樣。如果線上事高電平,就是寫1,如果是低電平,就是寫0。主機(jī)要生成一個寫時間隙,必須把數(shù)據(jù)線拉到低電平然后釋放,在寫時間隙開始后的15μs 內(nèi)允許數(shù)據(jù)線拉到高電平。主機(jī)要生成一個寫0 時間隙,必須把數(shù)據(jù)線拉到低電平并保存60μs。</p><p>  每個讀時隙都由主機(jī)發(fā)起,至少拉低總線1us,在主機(jī)發(fā)起讀時序之后,單總線器件才開始

61、在總線上發(fā)送0 或1。所有讀時序至少需要60us。</p><p>  源程序: 假設(shè)要寫1 B 的數(shù)據(jù), 且數(shù)據(jù)放在A 中。</p><p>  SETB TEM PDN</p><p><b>  NOP</b></p><p><b>  NOP</b></p><p>

62、;  WRITEDS1820LOP: CLR TEM PD IN</p><p>  MOV R6, # 08H ; 延時15 Ls</p><p>  DJN Z  R6, $</p><p>  RRC  A ; 將要寫數(shù)據(jù)存入C</p><p>  MOV TE

63、M PD IN , C ; 將數(shù)據(jù)寫入總線</p><p>  MOV  R6, # 14H ; 延時40 Ls</p><p>  DJN Z R6, $</p><p>  SETB TEM PD IN ; 釋放總線</p><p>  DJN Z  R7,

64、WR ITEDS1820LO P ; 寫8 位</p><p><b>  RET</b></p><p>  圖4.3 寫DS18B20流程圖</p><p>  4.3 報警模塊流程</p><p>  報警流程圖如圖4.4所示。</p><p>  首先將標(biāo)志位全部清除,以避免之前程

65、序的影響。取出溫度,判斷溫度是否大于設(shè)定值,大于上限,置位上限報警標(biāo)志,小于下限值同樣操作。最后執(zhí)行報警程序。</p><p>  4.4 中斷設(shè)定流程</p><p>  中斷模塊[6]采用了外中斷和內(nèi)中斷套用方法。當(dāng)設(shè)計需要實現(xiàn)上下限報警時,利用INT0口進(jìn)行中斷,set 鍵進(jìn)行上下限報警溫度設(shè)定,進(jìn)入溫度設(shè)定狀態(tài)后(按一下溫度設(shè)定鍵),首先會提示顯示“UP”字母,表示要用戶設(shè)定高溫

66、報警溫度,按S3 鍵 ,表示本位數(shù)字+1,按S4 表示移向下一位,如果4 位高溫設(shè)定完畢,則顯示“DO”,表示要用戶設(shè)定低溫報警溫度。4位低溫設(shè)定完畢,如果用戶設(shè)置的高溫比設(shè)定的低溫高的話則顯示“ERRO”表示錯誤提示,同時會有蜂鳴器及時報警提示,然后自動顯示“UP”,讓用戶重新進(jìn)行溫度設(shè)定。中斷設(shè)定子程序流程圖見圖4.5。</p><p>  圖4.4 報警流程圖</p><p>  

67、圖4.5 中斷設(shè)定子程序流程圖</p><p><b>  第五章 結(jié) 論</b></p><p>  本設(shè)計利用AT89S51 芯片控制溫度傳感器DS18B20,再輔之以部分外圍電路實現(xiàn)對環(huán)境溫度的測控,性能穩(wěn)定,精度教高,而且擴(kuò)展性能很強(qiáng)大。由于DS18B20 支持單總線協(xié)議,我們還可以將多個DS18B20 可以并聯(lián)到3 根或2 根線上,CPU 只需一根端口

68、線就能與諸多DS18B20 通信,占用較少的微處理器的端口就可以實現(xiàn)多點測溫監(jiān)控系統(tǒng)。由于DS18B20的測量精度只有±0.5 度,往往很多場合需要更加精確的溫度,在所測溫度精度不變的基礎(chǔ)上必須對數(shù)據(jù)進(jìn)行校正。由于DS18B20 是基于帶隙結(jié)構(gòu)的數(shù)字式溫度傳感器,PN 結(jié)增量電壓正比于IC 絕對溫度(PTAT),它的測溫精度較高,但存在著一定的誤差.不過,其誤差在時間和外部環(huán)境變化的條件下,保持相當(dāng)高的穩(wěn)定性。</p&g

69、t;<p>  在本次設(shè)計的過程中,我發(fā)現(xiàn)很多的問題,這次設(shè)計真的讓我長進(jìn)了很多,針對溫度傳感器DS18B20芯片的原理我通過網(wǎng)絡(luò)資料對其有了更深刻的理解,還有單片機(jī)AT89S51的原理應(yīng)用以及與周邊系統(tǒng)的連接融合環(huán)節(jié)有了實質(zhì)性的突破。</p><p><b>  參考文獻(xiàn)</b></p><p>  [1]孫育才.單片微型計算機(jī)及其應(yīng)用[M].東南大學(xué)

70、出版社,2004.</p><p>  [2]沈德金,陳粵初.單片機(jī)接口電路與應(yīng)用程序?qū)嵗齕M].北京:北京航天航空大學(xué)出版社,1990. </p><p>  [3]姜忠良,陳秀云.溫度的測量與控制[M].北京:清華大學(xué)出版社,2005. </p><p>  [4]趙繼文,何玉彬.傳感器與應(yīng)用電路設(shè)計[M].北京:科學(xué)出版社,2001.</p>&

71、lt;p>  [5]呂 泉.現(xiàn)代傳感器原理與應(yīng)用[M].北京:清華大學(xué)出版社,2002.</p><p>  [6]李朝青.單片機(jī)原理及接口技術(shù)(簡明修訂版)[M].北京:北京航空航天大學(xué)出版社,1998.</p><p>  [7]李廣弟.單片機(jī)基礎(chǔ)[M].北京:北京航空航天大學(xué)出版社,1994.</p><p>  [8]閻石.數(shù)字電子技術(shù)基礎(chǔ)(第三版)[

72、M].北京:高等教育出版社,1989.</p><p>  [9]王勇,葉敦范.基于AT89S51的便攜式實時溫度檢測儀[J].儀表技術(shù)與傳感器.2006,24(3).</p><p>  [10]張 偉,戈振揚.烤煙房溫濕度無線數(shù)據(jù)采集系統(tǒng)[J].計算機(jī)工程.2010,36(3).</p><p>  [11] Atmel Corporation.8-bit Mi

73、crocontroller with 8K Bytes In-System Programmable Flash-AT89S52.</p><p><b>  致 謝</b></p><p>  畢業(yè)設(shè)計是對我們知識運用能力的一次全面的考核,也是對我們進(jìn)行科學(xué)研究基本功的訓(xùn)練,培養(yǎng)我們綜合運用所學(xué)知識獨立地分析問題和解決問題的能力,為以后撰寫專業(yè)學(xué)術(shù)論文和工作打下良

74、好的基礎(chǔ)。本次設(shè)計能夠順利完成,首先我要感謝我的母校-湖南涉外經(jīng)濟(jì)學(xué)院,是她為我們提供了學(xué)習(xí)知識的土壤,使我們在這里茁壯成長。</p><p>  其次我要感謝電子信息工程專業(yè)的老師們,他們不僅教會我們專業(yè)方面的知識,而且教會我們做人做事的道理;尤其要感謝本次設(shè)計中給我大力支持和幫助的胡老師,也就是我的指導(dǎo)老師,每有問題胡老師總是耐心的解答,使我能夠充滿熱情的投入到畢業(yè)設(shè)計中去,還要感謝我的同學(xué)們他們熱心的幫助,

溫馨提示

  • 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論