基于51單片機(jī)溫度報警器設(shè)計_第1頁
基于51單片機(jī)溫度報警器設(shè)計_第2頁
基于51單片機(jī)溫度報警器設(shè)計_第3頁
基于51單片機(jī)溫度報警器設(shè)計_第4頁
基于51單片機(jī)溫度報警器設(shè)計_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 安徽商貿(mào)職業(yè)技術(shù)學(xué)院安徽商貿(mào)職業(yè)技術(shù)學(xué)院畢畢 業(yè)業(yè) 論論 文文 設(shè)設(shè) 計計 課題:課題:基于 51 單片機(jī)溫度報警器設(shè)計系部:系部:學(xué)制:學(xué)制: 專業(yè):專業(yè):姓名:姓名: 學(xué)號:學(xué)號: 20132013 年年 1010 月月 2020 日日 目目 錄錄一、一、摘要摘要.1 1二、二、設(shè)計方案論證設(shè)計方案論證.2 2(一)系統(tǒng)主機(jī)選擇.2(二)溫度傳感器選擇.2(三)液晶選擇.2(四)報警電路選擇.3三三、硬件電路設(shè)計、硬件電路設(shè)計.3 3(一)設(shè)計思路:.3(二)總體設(shè)計方框圖 2-1: .3(三)原理圖.4(四)單片機(jī)最小系統(tǒng)設(shè)計.5(五)AT89C52 單片機(jī)芯片引腳功能介紹 .5、6(

2、六)測溫電路設(shè)計.8(七)顯示電路設(shè)計.9、10(八)報警電路設(shè)計.10四四、軟件設(shè)計、軟件設(shè)計.1 11 1(一)主程序流程圖.11(二)測溫程序.12(三)報警程序.12五五、系統(tǒng)仿真、系統(tǒng)仿真.1313六六、總結(jié)與體會、總結(jié)與體會.1 14 4參考文獻(xiàn)參考文獻(xiàn) .1 15 5附錄附錄原理圖原理圖.1 16 6 - 1 -一、摘一、摘 要要在日常生活及工農(nóng)業(yè)生產(chǎn)中經(jīng)常要涉及到溫度的檢測及控制。像電力、化工、石油、冶金、航空航天、機(jī)械制造、糧食存儲、酒類生產(chǎn)等領(lǐng)域內(nèi),溫度常常是表征對象和過程狀態(tài)的最重要的參數(shù)之一。比如,發(fā)電廠鍋爐的溫度必須控制在一定的范圍之內(nèi);許多化學(xué)反應(yīng)的工藝過程必須在適

3、當(dāng)?shù)臏囟认虏拍苷_M(jìn)行;沒有合適的溫度環(huán)境,許多電子設(shè)備就不能正常工作,糧倉的儲糧就會變質(zhì)霉?fàn)€,酒類的品質(zhì)就沒有保障。因此,各行各業(yè)對溫度的控制要求都越來越高。由此可見,溫度的測量是非常重要的。本設(shè)計以單片機(jī) AT89C52 為核心,通過溫度傳感器18B20 將溫度信號轉(zhuǎn)換為電壓信號,將溫度信號傳送給單片機(jī)通過溫度處理程序,送 LCD 進(jìn)行顯示,最后溫度可以直接由 LCD 讀取。本文詳細(xì)闡述了硬件每一部分,并給出硬件框圖和系統(tǒng)原理圖,以及顯示溫度用的軟件程序,文中對所用到的主要器件做了較詳細(xì)的介紹分析,本設(shè)計實現(xiàn)了溫度的自動控制和報警功能。 關(guān)鍵詞關(guān)鍵詞 18B20;傳感器;AT89C52;單

