基于單片機(jī)的溫濕度檢測(cè)與控制系統(tǒng)_第1頁(yè)
基于單片機(jī)的溫濕度檢測(cè)與控制系統(tǒng)_第2頁(yè)
基于單片機(jī)的溫濕度檢測(cè)與控制系統(tǒng)_第3頁(yè)
基于單片機(jī)的溫濕度檢測(cè)與控制系統(tǒng)_第4頁(yè)
基于單片機(jī)的溫濕度檢測(cè)與控制系統(tǒng)_第5頁(yè)
已閱讀5頁(yè),還剩39頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

PAGE畢業(yè)論文(設(shè)計(jì))題目基于單片機(jī)的溫濕度檢測(cè)與控制系統(tǒng)院系電子工程系專業(yè)電子科學(xué)與技術(shù)學(xué)生姓名學(xué)號(hào)指導(dǎo)教師職稱目錄HYPERLINK\l"_Toc294866256"1、引言 12、設(shè)計(jì)內(nèi)容及方案 22.1設(shè)計(jì)內(nèi)容 22.2方案選擇 PAGEREF_Toc294866259\h32.2.1溫濕度傳感器的選擇 32.2.2顯示器的選擇 33、系統(tǒng)的硬件選擇及設(shè)計(jì)原理 43.1溫濕度傳感器SHT10 43.1.1接口定義 43.1.2電路特性 53.1.3傳感器特點(diǎn) 63.1.4技術(shù)參數(shù) 63.2單片機(jī)選擇與介紹 73.2.1主要性能 PAGEREF_Toc294866269\h73.2.2AT89S52介紹 83.2.3腳口介紹 93.3復(fù)位電路 10HYPERLINK\l"_Toc294866273"3.4晶振電路 113.5顯示電路 123.6報(bào)警電路 133.7鍵盤設(shè)定模塊 143.8穩(wěn)壓電路 144、軟件設(shè)計(jì) 154.1主程序模塊 164.2SHT10初始化流程 164.3LCD初始模塊 175、調(diào)試 195.1軟件調(diào)試 195.1.1Proteus軟件 195.1.2KeilC51軟件 205.2根據(jù)原理圖焊接電路板 235.3硬件調(diào)試 255.3.1程序下載 255.3.2檢測(cè)顯示 265.3.3控制顯示 265.3.4溫度報(bào)警 275.3.5濕度報(bào)警 276、小結(jié) 28參考文獻(xiàn) 28致謝 30ABSTRACT 31附錄 32PAGE10PAGE1基于單片機(jī)的溫濕度檢測(cè)與控制系統(tǒng)王鶴南京信息工程大學(xué)濱江學(xué)院電子科學(xué)與技術(shù),南京210044摘要:溫濕度是生活生產(chǎn)中的重要的參數(shù)。本設(shè)計(jì)為基于單片機(jī)的溫濕度檢測(cè)與控制系統(tǒng),采用模塊化、層次化設(shè)計(jì)。用新型的智能溫溫度傳感器SHT10主要實(shí)現(xiàn)對(duì)溫度、濕度的檢測(cè),將溫度濕度信號(hào)通過(guò)傳感器進(jìn)行信號(hào)的采集并轉(zhuǎn)換成數(shù)字信號(hào),再運(yùn)用單片機(jī)AT89S52進(jìn)行數(shù)據(jù)的分析和處理,為顯示和報(bào)警電路提供信號(hào),實(shí)現(xiàn)對(duì)溫濕度的控制報(bào)警。報(bào)警系統(tǒng)根據(jù)設(shè)定報(bào)警的上下限值實(shí)現(xiàn)報(bào)警功能,顯示部分采用字符型TC1602液晶顯示所測(cè)溫濕度值。系統(tǒng)電路簡(jiǎn)單、集成度高、工作穩(wěn)定、調(diào)試方便、檢測(cè)精度高,具有一定的實(shí)用價(jià)值。關(guān)鍵詞:溫濕度;SHT10;單片機(jī);AT89S52;檢測(cè);報(bào)警1、引言溫度和濕度的檢測(cè)和控制是許多行業(yè)的重要工作之一,不論是貨品倉(cāng)庫(kù)、生產(chǎn)車間,都需要有規(guī)定的溫度和濕度,然而溫度和濕度卻是最不易保障的指標(biāo),針對(duì)這一情況,研制可靠且實(shí)用的溫度和濕度檢測(cè)與控制系統(tǒng)就顯得非常重要。溫濕度的檢測(cè)與控制是工業(yè)生產(chǎn)過(guò)程中比較典型的應(yīng)用之一,隨著傳感器在生產(chǎn)和生活中的更加廣泛的應(yīng)用。在生產(chǎn)中,溫濕度的高低對(duì)產(chǎn)品的質(zhì)量影響很大。由于溫濕度的檢測(cè)控制不當(dāng),可能使我們導(dǎo)致無(wú)法估計(jì)的經(jīng)濟(jì)損失。為保證日常工作的順利進(jìn)行,首要問(wèn)題是加強(qiáng)生產(chǎn)車間內(nèi)溫度與濕度的監(jiān)測(cè)工作,但傳統(tǒng)的方法過(guò)于粗糙,通過(guò)人工進(jìn)行檢測(cè),對(duì)不符合溫度和濕度要求的庫(kù)房進(jìn)行通風(fēng)、去濕和降溫等工作。這種人工測(cè)試方法費(fèi)時(shí)費(fèi)力、效率低,且測(cè)試的溫度及濕度誤差大,隨機(jī)性大。目前,在低溫條件下(通常指100℃以下),溫濕度的測(cè)量已經(jīng)相對(duì)成熟。利用新型單總線式數(shù)字溫度傳感器實(shí)現(xiàn)對(duì)溫度的測(cè)試與控制得到更快的開(kāi)發(fā)。但人們對(duì)它的要求越來(lái)越高,要為現(xiàn)代人工作、科研、學(xué)習(xí)、生活提供更好的更方便的設(shè)施就需要從數(shù)字單片機(jī)技術(shù)入手,一切向著數(shù)字化,智能化控制方向發(fā)展。對(duì)于國(guó)內(nèi)外對(duì)溫濕度檢測(cè)的研究,從復(fù)雜模擬量檢測(cè)到現(xiàn)在的數(shù)字智能化檢測(cè)越發(fā)的成熟,隨著科技的進(jìn)步,現(xiàn)在的對(duì)于溫濕度研究,檢測(cè)系統(tǒng)向著智能化、小型化、低功耗的方向發(fā)展。在發(fā)展過(guò)程中,以單片機(jī)為核心的溫濕度控制系統(tǒng)發(fā)展為體積小、操作簡(jiǎn)單、量程寬、性能穩(wěn)定、測(cè)量精度高,等諸多優(yōu)點(diǎn)在生產(chǎn)生活的各個(gè)方面實(shí)現(xiàn)著至關(guān)重要的作用[1]。溫濕度傳感器除電阻式、電容式濕敏元件之外,還有電解質(zhì)離子型濕敏元件、重量型濕敏元件(利用感濕膜重量的變化來(lái)改變振蕩頻率)、光強(qiáng)型濕敏元件、聲表面波濕敏元件等。濕敏元件的線性度及抗污染性差,在檢測(cè)環(huán)境濕度時(shí),濕敏元件要長(zhǎng)期暴露在待測(cè)環(huán)境中,很容易被污染而影響其測(cè)量精度及長(zhǎng)期穩(wěn)定性[2]。2002年Sensiron公司在世界上率先研制成功SHT10型智能化溫度/溫度傳感器,體積與火柴頭相近。它們不僅能準(zhǔn)確測(cè)量相對(duì)溫度,還能測(cè)量溫度和露點(diǎn)。測(cè)量相對(duì)溫度的范圍是0~100%,分辨力達(dá)0.03%RH,最高精度為±2%RH。測(cè)量溫度的范圍是-40℃~+123.8℃,分辨力為0.01℃。測(cè)量露點(diǎn)的精度<±1℃。在測(cè)量濕度、溫度時(shí)A/D轉(zhuǎn)換器的位數(shù)分別可達(dá)12位、14位。利用降低分辨力的方法可以提高測(cè)量速率,減小芯片的功耗。SHT11/15的產(chǎn)品互換性好,響應(yīng)速度快,抗干擾能力強(qiáng),不需要外部元件,適配各種單片機(jī),可廣泛用于醫(yī)療設(shè)備及溫度、濕度調(diào)節(jié)系統(tǒng)中?,F(xiàn)在雖然單片機(jī)的品種繁多,各具特色,但仍以MCS-51為核心的單片機(jī)占主流,兼容其結(jié)構(gòu)和指令系統(tǒng)的有PHILIPS公司的產(chǎn)品,ATMEL公司的產(chǎn)品和中國(guó)臺(tái)灣的WinBond系列單片機(jī)。AT89S52是一種低功耗、高性能CMOS8位微控制器,具有8K在系統(tǒng)可編程Flash存儲(chǔ)器。使用Atmel公司高密度非易失性存儲(chǔ)器技術(shù)制造,與工業(yè)80C51產(chǎn)品指令和引腳完全兼容。片上Flash允許程序存儲(chǔ)器在系統(tǒng)可編程,亦適于常規(guī)編程器。在單芯片上,擁有靈巧的8位CPU和在系統(tǒng)可編程Flash,使AT89S52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。本設(shè)計(jì)以此為出發(fā)點(diǎn),以溫濕度控制為核心思想,根據(jù)自己所學(xué)的專業(yè)知識(shí),用新型的智能集成溫溫度傳感器SHT10主要實(shí)現(xiàn)對(duì)溫度、濕度的檢測(cè),將溫度濕度信號(hào)通過(guò)傳感器進(jìn)行信號(hào)的采集并轉(zhuǎn)換成數(shù)字信號(hào),再運(yùn)用單片機(jī)AT89S52進(jìn)行數(shù)據(jù)的分析和處理,為顯示和報(bào)警電路提供信號(hào),實(shí)現(xiàn)對(duì)溫濕度的控制報(bào)警。根據(jù)工作環(huán)境要求設(shè)定系統(tǒng)的溫濕度閾值,利用LCD實(shí)時(shí)地測(cè)量顯示環(huán)境的溫濕度值,實(shí)現(xiàn)溫濕度自動(dòng)控制,使其在較寬的溫度范圍內(nèi)具有較高的測(cè)試精度,同時(shí)還可以根據(jù)預(yù)設(shè)定報(bào)警閾值報(bào)警,一旦發(fā)現(xiàn)環(huán)境溫濕度超限,立即報(bào)警。為此我設(shè)計(jì)了操作簡(jiǎn)單、測(cè)量精度高、工作穩(wěn)定的基于單片機(jī)的溫濕度檢測(cè)與控制系統(tǒng)。2、設(shè)計(jì)內(nèi)容及方案2.1設(shè)計(jì)內(nèi)容用新型的智能集成溫溫度傳感器SHT10主要實(shí)現(xiàn)檢測(cè)溫度、濕度的檢測(cè),將溫度濕度信號(hào)通過(guò)傳感器進(jìn)行信號(hào)的采集并轉(zhuǎn)換成數(shù)字信號(hào),再運(yùn)用單片機(jī)AT89S52進(jìn)行數(shù)據(jù)的分析和處理,為顯示和報(bào)警電路提供信號(hào)。設(shè)定模塊主要為設(shè)定溫濕度報(bào)警的閾值。如圖2.1所示。單片機(jī)控制模塊單片機(jī)控制模塊LCD顯示模塊電源模塊報(bào)警模塊溫濕度度采集模塊按鍵設(shè)定模塊圖2.1設(shè)計(jì)模塊圖要求如下:1、用單片機(jī)通過(guò)編程來(lái)實(shí)現(xiàn)溫濕度的顯示與控制2、通過(guò)LCD來(lái)顯示溫濕度的數(shù)值3、能夠?qū)崿F(xiàn)超閾值的報(bào)警4、檢測(cè)范圍與精度:溫度檢測(cè)范圍:-30℃~+100℃測(cè)量精度:1℃濕度檢測(cè)范圍:0~100%RH檢測(cè)精度:4.5%RH[3]2.2方案選擇主要針對(duì)溫濕度傳感器的選擇和顯示控制系統(tǒng)的選擇,并在其中做了比較。2.2.1溫濕度傳感器的選擇方案一:濕度檢測(cè)采用濕敏元件,其主要分為電阻式和電容式。濕敏電阻的種類多,靈敏度高,但是起線性度和產(chǎn)品的互換性差。濕敏電容靈敏度高,產(chǎn)品互換性搞,響應(yīng)速度快,偏于實(shí)現(xiàn)產(chǎn)品小型化和集成化,是精度一般比濕敏電阻要低一些。綜合濕敏元件,其線性度可抗污染性差,在濕度的檢測(cè)環(huán)境中濕敏元件需要時(shí)刻在檢測(cè)環(huán)境中,很容易受到環(huán)境污染從而影響其測(cè)量精度和持續(xù)的穩(wěn)定性。溫度檢測(cè)采用最基本的熱電偶和熱敏電阻。熱電偶應(yīng)用廣泛,價(jià)格便宜而且耐用。種類多,能夠覆蓋非常寬的溫度范圍,最高溫度可以到達(dá)2000℃。但是其非線性、響應(yīng)速度慢、精度中等、靈敏度低、穩(wěn)定性低、高溫下容易老化和有線性漂移,并且測(cè)量需要參考量。熱敏電阻,該傳感器主要隨溫度的變化阻值發(fā)生變化,主要用于-200到500℃溫度范圍內(nèi)的溫度測(cè)量。其溫度系數(shù)要大而且需要穩(wěn)定的溫度源,反應(yīng)速度快,工藝好價(jià)格低,測(cè)溫環(huán)境穩(wěn)定。方案二:溫濕度檢測(cè)采用集成模擬傳感器,其靈敏度高、線性度好、響應(yīng)速度快,而且它可以和信號(hào)處理電路及邏輯控制電路集成在一起,使用方便。濕度傳感器選用HS1101,溫度傳感器選擇AD590。這兩個(gè)傳感器,在接入電路中,都需要A/D轉(zhuǎn)換器,把模擬信號(hào)轉(zhuǎn)換成數(shù)字信號(hào)從而是單片機(jī)存儲(chǔ)采集到的數(shù)據(jù)。方案三:采用數(shù)字式傳感器,起初選擇DS18B20和SHT10作為溫度和濕度測(cè)量元件,但是SHT10包含相對(duì)濕度傳感器、溫度傳感器,所以把SHT10作為溫濕度檢測(cè)的一個(gè)整體。SHT10作為典型的溫濕度傳感器,在測(cè)量過(guò)程中可對(duì)相對(duì)溫濕度進(jìn)行自動(dòng)校準(zhǔn),準(zhǔn)確的測(cè)量溫濕度。產(chǎn)品互換性好,相應(yīng)速度快,抗干擾性強(qiáng),不需要外部參考源和外部器件。綜上所述,SHT10與溫濕敏元件的溫濕度測(cè)量以及模擬測(cè)量的元器件相比,起數(shù)字溫濕度傳感器低成本,內(nèi)部集成復(fù)雜,測(cè)量準(zhǔn)確,而且能夠提供數(shù)字輸出,簡(jiǎn)化外部測(cè)量電路,精度高,適用廣泛的測(cè)量范圍,并且本設(shè)計(jì)的溫濕度檢測(cè)系統(tǒng)相適合。因此,選擇溫度濕度傳感器SHT10作為此次設(shè)計(jì)中的測(cè)量元件。2.2.2顯示器的選擇方案一:數(shù)碼管顯示,數(shù)碼管按段數(shù)分為七段數(shù)碼管和八段數(shù)碼管,起驅(qū)動(dòng)方式分別為靜態(tài)驅(qū)動(dòng)和動(dòng)態(tài)驅(qū)動(dòng),靜態(tài)驅(qū)動(dòng)編程簡(jiǎn)單,顯示亮度高但是占用I/O端口多,在十幾應(yīng)用時(shí)必須增加譯碼器驅(qū)動(dòng)進(jìn)行驅(qū)動(dòng),增加了硬件電路的復(fù)雜性。動(dòng)態(tài)電路是最廣泛的顯示方式之一,其能夠節(jié)省大量的I/O端口,而且功耗低。針對(duì)數(shù)碼管,其顯示單調(diào)不具備數(shù)據(jù)的直觀性。方案二:LCD1602液晶顯示,具有字符發(fā)生器ROM可顯示192種字符(160個(gè)5′7點(diǎn)陣字符和32個(gè)5′10點(diǎn)陣字符)具有64個(gè)字節(jié)的自定義字符RAM,可自定義8個(gè)5′8點(diǎn)陣字符或四個(gè)5′11點(diǎn)陣字符。具有80個(gè)字節(jié)的RAM,標(biāo)準(zhǔn)的接口特性,適配M6800系列MPU的操作時(shí)序。模塊結(jié)構(gòu)緊湊、輕巧、裝配容易,像素尺寸小,分辨率高。綜上,選擇LCD1602能夠把溫濕度很直觀的顯示出來(lái),能夠在設(shè)定閾值時(shí)更能簡(jiǎn)潔明了,所以選擇LCD1602為顯示元件。3、系統(tǒng)的硬件選擇及設(shè)計(jì)原理主要對(duì)所選擇元件的原理及應(yīng)用介紹和對(duì)本設(shè)計(jì)中各個(gè)單元的電路解析。3.1溫濕度傳感器SHT10溫濕度傳感器SHT10由Sensirion公司生產(chǎn),其產(chǎn)品具有無(wú)可比你的優(yōu)越性能。SHT10單芯片傳感器內(nèi)含有已校準(zhǔn)數(shù)字信號(hào)輸出的復(fù)合傳感器,它應(yīng)用專利的COMS過(guò)程微加工技術(shù)確保了產(chǎn)品具有極高的可靠性與卓越的長(zhǎng)期穩(wěn)定性。體積與火柴頭相近。它們不僅能準(zhǔn)確測(cè)量相對(duì)溫度,還能測(cè)量露點(diǎn)參數(shù)。廣泛應(yīng)用在數(shù)據(jù)采集器、變送器、自動(dòng)化過(guò)程控制、汽車行業(yè)、樓宇控制、暖通空調(diào)、電力機(jī)房、計(jì)量測(cè)試、醫(yī)藥業(yè)。實(shí)體圖如圖3.1所示。圖3.1SHT10傳感器實(shí)體與接口圖3.1.1接口定義接口定義如表3.1所示。表3.1接口定義引腳名稱描述1GND接地2DATA串行數(shù)據(jù),雙向3SCK串行時(shí)鐘,輸入口4VDD電源NCNC必須為空SHT10的供電電壓范圍為2.4~5.5V,建議供電電壓為3.3V。在電源引腳(VDD,GND)之間須加一個(gè)100nF的電容,用以去耦濾波。SHT10的串行接口,在傳感器信號(hào)的讀取及電源損耗方面,都做了優(yōu)化處理。傳感器不能按照I2C協(xié)議編址,但是,如果I2C總線上沒(méi)有掛接別的元件,傳感器可以連接到I2C總線上,但單片機(jī)必須按照傳感器的協(xié)議工作。SCK用于微處理器與SHT10之間的通訊同步。由于接口包含了完全靜態(tài)邏輯,因而不存在最小SCK頻率。DATA引腳為三態(tài)結(jié)構(gòu),用于讀取傳感器數(shù)據(jù)。當(dāng)向傳感器發(fā)送命令時(shí),DATA在SCK上升沿有效且在SCK高電平時(shí)必須保持穩(wěn)定。DATA在SCK下降沿之后改變。為確保通訊安全,DATA的有效時(shí)間在SCK上升沿之前和下降沿之后應(yīng)該分別延長(zhǎng)至TSUandTHO當(dāng)從傳感器讀取數(shù)據(jù)時(shí),DATATV在SCK變低以后有效,且維持到下一個(gè)SCK的下降沿。為避免信號(hào)沖突,微處理器應(yīng)驅(qū)動(dòng)DATA在低電平。需要一個(gè)外部的上拉電阻(例如:10kΩ)將信號(hào)提拉至高電平。上拉電阻通常已包含在微處理器的I/O電路中。設(shè)計(jì)中使用SHT10智能傳感器作為溫濕度檢測(cè)的元件,參數(shù)采集模塊如圖3.2所示[3]。圖3.2溫濕度采集模塊3.1.2電路特性電氣特性,如能耗,高、低電平,輸入、輸出電壓等,都取決于電源。表3.2詳細(xì)解釋了SHT10的電氣特性,若沒(méi)有標(biāo)明,則表示供電電壓為5V。若想與傳感器獲得最佳通訊效果。表3.2SHT10直流特性.RP表示上拉電阻,IOL指低電平輸出電流參數(shù)條件最小典型最大單位供電電源DC102.43.35.5V供電電流測(cè)量狀態(tài)0.551mA平均值11228μA休眠狀態(tài)0.31.5μA低電平輸出電壓IOL<4mA0250mV高電平輸出電壓RP<25kΩ90%100%VDD低電平輸入電壓下降0%20%VDD高電平輸入電壓上升80%100%VDD焊盤上的輸入電流1μA輸出電流開(kāi)4mA三態(tài)(關(guān))1020μAVDD對(duì)GND的絕對(duì)最大值為+7V和-0.3V。如果傳感器工作在絕對(duì)最大值條件下時(shí)間過(guò)長(zhǎng),會(huì)影響傳感器的穩(wěn)定性(如:熱載流效應(yīng),氧化)。加重的DATA線由傳感器控制,普通的DATA線由單片機(jī)控制.。有效時(shí)間依據(jù)SCK的時(shí)序。數(shù)據(jù)讀取的有效時(shí)間為前一個(gè)切換的下降沿。如圖3.3所示。圖3.3SHT10時(shí)序圖3.1.3傳感器特點(diǎn)相對(duì)濕度和溫度一體測(cè)量精確露點(diǎn)測(cè)量全量程標(biāo)定,無(wú)需重新標(biāo)定即可互換使用兩線制數(shù)字接口(最簡(jiǎn)單的系統(tǒng)集成,較低的價(jià)格)高可靠性(工業(yè)CMOS工藝)優(yōu)化的長(zhǎng)期穩(wěn)定性基于請(qǐng)求式檢測(cè),因此低能耗具有濕度傳感器元件的自檢測(cè)能力傳感器元件加熱應(yīng)用,亦可獲得極高的精度和穩(wěn)定性全量程標(biāo)定3.1.4技術(shù)參數(shù)濕度測(cè)量范圍:0~100%RH濕度測(cè)量精度:±4.5%RH(20到80%RH)濕度測(cè)量復(fù)現(xiàn)性:±0.1%RH濕度測(cè)量分辨率:0.03%RH溫度測(cè)量范圍:-40~+123.8℃;溫度測(cè)量精度:±0.5℃在25℃時(shí);±0.9℃(0到40℃)溫度響應(yīng)時(shí)間:≤20秒溫度測(cè)量重復(fù)性:±0.1℃溫度測(cè)量分辨率:0.01℃其溫濕度特性曲線如圖3.4所示。圖3.4溫濕度特性曲線3.2單片機(jī)選擇與介紹本系統(tǒng)控制電路的核心器件采用的是美國(guó)ATMEL生產(chǎn)的AT89S52單片機(jī)屬于MCS-51系列。AT89S52實(shí)物如圖3.5所示。圖3.5單片機(jī)AT89S52實(shí)物圖3.2.1主要性能與MCS-51單片機(jī)產(chǎn)品兼容8K字節(jié)在系統(tǒng)可編程Flash存儲(chǔ)器1000次擦寫周期全靜態(tài)操作:0Hz~33Hz三級(jí)加密程序存儲(chǔ)器32個(gè)可編程I/O口線三個(gè)16位定時(shí)器/計(jì)數(shù)器八個(gè)中斷源全雙工UART串行通道低功耗空閑和掉電模式掉電后中斷可喚醒看門狗定時(shí)器雙數(shù)據(jù)指針掉電標(biāo)識(shí)符[4]3.2.2AT89S52介紹AT89S52是一種低功耗、高性能CMOS8位微控制器,具有8K在系統(tǒng)可編程Flash存儲(chǔ)器。使用Atmel公司高密度非易失性存儲(chǔ)器技術(shù)制造,與工業(yè)80C51產(chǎn)品指令和引腳完全兼容。片上Flash允許程序存儲(chǔ)器在系統(tǒng)可編程,亦適于常規(guī)編程器。在單芯片上,擁有靈巧的8位CPU和在系統(tǒng)可編程Flash,使AT89S52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。AT89S52具有以下標(biāo)準(zhǔn)功能:8k字節(jié)Flash,256字節(jié)RAM,32位I/O口線,看門狗定時(shí)器,2個(gè)數(shù)據(jù)指針,三個(gè)16位定時(shí)器/計(jì)數(shù)器,一個(gè)6向量2級(jí)中斷結(jié)構(gòu),全雙工串行口,片內(nèi)晶振及時(shí)鐘電路。另外,AT89S52可降至0Hz靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,CPU停止工作,允許RAM、定時(shí)器/計(jì)數(shù)器、串口、中斷繼續(xù)工作。掉電保護(hù)方式下,RAM內(nèi)容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停止,直到下一個(gè)中斷或硬件復(fù)位為止[4]。本設(shè)計(jì)電路中AT89S52單片機(jī)的電路圖如圖3.6所示。圖3.6AT89S52框圖3.2.3腳口介紹8位微控制器8K字節(jié)在系統(tǒng)可編程FlashAT89S52。P0口:P0口是一個(gè)8位漏極開(kāi)路的雙向I/O口。作為輸出口,每位能驅(qū)動(dòng)8個(gè)TTL邏輯電平。對(duì)P0端口寫“1”時(shí),引腳用作高阻抗輸入。當(dāng)訪問(wèn)外部程序和數(shù)據(jù)存儲(chǔ)器時(shí),P0口也被作為低8位地址/數(shù)據(jù)復(fù)用。在這種模式下,P0不具有內(nèi)部上拉電阻。在flash編程時(shí),P0口也用來(lái)接收指令字節(jié);在程序校驗(yàn)時(shí),輸出指令字節(jié)。程序校驗(yàn)時(shí),需要外部上拉電阻。P1口:P1口是一個(gè)具有內(nèi)部上拉電阻8位雙向I/O口,p1輸出緩沖器能驅(qū)動(dòng)4個(gè)TTL邏輯電平。P1端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。此外,P1.0和P1.1分別作定時(shí)器/計(jì)數(shù)器2的外部計(jì)數(shù)輸入(P1.0/T2)和定時(shí)器/計(jì)數(shù)器2的觸發(fā)輸入(P1.1/T2EX)。在flash編程和校驗(yàn)時(shí),P1口接收低8位地址字節(jié)。引腳號(hào)第二功能:P1.0T2(定時(shí)器/計(jì)數(shù)器T2的外部計(jì)數(shù)輸入),時(shí)鐘輸出。P1.1T2EX(定時(shí)器/計(jì)數(shù)器T2的捕捉/重載觸發(fā)信號(hào)和方向控制)。P1.5MOSI(在系統(tǒng)編程用)P1.6MISO(在系統(tǒng)編程用)P1.7SCK(在系統(tǒng)編程用)P2口:P2口是一個(gè)具有內(nèi)部上拉電阻的8位雙向I/O口,P2輸出緩沖器能驅(qū)動(dòng)4個(gè)TTL邏輯電平。對(duì)P2端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。在訪問(wèn)外部程序存儲(chǔ)器或用16位地址讀取外部數(shù)據(jù)存儲(chǔ)器(例如執(zhí)行MOVX@DPTR)時(shí),P2口送出高八位地址。在這種應(yīng)用中,P2口使用很強(qiáng)的內(nèi)部上拉發(fā)送1。在使用8位地址(如MOVX@RI)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),P2口輸出P2鎖存器的內(nèi)容。在flash編程和校驗(yàn)時(shí),P2口也接收高8位地址字節(jié)和一些控制信號(hào)。P3口:P3口是一個(gè)具有內(nèi)部上拉電阻的8位雙向I/O口,p3輸出緩沖器能驅(qū)動(dòng)4個(gè)TTL邏輯電平。對(duì)P3端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,即P3口輸出電流(IIL)。P3口亦作為AT89S52特殊功能(第二功能)使用,如下表3.3所示。在flash編程和校驗(yàn)時(shí),P3口也接收一些控制信號(hào)。表3.3P3口引腳與第二功能端口引腳第二功能P3.0RXD(串行輸入口)P3.1TXD(串行輸出口)P3.2INTO(外中斷0)P3.3INT1(外中斷1)P3.4TO(定時(shí)/計(jì)數(shù)器0)P3.5T1(定時(shí)/計(jì)數(shù)器1)P3.6WR(外部數(shù)據(jù)存儲(chǔ)器寫選通)P3.7RD(外部數(shù)據(jù)存儲(chǔ)器讀選通)此外,P3口還接收一些用于FLASH閃存編程和程序校驗(yàn)的控制信號(hào)。RST——復(fù)位輸入。當(dāng)振蕩器工作時(shí),RST引腳出現(xiàn)兩個(gè)機(jī)器周期以上高電平將是單片機(jī)復(fù)位。ALE/PROG——當(dāng)訪問(wèn)外部程序存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器時(shí),ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低8位字節(jié)。一般情況下,ALE仍以時(shí)鐘振蕩頻率的1/6輸出固定的脈沖信號(hào),因此它可對(duì)外輸出時(shí)鐘或用于定時(shí)目的。要注意的是:每當(dāng)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí)將跳過(guò)一個(gè)ALE脈沖。對(duì)FLASH存儲(chǔ)器編程期間,該引腳還用于輸入編程脈沖(PROG)。如有必要,可通過(guò)對(duì)特殊功能寄存器(SFR)區(qū)中的8EH單元的D0位置位,可禁止ALE操作。該位置位后,只有一條MOVX和MOVC指令才能將ALE激活。此外,該引腳會(huì)被微弱拉高,單片機(jī)執(zhí)行外部程序時(shí),應(yīng)設(shè)置ALE禁止位無(wú)效。PSEN——程序儲(chǔ)存允許(PSEN)輸出是外部程序存儲(chǔ)器的讀選通信號(hào),當(dāng)AT89S52由外部程序存儲(chǔ)器取指令(或數(shù)據(jù))時(shí),每個(gè)機(jī)器周期兩次PSEN有效,即輸出兩個(gè)脈沖,在此期間,當(dāng)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器,將跳過(guò)兩次PSEN信號(hào)。EA/VPP——外部訪問(wèn)允許,欲使CPU僅訪問(wèn)外部程序存儲(chǔ)器(地址為0000H-FFFFH),EA端必須保持低電平(接地)。需注意的是:如果加密位LB1被編程,復(fù)位時(shí)內(nèi)部會(huì)鎖存EA端狀態(tài)。如EA端為高電平(接Vcc端),CPU則執(zhí)行內(nèi)部程序存儲(chǔ)器的指令。FLASH存儲(chǔ)器編程時(shí),該引腳加上+12V的編程允許電源Vpp,當(dāng)然這必須是器件是使用12V編程電壓Vpp[5]。3.3復(fù)位電路RST引腳是單片機(jī)復(fù)位端,高電頻有效。在引腳端輸入至少連續(xù)兩個(gè)單片機(jī)周期的高電頻,單片機(jī)復(fù)位。使用時(shí),在引腳與VSS引腳之間接一個(gè)10KΩ的下拉電阻,與VCC引腳之間接一個(gè)約10μF的電解電容,即可保證上電自動(dòng)復(fù)位。本設(shè)計(jì)中復(fù)位電路如圖3.7所示[6]。圖3.7復(fù)位電路3.4晶振電路在單片機(jī)電路中晶振的作用非常大,結(jié)合單片機(jī)內(nèi)部的電路,產(chǎn)生單片機(jī)所必需的時(shí)鐘頻率,單片機(jī)的一切指令的執(zhí)行都是建立在晶振的基礎(chǔ)上。晶振利用一種特殊的晶體,在電能和機(jī)械能之間相互轉(zhuǎn)化產(chǎn)生共振,提供穩(wěn)定精確的單頻震蕩,為系統(tǒng)提供基本的時(shí)鐘信號(hào)。晶振元器件實(shí)物圖如圖3.8所示。圖3.8晶振實(shí)物圖C6、C7為負(fù)載電容,Y1為晶振,12MHz。設(shè)計(jì)中晶振電路如圖3.9所示[7]。圖3.9晶振電路3.5顯示電路本設(shè)計(jì)顯示部分采用字符型TC1602液晶顯示所測(cè)溫濕度值并且顯示控制界面。TC1602實(shí)物圖如圖3.10所示。LCD1602顯示器主要特點(diǎn):液晶顯示屏是以若干個(gè)5′8或5′11點(diǎn)陣塊組成的顯示字符群。每個(gè)點(diǎn)陣塊為一個(gè)字符位,字符間距和行距都為一個(gè)點(diǎn)的寬度。主控制驅(qū)動(dòng)電路為HD44780(HITACHI)及其他公司全兼容電路,如SED1278(SEIKOEPSON)、KS0066(SAMSUNG)、NJU6408(NERJAPANRADIO)。具有字符發(fā)生器ROM可顯示192種字符(160個(gè)5′7點(diǎn)陣字符和32個(gè)5′10點(diǎn)陣字符)具有64個(gè)字節(jié)的自定義字符RAM,可自定義8個(gè)5′8點(diǎn)陣字符或四個(gè)5′11點(diǎn)陣字符。具有80個(gè)字節(jié)的RAM,標(biāo)準(zhǔn)的接口特性,適配M6800系列MPU的操作時(shí)序。模塊結(jié)構(gòu)緊湊、輕巧、裝配容易,像素尺寸小,分辨率高。顏色分單色(黑白)、彩色兩種。為便于夜間觀察,可采用由LED或ELD器件構(gòu)成的背景光源。液晶顯示器屬于被動(dòng)發(fā)光型顯示器件,它本身不發(fā)光,只能反射或透射外界光線,因此環(huán)境亮度越高,顯示越清晰。其亮暗對(duì)比度可達(dá)100:1。單+5V電源供電,采用交流驅(qū)動(dòng)方式。圖3.10TC1602實(shí)物圖使用時(shí),可將P0與LCD的數(shù)據(jù)線相連,P2口與LCD的控制線相連,其中,TC1602第4腳RS為寄存器選擇,第5腳RW為讀寫信號(hào)線,第6腳E為使能端。第7~14腳:D0~D7為8位雙向數(shù)據(jù)線。這里要注意的是,為了布線方便,單片機(jī)端的D0~D7是接到LCD/602的D1~D0,正好相反,因此在編寫軟件時(shí)需要做處理,使讀取正確。LCD顯示電路如圖3.11所示[8]。圖3.11顯示電路3.6報(bào)警電路本設(shè)計(jì)采用的是聲光報(bào)警,設(shè)定報(bào)警的上下限值實(shí)現(xiàn)報(bào)警功能,使用單片機(jī)的中斷系統(tǒng)。根據(jù)單片機(jī)接收到的數(shù)據(jù)經(jīng)過(guò)處理后與該參數(shù)設(shè)定的上下限進(jìn)行比較,高于上限值(或低于下限值)則進(jìn)行報(bào)警,同時(shí)能進(jìn)行正常的顯示。報(bào)警電路中,以紅色LED和蜂鳴器構(gòu)成,在輸入溫濕度的上下限后,系統(tǒng)會(huì)進(jìn)行實(shí)時(shí)采樣,并判斷測(cè)試溫濕度與輸入溫濕度之間的差異,當(dāng)檢測(cè)出的溫濕度在設(shè)定的溫濕度上下限外就會(huì)報(bào)警,即紅色LED亮,同時(shí)蜂鳴器響。報(bào)警電路如圖3.12所示[8]。圖3.12報(bào)警電路3.7鍵盤設(shè)定模塊本設(shè)計(jì)可以直接設(shè)定溫濕度參數(shù)的上下限值,從而達(dá)到對(duì)溫濕度控制報(bào)警的功能[9]。按設(shè)置鍵出現(xiàn)設(shè)置界面,按確定鍵選擇需要設(shè)置的數(shù)字,上下鍵設(shè)置需要限定的溫濕度如圖3.13所示。圖3.13鍵盤設(shè)定模塊3.8穩(wěn)壓電路三端穩(wěn)壓集成電路LM7805來(lái)組成穩(wěn)壓電源所需的外圍元件極少,電路內(nèi)部還有過(guò)流、過(guò)熱及調(diào)整管的保護(hù)電路,使用起來(lái)可靠、方便,而且價(jià)格便宜。LM7805如圖3.14所示。圖3.14LM7805實(shí)物圖LM7805參數(shù)如表3.4所示。表3.4LM7805參數(shù)本系統(tǒng)所有芯片都需要+5V的工作電壓,而干電池只能提供的電壓為1.5V的倍數(shù)的電壓,并且隨著使用時(shí)間的延長(zhǎng),其電壓會(huì)逐漸下。本電路是一個(gè)輸出正5V直流電壓的穩(wěn)壓電源電路。IC采用集成穩(wěn)壓器7805,電容分別為輸入端和輸出端濾波電容,R3為負(fù)載電阻,D1為工作指示燈,POWER為供電電源,電壓范圍6-15V直流。當(dāng)輸出電較大時(shí),7805應(yīng)配上散熱板。穩(wěn)壓電路如圖3.15所示[10]。圖3.15穩(wěn)壓電路圖4、軟件設(shè)計(jì)整個(gè)系統(tǒng)的功能是由硬件電路配合軟件程序來(lái)實(shí)現(xiàn)的,當(dāng)硬件基本定型的時(shí)候軟件也基本定下拉了,從軟件的功能不同,可以分為兩的類:一是主程序,它是整個(gè)軟件的核心,專門用來(lái)協(xié)調(diào)各個(gè)執(zhí)行模塊和操作者的聯(lián)系。二是子程序,它是用來(lái)完成各種實(shí)質(zhì)性的工作的,如測(cè)量、計(jì)算、顯示、通訊等。每一個(gè)執(zhí)行軟件就是一個(gè)小的執(zhí)行模塊,這里將每一個(gè)模塊一一列出來(lái),并為每個(gè)執(zhí)行模塊進(jìn)行功能定義和接口定義。各執(zhí)行模塊規(guī)劃好以后,就可以規(guī)劃監(jiān)控軟件了。首先要根據(jù)系統(tǒng)的總體功能選擇一種最合適的主程序結(jié)構(gòu),然后根據(jù)實(shí)時(shí)性的條件,合理安排監(jiān)控軟件和執(zhí)行軟件之間的調(diào)度關(guān)系。4.1主程序模塊主程序主要完成硬件初始化,子程序調(diào)用等功能[11]。在主程序中,對(duì)溫濕度傳感器,LCD1602液晶顯示器的初始化,同時(shí)調(diào)用傳感器數(shù)據(jù),進(jìn)行顯示,之后進(jìn)行閾值判斷并啟動(dòng)報(bào)警裝置。開(kāi)始開(kāi)始1602與SHT10初始化溫濕度采集子程序溫濕度處理子程序讀取成功溫濕度數(shù)據(jù)是否超限聲光報(bào)警顯示溫濕度是圖4.1主程序模塊4.2SHT10初始化流程該流程主要對(duì)傳感器的初始化進(jìn)行設(shè)計(jì),流程圖如圖4.2所示[12]。SHT10初始化SHT10初始化DQ置1DQ置1D0清零,發(fā)復(fù)位脈沖 D0清零,發(fā)復(fù)位脈沖延時(shí)600us延時(shí)600usDQ置1DQ置1等待50us等待50us讀入DQ的狀態(tài)讀入DQ的狀態(tài)等待200us等待200usDQ置1DQ置1初始化結(jié)束初始化結(jié)束圖4.2SHT10初始化流程圖4.3LCD初始模塊LCD上電時(shí),都必須按照一定的時(shí)序?qū)CD進(jìn)行初始化操作,主要任務(wù)是設(shè)置LCD的工作方式,顯示狀態(tài),清屏,輸入方式,光標(biāo)位置等。LCD初始化如圖4.3所示[13]。功能設(shè)置命令功能設(shè)置命令調(diào)用寫入指令到LCD子程序開(kāi)始子程序返回調(diào)用寫入指令到LCD子程調(diào)用寫入指令到LCD子程設(shè)置顯示狀態(tài)清屏設(shè)定工作方式調(diào)用寫入指令到LCD子程設(shè)置輸入方式圖4.3LCD1602初始化流程圖5、調(diào)試在此部分介紹了對(duì)設(shè)計(jì)系統(tǒng)的軟件調(diào)試和硬件調(diào)試。5.1軟件調(diào)試軟件調(diào)試主要使用Proteus軟件和KeilC51軟件。在軟件調(diào)試中,首先在Proteusz中繪制電路圖,并設(shè)置各元器件的參數(shù)。然后在KeilC51軟件編寫程序,并編譯后輸入PROTEUS中進(jìn)行仿真。5.1.1Proteus軟件Proteus軟件是英國(guó)Labcenterelectronics公司出版的EDA工具軟件。Proteus軟件除了其具有和其它EDA工具軟件的一樣的原理布圖,還可以電路仿真。不止是對(duì)單片機(jī)的仿真還對(duì)其外圍器件進(jìn)行仿真。其特點(diǎn)是:實(shí)現(xiàn)了單片機(jī)仿真和SPICE電路仿真相結(jié)合。具有模擬電路仿真、數(shù)字電路仿真、單片機(jī)及其外圍電路組成的系統(tǒng)的仿真、RS232動(dòng)態(tài)仿真、I2C調(diào)試器、SPI調(diào)試器、鍵盤和LCD系統(tǒng)仿真的功能;有各種虛擬儀器,如示波器、邏輯分析儀、信號(hào)發(fā)生器等。支持主流單片機(jī)系統(tǒng)的仿真。如68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各種外圍芯片。提供軟件調(diào)試功能。在硬件仿真系統(tǒng)中具有全速、單步、設(shè)置斷點(diǎn)等調(diào)試功能,同時(shí)可以觀察各個(gè)變量、寄存器等的當(dāng)前狀態(tài),因此在改軟件仿真系統(tǒng)中,也必須具有這些功能;同時(shí)支持第三方的軟件編譯和調(diào)試環(huán)境,如KeilC51uVision3等軟件。支持大量的外圍芯片和存儲(chǔ)器,具有強(qiáng)大的原理圖繪制功能??傊?,該軟件是一款集單片機(jī)和SPICE分析于一身的仿真軟件,功能極其強(qiáng)大。運(yùn)行Proteus軟件出現(xiàn)以下窗口。如圖5.1所示圖5.1Proteus原理圖編輯窗口點(diǎn)擊P(元件選擇按鍵),填寫元件名稱,選擇所需要的元件,對(duì)于本電路我先添加主電路元件,然后在添加子電路元件,完成后連線,對(duì)于不便連接的元件節(jié)點(diǎn),可以采用總線和網(wǎng)絡(luò)標(biāo)號(hào)的形式。完成后保存,電路圖如圖5.2所示[15]。圖5.2仿真電路圖5.1.2KeilC51軟件KeilC51軟件是KeilSoftware公司推出的uVision3,是一款可用于多種8051MCU的集成開(kāi)發(fā)環(huán)境(IDE),該IDE同時(shí)也是PK51及其它開(kāi)發(fā)套件的一個(gè)重要組件。除增加了源代碼、功能導(dǎo)航器、模板編輯以及改進(jìn)的搜索功能外,提供了一個(gè)配置向?qū)Чδ埽铀倭藛?dòng)代碼和配置文件的生成。此外其內(nèi)置的仿真器可模擬目標(biāo)MCU,包括指令集、片上外圍設(shè)備及外部信號(hào)等。其提供邏輯分析器,可監(jiān)控基于MCUI/O引腳和外設(shè)狀態(tài)變化下的程序變量。編輯的C或匯編文件,分別由C51及A51編譯器編譯生成目標(biāo)文件(.OBJ)。目標(biāo)文件可由LIB51創(chuàng)建生成庫(kù)文件,也可以與庫(kù)文件一起經(jīng)L51連接定位生成絕對(duì)目標(biāo)文件(.ABS)。ABS文件由OH51轉(zhuǎn)換成標(biāo)準(zhǔn)的HEX文件,以供調(diào)試器使用進(jìn)行源代碼調(diào)試,也可由仿真器使用直接對(duì)目標(biāo)板進(jìn)行調(diào)試,也可以直接寫入程序存貯器如EPROM中。注意晶振的頻率,默認(rèn)的是11.0592MHz,可以根據(jù)需要修改。調(diào)試時(shí)注意PC機(jī)與仿真器之間始終保持通信聯(lián)絡(luò),導(dǎo)致獨(dú)立Keil仿真器上一個(gè)指示數(shù)據(jù)接收的LED不斷閃亮。使用KeilC51時(shí),打開(kāi)界面,并非即刻能夠編輯程序的窗口,需要新建文件和設(shè)置,其步驟如下:打開(kāi)Keil的操作界面,在“Project”中選擇“NewuVisionProject…”新建一個(gè)文件,并命名(注意此時(shí)命名時(shí)不需要加后綴),如“溫濕度”即可,確定后會(huì)彈出選擇單片機(jī)的窗口。在相應(yīng)的產(chǎn)品里選擇所需要的單片機(jī)型號(hào),本設(shè)計(jì)所用的單片機(jī)是AtmelAT89S52,則在相應(yīng)的欄目里選中。然后接下來(lái)的窗口選擇“是”,然后新建,在頁(yè)面里面編輯程序,命名,要注意的是這次命名需要加后綴,如“溫濕度.c”。在主窗口側(cè)邊欄找到“Target1”,右擊其子標(biāo)題欄“SourceGroup1”選擇“AddFilestoGroup‘SourceGroup1’”。選擇保存的“溫濕度.c”文件添加,并在下拉單點(diǎn)擊打開(kāi),此時(shí),編譯開(kāi)始,指示燈亮。順序編譯,若出現(xiàn)錯(cuò)誤,編譯窗口下會(huì)出現(xiàn)錯(cuò)誤提示,雙擊錯(cuò)誤提示,則插入符號(hào)將出現(xiàn)在有錯(cuò)的地方,根據(jù)提示對(duì)程序進(jìn)行修改,保存,再編譯至無(wú)錯(cuò),否則無(wú)法生成“HEX”格式。在主菜單欄里選擇“Project”按出下拉單,選擇“OptionsforTarget‘Target1’”,在該窗口下,將晶振的頻率(Xtel(MHz))設(shè)置為12MHz,然后選擇“Output”在“CreateHEXFile”前面打鉤,OK。在繼續(xù)編譯后出現(xiàn)“createhexfilefrom…”,編譯完成,此時(shí)文件就可以被單片機(jī)識(shí)別應(yīng)用,導(dǎo)入即可。圖5.3KeilC51軟件打開(kāi)界面5.1.3仿真打開(kāi)用Proteus軟件編輯好的電路圖,雙擊單片機(jī)導(dǎo)入程序,如圖5.4所示。圖5.4程序?qū)虢缑鎸?dǎo)入程序仿真后,如圖5.5所示,其結(jié)果顯示編輯的程序,以及電路圖符合設(shè)計(jì)要求。檢測(cè)精度也在范圍之內(nèi)。圖5.5仿真結(jié)果圖5.2根據(jù)原理圖焊接電路板按照設(shè)計(jì)的電路圖焊接電路板,原理圖如圖5.6a和圖5.6b。焊接時(shí)要牢記注意點(diǎn),短路、虛焊都不要出現(xiàn),在焊接每一次完成后都要認(rèn)真檢查有沒(méi)有出現(xiàn)錯(cuò)誤,避免在總體的焊接完畢后,出現(xiàn)不知所以的問(wèn)題。所以在焊接時(shí)嚴(yán)格按照電路圖焊接。圖5.6a原理圖圖5.6b原理圖焊接完成后檢查電路板焊接情況,用萬(wàn)用表檢查電路是否存在短路、虛焊。檢查完畢確認(rèn)沒(méi)有問(wèn)題的情況下加電測(cè)試。實(shí)物電路板如圖5.7所示。圖5.7電路板實(shí)物圖5.3硬件調(diào)試5.3.1程序下載在程序下載過(guò)程中使用的是progisp下載器,該下載器支持所有AVR芯片的編程,主要用于下載AVR程序和ATM程序。下載器裝載單片機(jī)后與計(jì)算機(jī)連接,整理在Keil軟件里編譯好的程序,準(zhǔn)備完畢后就可以下載程序。打開(kāi)下載軟件Progisp,點(diǎn)擊菜單選擇“調(diào)入Flash(F)”,選擇需要下載的“HEX文件”,打開(kāi)文件,點(diǎn)擊軟件“自動(dòng)”按鍵,軟件就可以自動(dòng)把程序燒錄到單片機(jī)內(nèi)。提示下載成功,燒錄完畢。如圖5.8所示為單片機(jī)程序燒錄硬件。圖5.8程序下載器硬件5.3.2檢測(cè)顯示在此檢查無(wú)誤后,下載程序進(jìn)行調(diào)試。加電后,在一切正常的情況下,電源指示燈綠色亮,系統(tǒng)2秒的初始化后,LCD正確顯示溫濕度。如圖5.9所示,顯示的是溫度24.7℃,濕度是43.4%RH。圖5.9溫濕度顯示5.3.3控制顯示設(shè)置界面如圖5.10所示。T1、T2分別問(wèn)溫度的上下限,H1、H2分別為濕度的上下限。圖5.10系統(tǒng)設(shè)置顯示5.3.4溫度報(bào)警在溫濕度上下限的報(bào)警中,當(dāng)設(shè)置溫度上限在20℃時(shí),如圖5.11所示。圖5.11溫度設(shè)定上線實(shí)際溫度為25.2℃,高于設(shè)定的上限溫度,此時(shí)系統(tǒng)聲光報(bào)警,如圖5.12所示。圖5.12溫度報(bào)警5.3.5濕度報(bào)警在相對(duì)濕度閾值報(bào)警的設(shè)置中,當(dāng)把相對(duì)濕度上限設(shè)定為40%時(shí),如圖5.13所示。圖5.13初設(shè)定濕度上限實(shí)際相對(duì)濕度為44.2%,高于設(shè)定的上限濕度值,根據(jù)程序設(shè)定系統(tǒng)聲光報(bào)警如圖5.14所示。圖5.14關(guān)于濕度報(bào)警顯示圖6、小結(jié)在設(shè)計(jì)中,主要是以AT89S52單片機(jī)為核心的,對(duì)溫度和濕度的檢測(cè)與控制智能化進(jìn)行了簡(jiǎn)單的設(shè)計(jì)與闡述。對(duì)MCS-51單片機(jī)系統(tǒng)的溫濕度檢測(cè)控制原理與結(jié)構(gòu)進(jìn)行了論述。本次設(shè)計(jì)可以說(shuō)是軟硬結(jié)合,又以硬件為主,軟件程序?yàn)檩o。給出了檢測(cè)系統(tǒng)與控制系統(tǒng)的各部分電路以及相對(duì)應(yīng)的程序。采用模塊化、層次化設(shè)計(jì)。用新型的智能集成溫溫度傳感器SHT10主要實(shí)現(xiàn)對(duì)溫度、濕度的檢測(cè),將溫度濕度信號(hào)通過(guò)傳感器進(jìn)行信號(hào)的采集并轉(zhuǎn)換成數(shù)字信號(hào),再運(yùn)用單片機(jī)AT89S52進(jìn)行數(shù)據(jù)的分析和處理,為顯示和報(bào)警電路提供信號(hào),實(shí)現(xiàn)對(duì)溫濕度的控制報(bào)警。報(bào)警系統(tǒng)根據(jù)設(shè)定報(bào)警的上下限值實(shí)現(xiàn)報(bào)警功能,顯示部分采用字符型TC1602液晶顯示所測(cè)溫濕度值。實(shí)驗(yàn)證明該設(shè)計(jì)系統(tǒng)實(shí)現(xiàn)了對(duì)環(huán)境溫濕度精確控制,達(dá)到了相應(yīng)的效果,系統(tǒng)電路簡(jiǎn)單、集成度高、工作穩(wěn)定、調(diào)試方便、檢測(cè)精度高,具有一定的實(shí)用價(jià)值。參考文獻(xiàn):沙占友.《智能化集成溫度傳感器原理與應(yīng)用》.機(jī)械工業(yè)出版社.2002.2-5.沙占友葛家怡馬洪濤等.《集成化智能傳感器原理與應(yīng)用》.電子工業(yè)出版社.2004.74-81.徐愛(ài)鈞.《智能化測(cè)量控制儀表原理與設(shè)計(jì)》.北京航空航天大學(xué)出版社.2007.114-126.ATMEL公司.《AT89S52的技術(shù)手冊(cè)》.周航慈.《單片機(jī)應(yīng)用程序設(shè)計(jì)技術(shù)》.北京航空航天大學(xué)出版社.2000.189-214.白靜.《數(shù)字電路與邏輯設(shè)計(jì)》.西安電子科技大學(xué)出版社.2009.37-56.何希才.《常用傳感器應(yīng)用電路的設(shè)計(jì)與實(shí)踐》.科學(xué)出版社.2007.165-170.何希才.《傳感器及其應(yīng)用》.國(guó)防工業(yè)出版社.2001.74-78.張敏.《基于單片機(jī)的多通道溫濕度檢測(cè)系統(tǒng)設(shè)計(jì)》.機(jī)電產(chǎn)品開(kāi)發(fā)與創(chuàng)新.2008-2(11):23-25.張軍彭宣戈.《嵌入式系統(tǒng)硬件抗干擾技術(shù)》.嵌入式網(wǎng)絡(luò)技術(shù)應(yīng)用.2006-16(2):31-36.龍澤明顧立志王桂蓮.《MCS-51單片機(jī)原理及工程應(yīng)用》.國(guó)防工業(yè)出版社.2005.42-47.劉仲娥張維新宋文洋.《敏感元器件與應(yīng)用》.青島海洋大學(xué)出版社.1993.46-125.唐穎.《單片機(jī)原理與應(yīng)用及C51程序設(shè)計(jì)》.北京大學(xué)出版社.2008.14-18.佟玲楊玉芬張本華.《智能溫濕度監(jiān)控系統(tǒng)的組成及發(fā)展》.農(nóng)機(jī)化研究.2006-39(3):24-26.ChengHuaruiDuHongqi.Automaticcontrolsystemoftemperatureandhumidityinstoreroom.2001-17(3):17-19.致謝回首自己走過(guò)的大學(xué)生活,心中倍感復(fù)雜,但是當(dāng)我寫完這篇畢業(yè)論文時(shí),隨如釋負(fù)重,卻又有些失落。首先我要感謝南京信息工程大學(xué)濱江學(xué)院能夠給我一個(gè)繼續(xù)深造的機(jī)會(huì)。誠(chéng)摯的感謝我的論文指導(dǎo)老師張加宏老師,他能在忙碌的教學(xué)生活中審查、修改我的論文。同時(shí)我也要感謝在這曾經(jīng)教育過(guò)我的老師,在你們一絲不茍,細(xì)致嚴(yán)謹(jǐn)?shù)淖黠L(fēng)中,我也漸漸受到你們的熏陶,他們精心的指導(dǎo)和嚴(yán)謹(jǐn)?shù)乃悸方o了我許多啟發(fā)。至此,我的論文在指導(dǎo)老師張加宏的悉心指導(dǎo)下完成的。導(dǎo)師淵博的專業(yè)知識(shí),嚴(yán)謹(jǐn)?shù)倪壿嬎季S,不僅僅教會(huì)我怎么去做,更是教會(huì)我怎么發(fā)現(xiàn)問(wèn)題和解決問(wèn)題,從選題,定題開(kāi)始,一直到最后論文反反復(fù)復(fù)的修改,張老師總是以專業(yè)的標(biāo)準(zhǔn)來(lái)嚴(yán)格要求我,在張老師深刻細(xì)致的指導(dǎo)下,我的研究思維和設(shè)計(jì)理念有了很大的提高,我的畢業(yè)論文能夠順利完成還是要對(duì)張老師說(shuō)聲謝謝。感謝大學(xué)生活中陪伴我的同學(xué)、朋友,在他們的陪同下,我收到了很多寶貴的簡(jiǎn)易和意見(jiàn),有了他們的陪伴,支持,我完成了這一設(shè)計(jì),他們是我大學(xué)生活的一部分,不僅改善了我生活學(xué)習(xí)習(xí)慣,更讓我知道了為人處事的道理。從論文選題到搜集資料,寫稿到初稿,再到反復(fù)修改,器件經(jīng)歷了喜悅、聒噪、彷徨和掙扎,寫論文的過(guò)程中心情太復(fù)雜,但是在自己不斷的探索努力及老師指導(dǎo)下,最終完成,心中不免有些成就感。也讓我對(duì)本專業(yè)的只是有了進(jìn)一步的了解,查閱書籍,翻看問(wèn)下,從朦朦朧朧到豁然開(kāi)朗,我感覺(jué)我在成長(zhǎng)。這次設(shè)計(jì)使我在今后的專業(yè)工作中打下了一定的基礎(chǔ)。因?yàn)楸救藢I(yè)技術(shù)水平有限,有不足之處還請(qǐng)閱讀者包含指點(diǎn)。最后我希望南京信息工程大學(xué)濱江學(xué)院越辦越好,也祝愿我的老師同學(xué)事業(yè)有成。機(jī)會(huì)永遠(yuǎn)在有準(zhǔn)備的人手中!MCU-basedtemperatureandhumiditytestingandcontrolsystemWangHeElectronicscienceandtechnologyBinjiangCollege,NanjingUniversityofInformationScienceandTechnology,Nanjing210044ABSTRACTTemperatureandhumidityistheimportantparameterinthelivingandproduction.ThisdesignisMCU-basedtemperatureandhumiditydetectionsystem,itadoptsmodularlayeringdesign,andusetemperatureandhumidityofnewintelligentsensorSHT10mainlyrealizationtotheexaminationoftemperatureandhumidity.Thetemperatureandhumiditysignalsarecollectedbysensorsandconvertthesignalintodigitalsignal,thenusetheAT89S52microcontrollerfordataanalysisandprocessing,providedforthedisplayandalarmsignalcircuit,toachievecontrolandalarmoftemperatureandhumidity.ReporttothepolicesystemaccordingtoenactmentthetopandbottomlimitreportingtothepolicebeworthrealizationtoreporttothepolicefunctionandshowpartadoptioncharacterlisttypetheTC1602LCDshowtemperatureandhumidity'svaluemeasured.Thesystemelectriccircuitissimple,highintegration,workstability,adjusttotryconvenience,highexaminationaccuracy,andhavedefinitelypracticalvalue.Keyword:Temperatureandhumidity;SHT10;MCU;AT89S52;Detection;Alarm附錄#include<reg51.h>#include<intrins.h>#include<absacc.h>#include<math.h>#include"1602.h"#include"sht10.h"#defineucharunsignedchar#defineuintunsignedint#defineKEY_CANCEL0x08#defineKEY_UP0x04#defineKEY_DOWN0x02#defineKEY_ENTER0x01//ucharxdatakey_lcd_val_tmp[12];//臨時(shí)保存用戶設(shè)置的數(shù)據(jù),當(dāng)用戶按ENTER鍵時(shí)寫入相應(yīng)寄存器//ucharcurrent_page=1;//記錄當(dāng)前正在顯示的頁(yè)面,初始狀態(tài)顯示第一頁(yè)ucharis_setting_system=0;//記錄系統(tǒng)是否處于設(shè)置系統(tǒng)狀態(tài)==1,默認(rèn)是顯示頁(yè)面狀態(tài)==0uintkey_value=0;//鍵值為零ucharkey_value_valid=0;//系統(tǒng)可以處理新鍵值ucharj;sbitBeep=P3^6;sbitLED_RED=P1^5;sbitLED_GREEN=P1^4;sbitKEY01=P2^0;sbitKEY02=P2^1;sbitKEY03=P2^2;sbitKEY04=P2^3;voiddelay(uint);voidInit();voiddelay_LCM(uint); //LCD延時(shí)子程序voidinitLCM(void); //LCD初始化子程序voidlcd_wait(void);//LCD檢測(cè)忙子程序voidWriteCommandLCM(ucharWCLCM,ucharBusyC);//寫指令到ICM子函數(shù)voidWriteDataLCM(ucharWDLCM);//寫數(shù)據(jù)到LCM子函數(shù)voidDisplayOneChar(ucharX,ucharY,ucharDData);//顯示指定坐標(biāo)的一個(gè)字符子函數(shù)voidDisplayListChar(ucharX,ucharY,ucharcode*DData); //顯示指定坐標(biāo)的一串字符子函數(shù)voidweishu1(floatm);voiddisplay(void);voidalarm(void);voidhandle_key_lcd1602(void);//處理按鍵與lcd1602顯示,while循環(huán)中直接使用 /**********mainfuncation************/voidmain(void){/*********************************/ uinttemp,humi;// uintTemp_CHA;// floathumi_val;// floattemp_val; //定義兩個(gè)共同體,一個(gè)用于濕度,一個(gè)用于溫度// floatdew_point; //用于記錄露點(diǎn)值 ucharerror; //用于檢驗(yàn)是否出現(xiàn)錯(cuò)誤 ucharchecksum;//CRC bittemp_f; unsignedcharHUMI,TEMP; HUMI=0X01; TEMP=0X02; temp_f=1;// ucharwendu[6];//用于記錄溫度// ucharshidu[6];//用于記錄濕度/***************

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論