【正文】
view of such a design that Can be precise, stable, realtime measurement of temperature and humidity environment to the practical temperature and humidity detector it is particularly important. The temperature and humidity detector is AT89S52 as the core chip, the microcontroller has a very good antidisturbance capacity, fast response. Based on this MCU temperature and humidity detector can be realtime, accurate measurement of environmental temperature and relative humidity. The detector part of the design of the hardware used to with AT89S52microcontroller as the core of the control devices, with high sensitivity AD0809 colect humidity resistance change then through the MCU handle data acquisition ponents for direct control the DS18B20 obtain now device add an alarm,it can set temprature and humidity over limit it will alarming. Analog input keyboard to achieve humanputer interface exchange function and used as an LCD display hardware design. The software part is divided into several parts, and then each module design process, with C language to achieve, to bine the various parts of coordination, and eventually realize the environmental temperature and humidity in the realtime detection. The temperature and humidity detector can basically plete the temperature and humidity testing, but because of personal factors such as lack of experience, the design of some deficiencies, there are certain practical products from the gap, there are some aspects need to be improved.KEYWORDS:AT89S52MCU,A/Dconversion, Sensor, LCD, Temperature and humidity目 錄前 言 1第1章 溫濕度檢測儀總體技術(shù)方案 2167。軟件部分則采用模塊化的方法將其分成幾個(gè)部分,然后逐模塊設(shè)計(jì)程序,用C語言來實(shí)現(xiàn),使各部分結(jié)合起來協(xié)調(diào)工作,最終實(shí)現(xiàn)對環(huán)境中溫濕度的實(shí)時(shí)檢測。本儀器還增加了報(bào)警裝置,用戶可根據(jù)需要設(shè)定溫濕度上下限,若當(dāng)前溫濕度超限便會報(bào)警?;诖藛纹瑱C(jī)的溫濕度檢測儀可以實(shí)時(shí)、準(zhǔn)確的測量環(huán)境中的溫度和相對濕度。基于AT89S52單片機(jī)的溫濕度檢測儀摘 要隨著社會的發(fā)展,人們對環(huán)境中的溫度和濕度的要求也越來越高,尤其是在醫(yī)學(xué)、電子電力、航天航空、食品發(fā)酵等領(lǐng)域中對溫濕度的要求尤其嚴(yán)格,鑒于如此設(shè)計(jì)出一個(gè)能夠精確、穩(wěn)定、實(shí)時(shí)測量出環(huán)境中溫濕度的實(shí)用型溫濕度檢測儀顯得尤為重要。本溫濕度檢測儀是以AT89S52單片機(jī)的為核心控制芯片,該單片機(jī)有很好的抗干擾能力、響應(yīng)速度快。本檢測儀的硬件部分的設(shè)計(jì)采用了0809A/D轉(zhuǎn)換器以高靈敏度采集濕敏電阻阻值變化,在經(jīng)過單片機(jī)處理得到相應(yīng)濕度; 單片機(jī)直接控制溫度傳感器DS18B20對溫度實(shí)時(shí)采集和監(jiān)控。接入獨(dú)立鍵盤鍵盤實(shí)現(xiàn)人機(jī)交換功能,并用LCD12864作為顯示設(shè)備的硬件設(shè)計(jì)方案。該溫濕度檢測儀能夠基本完成的溫濕度檢測,但由于個(gè)人經(jīng)驗(yàn)不足等因素,本設(shè)計(jì)還有一些不足之處,離產(chǎn)品實(shí)用還有一定的差距,還有一些方面需要進(jìn)一步完善。 溫濕度檢測儀的主要性能指標(biāo)及其工作原理 2167。 溫濕度檢測儀的工作原理 2167。 溫濕度檢測儀應(yīng)用軟件系統(tǒng)的設(shè)計(jì)方案 3167。 溫濕度檢測儀的硬件電路設(shè)計(jì) 7167。 濕度檢測電路 8167。 主程序模塊設(shè)計(jì) 11167。 溫度檢測模塊程序設(shè)計(jì) 12167。 鍵盤掃描和LCD顯示模塊程序設(shè)計(jì) 19167。 I2總線程序設(shè)計(jì) 23結(jié) 論 27參考文獻(xiàn) 28致 謝 29附 錄 30 前 言在日常實(shí)際生產(chǎn)生活中,科研、農(nóng)業(yè)、暖通、紡織、機(jī)房、航空航天、電力等工業(yè)部門對產(chǎn)品質(zhì)量的要求越來越高,對環(huán)境溫、濕度的控制以及對工業(yè)材料的水分值的監(jiān)測與分析都已成為比較普遍的技術(shù)條件之一。在這個(gè)發(fā)展過程中,以單片機(jī)為核心控制器的溫濕度檢測以體積小、操作簡單、性能穩(wěn)定、測量精度高等諸多有點(diǎn)正逐步進(jìn)入生產(chǎn)生活的各個(gè)方面。先根據(jù)實(shí)際生產(chǎn)生活的需要提出溫濕度檢測儀的設(shè)計(jì)功能要求,然后由這些具體要求和現(xiàn)有的設(shè)計(jì)條件設(shè)計(jì)出了適合的硬件原理圖,盡量采用模塊化的方法將其分成幾個(gè)部分,然后分模塊設(shè)計(jì)程序,最使各部分結(jié)合起來協(xié)調(diào)工作,實(shí)現(xiàn)功能要求。論文的第一章介紹了溫濕度檢測儀的主要性能指標(biāo)及其工作原理,主要介紹了溫濕度檢測儀的硬件設(shè)計(jì)總體方案和溫濕度檢測儀的應(yīng)用軟件系統(tǒng)的總體設(shè)計(jì)方案;第二章主要介紹了溫濕度檢測儀的硬件電路設(shè)計(jì),重點(diǎn)介紹了溫度檢測電路、鍵盤LCD顯示電路和濕度檢測電路;第三章主要介紹了基于AT89S52單片機(jī)的濕度檢測儀的軟件設(shè)計(jì),軟件設(shè)計(jì)部分采用模塊化設(shè)計(jì),重點(diǎn)介紹了濕度檢測模塊程序設(shè)計(jì)中鍵盤掃描、LCD顯示。本文中的基于AT89S52單片機(jī)的濕度檢測儀就是針對這一需求而設(shè)計(jì)的。在此設(shè)計(jì)過程中,本設(shè)計(jì)綜合分析了不同用戶在不同場合的不同需求,經(jīng)研究之后,采用了AT89S52單片機(jī)為核心控制器件,A/D0809轉(zhuǎn)換器以高靈敏度溫度傳感器和濕度傳感器為數(shù)據(jù)獲取元件的方案。167。 性能指標(biāo)1. 相對濕度測量精度和范圍: 177。1℃,檢測范圍0~100℃;3. 溫濕度上下限設(shè)定范圍:20~100,0~20;4. LCD實(shí)時(shí)顯示;5. 電源:DC5V177。 溫濕度檢測儀的工作原理加載有相應(yīng)程序的AT89S52單片機(jī)定時(shí)采集溫度傳感器信號和相對濕度測量電路電壓輸出信號此電壓由兩位數(shù)碼管顯示出來,從而獲得溫度和相對濕度數(shù)據(jù),分別將這些數(shù)據(jù)存儲于數(shù)據(jù)存儲器中,用戶可根據(jù)需要設(shè)定溫濕度上下限值,若單片機(jī)采集的數(shù)據(jù)超限便會報(bào)警。 167。濕度測量電路由0809A/D轉(zhuǎn)換器和濕敏電阻組成,濕敏電阻阻值隨環(huán)境相對濕度的變化而變化,從而導(dǎo)致其兩端電壓的變化變化,由0809A/D把模擬量轉(zhuǎn)換成數(shù)字量,單片經(jīng)過軟件處理后,獲得相對電壓值和濕度值。ISP接口電路與PC機(jī)的聯(lián)接,實(shí)現(xiàn)下載程序等通訊功能。 溫濕度檢測儀應(yīng)用軟件系統(tǒng)的設(shè)計(jì)方案該儀表的系統(tǒng)程序設(shè)計(jì)采用模塊化的程序設(shè)計(jì)方法,其結(jié)構(gòu)見圖12:主程序存儲程序濕度檢測LCD顯示 鍵盤掃描溫度檢測濕度顯示溫度顯示溫度讀取濕度轉(zhuǎn)換圖12 軟件設(shè)計(jì)模塊圖檢測儀的應(yīng)用軟件系統(tǒng)包括:主程序模塊、溫度檢測模塊、相對濕度檢測模塊、掉電存儲模塊,鍵盤和顯示模塊等。溫度檢測模塊實(shí)現(xiàn)對濕度數(shù)據(jù)的存儲 、顯示。167。使用Atmel 公司高密度非 易失性存儲器技術(shù)制造,與工業(yè)80C51 產(chǎn)品指令和引腳完 全兼容。在單芯片上,擁有靈巧的8 位CPU 和在系統(tǒng) 可編程Flash,使得AT89S52為眾多嵌入式控制應(yīng)用系統(tǒng)提 供高靈活、超有效的解決方案。另外,AT89S52 可降至0Hz 靜態(tài)邏 輯操作,支持2種軟件可選擇節(jié)電模式。掉電保護(hù)方式下,RAM內(nèi)容被保存,振蕩器被凍結(jié), 單片機(jī)一切工作停止,直到下一個(gè)中斷或硬件復(fù)位為止。作為輸出口,每位能驅(qū)動8個(gè)TTL邏 輯電平。 當(dāng)訪問外部程序和數(shù)據(jù)存儲器時(shí),P0口也被作為低8位地址/數(shù)據(jù)復(fù)用。 在flash編程時(shí),P0口也用來接收指令字節(jié);在程序校驗(yàn)時(shí),輸出指令字節(jié)。 P1 口:P1 口是一個(gè)具有內(nèi)部上拉電阻的8 位雙向I/O 口,p1 輸出緩沖器能驅(qū)動4 個(gè) TTL 邏輯電平。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。 在flash編程和校驗(yàn)時(shí),P1口接收低8位地址字節(jié)。對P2 端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入 口使用。 在訪問外部程序存儲器或用16位地址讀取外部數(shù)據(jù)存儲器(例如執(zhí)行MOVX DPTR) 時(shí),P2 口送出高八位地址。在使用 8位地址(如MOVX RI)訪問外部數(shù)據(jù)存儲器時(shí),P2口輸出P2鎖存器的內(nèi)容。 P3 口:P3 口是一個(gè)具有內(nèi)部上拉電阻的8 位雙向I/O 口,p3 輸出緩沖器能驅(qū)動4 個(gè) TTL 邏輯電平。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。 在flash編程和校驗(yàn)時(shí),P3口也接收一些控制信號。 RST——復(fù)位輸入。 ALE/PROG——當(dāng)訪問外部程序存儲器或數(shù)據(jù)存儲器時(shí),ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低8位字節(jié)。要注意的是:每當(dāng)訪問外部數(shù)據(jù)存儲器時(shí)將跳過一個(gè)ALE脈沖。 如有必要,可通過對特殊功能寄存器(SFR)區(qū)中的8EH單元的D0位置位,可禁止ALE操作。此外,該引腳會被微弱拉高,單片機(jī)執(zhí)行外部程序時(shí),應(yīng)設(shè)置ALE禁止位無效。 EA/VPP——外部訪問允許,欲使CPU僅訪問外部程序存儲器(地址為0000HFFFFH),EA端必須保持低電平(接地)。 如EA端為高電平(接Vcc端),CPU則執(zhí)行內(nèi)部程序存儲器的指令。167。167。因此用它來組成一個(gè)測溫系統(tǒng),具有線路簡單,在一根通信線,可以掛很多這樣的數(shù)字溫度計(jì),十分方便。 (2)、在DS18B20中的每個(gè)器件上都有獨(dú)一無二的序列號。 (4)、測量溫度范圍在-55。C之間。 (6)、內(nèi)部有溫度上、下限告警設(shè)置。開漏單總線接口引腳。3VCC電源167。工業(yè)上流行的濕敏電阻主要有半導(dǎo)體陶瓷濕敏元件,氯化鋰濕敏電阻,有機(jī)高分子膜濕敏電阻主要參數(shù) 濕敏電阻器的主要參數(shù) 1)相對濕度:指在某一溫度下,空氣中所含水蒸氣的實(shí)際密度與同一溫度下飽和密度之比,通常用“RH”表示?! ?)靈敏度:指濕敏電阻器檢測濕度時(shí)的分辨率?! ?)濕滯效應(yīng):指濕敏電阻器在吸濕和脫濕過程中電氣參數(shù)表現(xiàn)的滯后現(xiàn)象。(反應(yīng)速度)。應(yīng)用濕敏電阻器的應(yīng)用:廣泛應(yīng)用于洗衣機(jī)、空調(diào)器、錄音機(jī)、微波爐等家用電器及工業(yè)、農(nóng)業(yè)等方面作濕度檢測和濕度控制用。 其它模塊電路設(shè)計(jì)鍵盤模塊采用動態(tài)掃描的方式,鍵盤掃描電路控制溫度和濕度界面的選擇同時(shí)還能修改上下限的設(shè)定溫度。帶中文字庫的圖形液晶12864用來顯示溫濕度界面,由于單片機(jī)的I/O口有限,我采用了兩片74HC573鎖存器來擴(kuò)大I/O口以便連接所有器件。器件的輸入是和標(biāo)準(zhǔn) CMOS 輸出兼容 的;加上拉電阻,他們能和 LS/ALSTTL 輸出兼容。當(dāng)鎖存使能變低時(shí),符合建立時(shí)間和保持時(shí)間的數(shù)據(jù)會被鎖存。掉電存儲芯片我采用了AT24C01,報(bào)警裝置選用三極管驅(qū)動蜂鳴器報(bào)警,具體電路如下圖所示: AT24C02支持IC,總線數(shù)據(jù)傳送協(xié)議IC,總線協(xié)議規(guī)定任何將數(shù)據(jù)傳送到總線的器件作為發(fā)送器。數(shù)據(jù)傳送是由產(chǎn)生串行時(shí)鐘和所有起始停止信號的主器件控制的。 表2 管腳描述 管腳名稱 功能 A0 A1 A2 器件地址選擇 SDA 串行數(shù)據(jù)/地址 SCL 串行時(shí)鐘 WP 寫保護(hù) Vcc +~ 工作電壓 Vss 地 SCL 串行時(shí)鐘 AT24C02串行時(shí)鐘輸入管腳用于產(chǎn)生器件所有數(shù)據(jù)發(fā)送或接收的時(shí)鐘,這是一個(gè)輸入管腳。 A0、AA2 器件地址輸入端 這些輸入腳用于多個(gè)器件級聯(lián)時(shí)設(shè)置器件地址,當(dāng)這些腳懸空時(shí)默認(rèn)值為0。如果只有一個(gè)AT24C02被總線尋址,這三個(gè)地址輸入腳(A0、AA2 )可懸空或連接到Vss,如果只有一個(gè)AT24C02被總線尋址這三個(gè)地址輸入腳(A0、AA2 )必須連接到Vss。當(dāng)WP管腳連接到Vss 或懸空允許器件進(jìn)行正常的讀/寫操作第2章 溫濕度檢測儀的軟件設(shè)計(jì)167。它的內(nèi)容包括主程序的起始地址,中斷服務(wù)程序的起始地址,有關(guān)內(nèi)存單元及相關(guān)部件的初始化和一些子程序調(diào)用等等。主程序初始化的具體內(nèi)容包括:時(shí)間中斷的初始化、外部中斷源的初始化、單片機(jī)I/O口初始化、RAM初始化、LCD初始化、對各個(gè)子程序的調(diào)用,然后對溫度和濕度進(jìn)行檢測并將結(jié)果顯示在LCD上。167。 溫度檢測模塊程序設(shè)計(jì)1. 程序設(shè)計(jì)方案開始始初始化DS18B20,LCD讀