4、片機(jī);溫度;報警器 - 2 -二、設(shè)計方案論證二、設(shè)計方案論證(一)系統(tǒng)主機(jī)選擇(一)系統(tǒng)主機(jī)選擇本次設(shè)計選擇的是 Atmel 公司的 AT89C52,是美國 ATMEL 公司生產(chǎn)的低電壓,高性能 CMOS 8 位單片機(jī),片內(nèi)含 8k bytes 的可反復(fù)擦寫的 Flash 只讀程序存儲器和 256 bytes 的隨機(jī)存取數(shù)據(jù)存儲器(RAM) ,器件采用 ATMEL 公司的高密度、非易失性存儲技術(shù)生產(chǎn),與標(biāo)準(zhǔn) MCS-51 指令系統(tǒng)及 8052 產(chǎn)品引腳兼容,片內(nèi)置通用 8 位中央處理器(CPU)和 Flash 存儲單元,功能強(qiáng)大 AT89C52 單片機(jī)適合于許多較為復(fù)雜控制應(yīng)用場合。(二)(

5、二) 溫度傳感器選擇溫度傳感器選擇溫度傳感器是檢測溫度的器件,其種類最多,應(yīng)用最廣,發(fā)展最快。目前最市場山主要有熱敏電阻、雙金屬片、集成化半導(dǎo)體溫度傳感器和熱電偶四大類。本次設(shè)計中采用的是集成化半導(dǎo)體溫度傳感器 DS18B20。DS18B20 是美國DALLAS 半導(dǎo)體公司繼 DS1820 之后最新推出的一種改進(jìn)型智能溫度傳感器。與傳統(tǒng)的熱敏電阻相比,他能夠直接讀出被測溫度并且可根據(jù)實際要求通過簡單的編程實現(xiàn) 912 位的數(shù)字值讀數(shù)方式??梢苑謩e在 93.75 ms 和 750 ms 內(nèi)完成 9 位和 12位的數(shù)字量,并且從 DS18B20 讀出的信息或?qū)懭?DS18B20 的信息僅需要一根口

6、線(單線接口)讀寫,溫度變換功率來源于數(shù)據(jù)總線,總線本身也可以向所掛接的DS18B20 供電,而無需額外電源。因而使用 DS18B20 可使系統(tǒng)結(jié)構(gòu)更趨簡單,可靠性更高。他在測溫精度、轉(zhuǎn)換時間、傳輸距離、分辨率等方面較 DS1820 有了很大的改進(jìn),給用戶帶來了更方便的使用和更令人滿意的效果。(三)液晶選擇(三)液晶選擇液晶顯示器(LCD)的構(gòu)造是在兩片平行的玻璃當(dāng)中放置液態(tài)的晶體,兩片玻璃中間有許多垂直和水平的細(xì)小電線,透過通電與否來控制桿狀水晶分子改變方向,將光線折射出來產(chǎn)生畫面。LCD 以其微功耗、體積小、重量輕、超薄型等諸多優(yōu)點在袖珍式儀表和低功耗系統(tǒng)中得到越來越廣泛的應(yīng)用。本設(shè)計中,

7、顯示的內(nèi)容比較簡單(字母或者數(shù)字) ,因此選擇字符型的顯示模 - 3 -塊性價比高。這里采用 LCD1602,它可以顯示兩行,每行 16 個字符,采用單5V電源供電,外圍電路配置簡單。(四)報警電路選擇(四)報警電路選擇目前市場上 存在各種各樣的報警電路,比如聲光觸發(fā)、觸摸斷線出發(fā)、紅外觸發(fā)等等。一般來說,一個系統(tǒng)都需要設(shè)計一個報警電路,以提醒使用者當(dāng)前系統(tǒng)所出現(xiàn)的錯誤或者需要引起操作者的注意。考慮本次設(shè)計的數(shù)字式溫度表,只需要在測量的溫度超出范圍時,提醒使用者即可。因此,相應(yīng)的報警電路不需要復(fù)雜的功能,只需采用一個蜂鳴器即可。三、硬件電路設(shè)計三、硬件電路設(shè)計(一)設(shè)計思路(一)設(shè)計思路溫度只

8、要在所設(shè)定的上下溫度界限內(nèi),就會在顯示設(shè)備中精確的顯示出來,如果溫度超過了所設(shè)定的溫度界限,就發(fā)出報警聲。能夠及時向溫度監(jiān)控人員發(fā)出溫度超限信息。便于溫控人員及時的調(diào)整與控制。另外此溫度控制器操作簡單,體積小,靈敏度高,精度高。(二)總體設(shè)計方框(二)總體設(shè)計方框圖圖 AT89C52單片機(jī)LCD顯示采集驅(qū)動圖 2-1 總體設(shè)計方框圖方框圖所示為數(shù)字溫度控制器的單體設(shè)計方框圖。其工作原理為:當(dāng)該電路上 - 4 -電工作以后,首先刷新顯示(LCD) ,然后,溫度傳感器采集溫度送單片機(jī)檢查溫度的高低,由單片機(jī)送出信號經(jīng)過驅(qū)動電路送往顯示電路。(三)原理圖(三)原理圖本系統(tǒng)中我們使用的原理圖主要分為三

9、部分,單片機(jī)部分、傳感器電路部分、顯示電路部分。圖 3-2 為單片機(jī)最小系統(tǒng)的電路設(shè)計部分。圖 3-3 為本系統(tǒng)溫度檢測傳感器 DS18B20 的電路的設(shè)計。通過它來檢測外部的溫度的變化。圖 3-4 為本系統(tǒng)的顯示部分電路設(shè)計。通過 LCD1602 來顯示測得的溫度和系統(tǒng)的工作狀態(tài)。圖 3-2 原理圖圖 3-3 DS18B20 原理圖 圖 3-4 1602 液晶顯示原理圖(四)單片機(jī)最小系統(tǒng)設(shè)計(四)單片機(jī)最小系統(tǒng)設(shè)計單片機(jī)最小系統(tǒng),或者稱為最小應(yīng)用系統(tǒng),是指用最少的元件組成的單片機(jī)可以工作的系統(tǒng).對 51 系列單片機(jī)來說,最小系統(tǒng)一般應(yīng)該包括:單片機(jī)、晶振電路、復(fù) - 5 -位電路、按鍵輸入

10、、顯示輸出等。 應(yīng)用 AT89C52 單片機(jī)設(shè)計并制作一個單片機(jī)最小系統(tǒng),達(dá)到如下基本要求: 具有上電復(fù)位和手動復(fù)位功能。 使用單片機(jī)片內(nèi)程序存儲器。 具有基本的人機(jī)交互接口:按鍵輸入、LED 顯示功能。 具有一定的可擴(kuò)展性,單片機(jī) I/O 口可方便地與其他電路板連接。由于本次設(shè)計中并沒有按鍵輸入功能,嚴(yán)格來說,并不能稱為最小系統(tǒng),使用它來稱呼只是為方便敘述。(五)(五) AT89C52AT89C52 單片機(jī)芯片引腳功能介紹單片機(jī)芯片引腳功能介紹單片機(jī)的 40 個引腳大致可分為 4 類:電源、時鐘、控制和 I/O 引腳。1. 電源: VCC - 芯片電源,接+5V; VSS - 接地端;2.

11、時鐘:XTAL1、XTAL2 - 晶體振蕩電路反相輸入端和輸出端。3. 控制線:控制線共有 4 根, ALE/PROG:地址鎖存允許/片內(nèi) EPROM 編程脈沖 ALE 功能:用來鎖存 P0 口送出的低 8 位地址 PROG 功能:片內(nèi)有 EPROM的芯片,在 EPROM 編程期間,此引腳輸入編程脈沖。 PSEN:外 ROM 讀選通信號。 RST/VPD:復(fù)位/備用電源。 RST(Reset)功能:復(fù)位信號輸入端。 VPD 功能:在 Vcc 掉電情況下,接備用電源。 EA/Vpp:內(nèi)外 ROM 選擇/片內(nèi) EPROM 編程電源。 EA 功能:內(nèi)外 ROM 選擇端。 Vpp 功能:片內(nèi)有 EPR

12、OM 的芯片,在EPROM 編程期間,施加編程電源 Vpp。4. I/O 線 80C51 共有 4 個 8 位并行 I/O 端口:P0、P1、P2、P3 口,共 32 個引腳。P3 口還具有第二功能,用于特殊信號輸入輸出和控制信號(屬控制總線) 。AT89C52 芯片的封裝有 PLCC、PQFP 以及 DIP40,本設(shè)計采用的是引腳雙列直插式封裝。其封裝形式如(圖 3-5)。 - 6 -圖 3-5 AT89C52 DIP-40 封裝5 相關(guān)引腳及功能:P0 口:P0 口是一組 8 位漏極開路型雙向 I/O 口(引腳 3239) ,也即地址/數(shù)據(jù)總線復(fù)用口。一般在使用時,需外加上拉電阻。P1 、

13、P2、P3 口:P1 (引腳 18) 、P2(引腳 2128) 、P3(引腳 1017)是帶內(nèi)部上拉電阻的 8 位雙向 I/O 口。在訪問外部程序存儲器或 16 位地址的外部數(shù)據(jù)存儲器時,P2 口送出高 8 位地址數(shù)據(jù)。在訪問 8 位地址的外部數(shù)據(jù)存儲器時,P2 口輸出 P2 鎖存器的內(nèi)容。P3 口除了作為一般的 I/O 口線外,每個引腳都具有第二功能。RST:復(fù)位輸入(引腳 9) 。當(dāng)振蕩器工作時,RST 引腳出現(xiàn)兩個機(jī)器周期以上高電平將使單片機(jī)復(fù)位。ALE/PROG: (引腳 30)當(dāng)訪問外部程序存儲器或數(shù)據(jù)存儲器時,ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低 8 位字節(jié)。PSEN:程

14、序儲存允許(PSEN)輸出(引腳 29)是外部程序存儲器的讀選通信號。EA/VPP:外部訪問允許。欲使 CPU 僅訪問外部程序存儲器(地址為 0000HFFFFH) ,EA 端必須保持低電平(接地) 。如 EA 端為高電平(接 Vcc 端) ,CPU 則執(zhí)行內(nèi)部程序存儲器中的指令。XTAL1:振蕩器反相放大器的及內(nèi)部時鐘發(fā)生器的輸入端。 - 7 -XTAL2:振蕩器反相放大器的輸出端。圖 3-6 振蕩器 6 時鐘電路 時鐘電路是單片機(jī)正常工作的基礎(chǔ),AT89C52 中有一個用于構(gòu)成內(nèi)部振蕩器的高增益反相放大器,引腳 XTAL1 和 XTAL2 分別是該放大器的輸入端和輸出端。這個放大器與作為反

15、饋元件的片外石英晶體或陶瓷諧振器一起構(gòu)成自激振蕩器,振蕩電路參見圖 3-6。 外接石英晶體(或陶瓷諧振器)及電容 C1、C2 接在放大器的反饋回路中構(gòu)成并聯(lián)振蕩電路。對外接電容 C1、C2 雖然沒有十分嚴(yán)格的要求,但電容容量的大小會輕微影響振蕩頻率的高低、振蕩器工作的穩(wěn)定性、起振的難易程序及溫度穩(wěn)定性,如果使用石英晶體,推薦電容使用 30pF10pF。晶體振蕩頻率 f 一般選擇f12MHz。7 復(fù)位電路AT89C52 在上電時,在復(fù)位引腳 RST 上出現(xiàn)兩個機(jī)器周期以上的高電平,單片機(jī)內(nèi)則初始復(fù)位;當(dāng) RST 由高電平變低電平時,AT89C52 從 0000H 地址開始執(zhí)行程序。有時因為外界的

16、干擾而使得程序進(jìn)入死循環(huán)或者偏離正常的程序執(zhí)行,須由人工復(fù)位。結(jié)合以上兩種情況,常用的復(fù)位電路如圖 3-7 所示。其中:開關(guān) RST 用于人工復(fù)位,接通時可以保證 RST 引腳獲得足夠長時間的高電平;極性電容 C,在 AT89C52 上電時,對 C 充電,C 與電阻 R 相連的一段端保持高電平,從而保證 RST 引腳獲得大于兩個機(jī)器周期的高電平;無極性電容 Ch 主要起濾波作用,濾去高頻諧波;二極管 VD 的作用是,當(dāng)電源電壓瞬間下降時,使電容迅速放電。 - 8 -圖 3-7 復(fù)位電路(六)測溫電路設(shè)計(六)測溫電路設(shè)計DS18B20 采用單總線技術(shù),既可通過串行口線,也可通過其它 I/O 口

17、線與微機(jī)接口,傳感器內(nèi)部內(nèi)置 A/D,直接輸出 912 位(含符號位)的被測溫度值,測溫范圍為-55 +125,測量分辨率最高可達(dá) 0.0625,12 為精度轉(zhuǎn)換時間750ms(典型) ;每片 DS18B20 內(nèi)含 64bit 經(jīng)過激光修正的只讀存儲器 ROM,開始8 位是產(chǎn)品類型編碼,接著的 48 位是每個器件唯一的序號,最后 8 位是前面 56 位的 CRC(循環(huán)冗余校驗)碼,因此任意多個 DSl820 可以存放在同一條單線總線上;從 DSl8B20 送出或從主機(jī)送入 DS18B20 僅需一條線(和地線);每只 DS18B20 都可以設(shè)置成兩種供電方式即數(shù)據(jù)總線供電方式和外部供電方式,采取

18、數(shù)據(jù)總線供電方式可以節(jié)省一根導(dǎo)線但完成溫度測量的時間較長,采取外部供電方式則多用一根導(dǎo)線但測量速度較快。根據(jù) 18B20 的單總線特性,結(jié)合設(shè)計的目的(兩路溫度測量) ,因此這里采用的方案是:利用單片機(jī)的一個 I/O 口作為單總線使用,兩路 18B20 掛接在單總線上,由于單總線的開漏特性,需要外接一個 4.7k 的上拉電阻,18B20 采用外電源供電工作方式,以提高測量速度。設(shè)計的電路如圖所示。 - 9 -圖 3-8 18B20 圖 圖 3-9 LCD1602 圖(七)顯示電路設(shè)計(七)顯示電路設(shè)計1602 字符型 LCD 模塊的應(yīng)用非常廣泛,而各種液晶廠家均有提供幾乎都是同樣規(guī)格的 160

19、2 模塊或兼容模塊,盡管各廠家的對其各自的產(chǎn)品命名不盡相同;1602 字符型 LCD 模塊最初采用的 LCD 控制器采用的是 HD44780,在各廠家生產(chǎn)的1602 模塊當(dāng)中,基本上也都采用了與之兼容的控制 IC,所以從特性上基本上是一樣的;當(dāng)然,很多廠商提供了不同的字符顏色、背光色之類的顯示模塊。通常所見到的 1602 基本規(guī)格:顯示容量:16x2 個字符芯片工作電壓:4.55.5v工作電流:2.0mA(5.0v)模塊最佳工作電壓:5.0v引腳說明:1 GND 地2 Vcc 電源+5V3 Vo 對比度調(diào)節(jié)4 RS 寄存器選擇(H = 數(shù)據(jù)選擇,L = 指令選擇)5 RW 讀寫信號6 E 使能

20、信號714 DB0 DB7 數(shù)據(jù)線15 A LED+ - 10 -16 K LED- (不帶背光功能的 1602 只有 114 引腳,沒有 15、16 引腳)圖 3-10 為 LCD1602 示意圖,設(shè)計的顯示電路如圖所示。為便于調(diào)節(jié)對比度,在 1、2 引腳間加一可調(diào)電阻。714 數(shù)據(jù)引腳接 89C52 的 P0 口,RS、RW、E 三個控制端接三個 I/O 口。兩個背光引腳這里不使用。圖 3-10 LCD1602 示意圖(八)報警電路設(shè)計(八)報警電路設(shè)計本次設(shè)計的報警電路比較簡單,由一個蜂鳴器組成。當(dāng)溫度不在被測溫度上下范圍內(nèi),則該蜂鳴器發(fā)出報警鳴叫聲,從而實現(xiàn)報警功能。四、軟件設(shè)計四、軟

21、件設(shè)計系統(tǒng)程序主要包括主程序、讀出溫度子程序、溫度轉(zhuǎn)換命令程序、計算溫度子 - 11 -程序、顯示數(shù)據(jù)刷新子程序等等。(一)主程序(一)主程序流程圖流程圖主程序的主要功能是負(fù)責(zé)溫度的實時顯示、讀出并處理 DS18B20 的測量溫度值,溫度測量每 1s 進(jìn)行一次。初始化調(diào)用顯示子程序1S到?初次上電?讀出溫度值溫度計算處理顯示數(shù)據(jù)刷新發(fā)溫度轉(zhuǎn)換開關(guān)命令NY圖 3-1 主程序流程圖(二)測溫程序(二)測溫程序由于 DS18B20 采用單總線方式來與主機(jī)實現(xiàn)通信,而單總線在任何時刻只能有一個控制信號或數(shù)據(jù),數(shù)據(jù)要能在單片機(jī)和單總線芯片之間實現(xiàn)可靠的傳送,遵循單總線處理次序通信協(xié)議,確保數(shù)據(jù)有條不紊地

22、傳送。 - 12 -因此需要使用 match rom 命令,確定哪個器件在與主機(jī)通信,以保證通信的正確。源程序1.延時函數(shù)由于 DS18B20 的時序精準(zhǔn)讀多為 us 級的延時,因此有必要獨立編寫延時函數(shù)。void delay5(uchar us) while(-us) _nop_(); _nop_(); _nop_();對于 12M 晶振,忽略函數(shù)調(diào)用和返回時間(2+2=4us)us=1 時,函數(shù)可以延時約為 5us(對于 11.0592M 晶振,時間會大于 5us) ,如果調(diào)用時 us 較大,誤差是可以接受的。(三)報警程序(三)報警程序報警電路的機(jī)構(gòu)很簡單,因此只要改變相關(guān)控制引腳的高低

23、電平就可達(dá)到目的,具體程序:設(shè)置一個報警標(biāo)志,如果測得的溫度超過限度,置標(biāo)志位,在報警程序中,根據(jù)標(biāo)志位來判斷是否發(fā)出報警。假設(shè) alert_ls, alert_led 分別為聲光控制引腳,af1、af2 分別為兩路測溫的標(biāo)志。由硬件電路可知,最初狀態(tài) alert_ls, alert_led 應(yīng)都為高電平。void alert(uchar af1,uchar af2)if(af1|af2)alert_led=!alert_led;alert_ls=!alert_ls;elsealert_led=1;alert_ls=1;五、系統(tǒng)仿真五、系統(tǒng)仿真 - 13 -本次設(shè)計的溫度采集器已經(jīng)基本完成了老師交給的任務(wù)。并且通過了仿真的驗證了系統(tǒng)的可靠性。仿真圖片如下(圖 5-1.)圖 5-1 報警器溫度報警器仿真圖六、總結(jié)與體會六、總結(jié)與體會學(xué)生時代即將結(jié)束了,我也將步入社會。在這即將畢業(yè)之際,我也完成了我的 - 1

溫馨提示

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

最新文檔

評論

0/150

提交評論