基于AT89S52單片機(jī)倉庫溫度、濕度檢測系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)1_第1頁
基于AT89S52單片機(jī)倉庫溫度、濕度檢測系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)1_第2頁
基于AT89S52單片機(jī)倉庫溫度、濕度檢測系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)1_第3頁
基于AT89S52單片機(jī)倉庫溫度、濕度檢測系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)1_第4頁
基于AT89S52單片機(jī)倉庫溫度、濕度檢測系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)1_第5頁
已閱讀5頁,還剩29頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、基于at89s52單片機(jī)倉庫溫度、濕度檢測系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)基于at89s52單片機(jī)倉庫溫度、濕度檢測系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)摘 要本文從硬軟件兩個(gè)方面進(jìn)行了基于at89s52單片機(jī)溫度、濕度自動(dòng)檢測系統(tǒng)設(shè)計(jì)。系統(tǒng)硬件由控制電路、溫度采集電路、濕度采集、鍵盤和led顯示電路組成。軟件設(shè)計(jì)從設(shè)計(jì)思路、軟件系統(tǒng)框圖出發(fā),逐一分析各模塊程序算法的實(shí)現(xiàn),最終編寫出滿足任務(wù)需求的程序。系統(tǒng)基本上滿足了溫濕度檢測與報(bào)警的要求,具有超調(diào)量小,采樣值與設(shè)定值基本一致,操作簡單等優(yōu)點(diǎn)。關(guān)鍵詞:at89s52;led顯示;濕度自動(dòng)檢測系統(tǒng)design and implementation of warehouse temper

2、ature and humidity detection systemabstractthe paper introduces the design based on at89s52 scm temperature, humidity automatic detection system from hardware and software.hardware of system is consisted of control circuit, temperature, humidity acquisition circuit collection, keyboard and led displ

3、ay circuit component.the software design from the design idea, software system of block diagram, by analyzing the module program the realization of the algorithm, and finally writes a mission requirement to meet the program.the system basically meets the requirements of temperature and humidity dete

4、ction and alarm,and possesses advantages of small overshoots, samples values and basic value consistent, simple operation etc.key words:at89s52;led demonstrate;humidity automatic detection system目 錄1 緒論11.1 系統(tǒng)背景11.2國內(nèi)外研究狀況和相關(guān)領(lǐng)域研究成果11.3 溫濕度控制系統(tǒng)的設(shè)計(jì)意義21.4 溫濕度控制系統(tǒng)完成的功能22系統(tǒng)方案設(shè)計(jì)32.1 溫度檢測方案設(shè)計(jì)32.2系統(tǒng)總體方案設(shè)計(jì)43

5、 系統(tǒng)硬件及電路介紹53.1 單片機(jī)at89s52介紹53.2 溫濕度檢測電路73.3報(bào)警電路與led顯示電路83.4 鍵盤與繼電器電路93.5 時(shí)鐘與復(fù)位電路114 系統(tǒng)設(shè)計(jì)及實(shí)現(xiàn)124.1 系統(tǒng)硬件電路設(shè)計(jì)124.2 系統(tǒng)主程序方案124.3 鍵盤掃描程序流程圖125實(shí)物演示記錄15結(jié) 論17參考文獻(xiàn)18附錄19致 謝31倉庫溫濕度檢測系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)1 緒論1.1 系統(tǒng)背景 防潮、防霉是倉庫日常管理工作的重要注意項(xiàng)目,是倉庫管理質(zhì)量衡量的主要指標(biāo)。它對儲(chǔ)備物資的工作可靠性和使用壽命有很大影響。所以加強(qiáng)倉庫的溫度和濕度監(jiān)控是保證日常工作的順利進(jìn)行的關(guān)鍵內(nèi)容。但是一些傳統(tǒng)的方法是通過人工進(jìn)行檢

6、測,這種人為的測試方法費(fèi)時(shí)費(fèi)力、效率低,且測試出溫濕度誤差很大,有很多的不定因素。因此我們需要設(shè)計(jì)出一種造價(jià)低廉,使用簡單,測量準(zhǔn)確的檢測儀器。單片機(jī)以其集成度高、運(yùn)算速度快、體積小、運(yùn)行可靠、價(jià)格低廉等優(yōu)勢,在過程控制、數(shù)據(jù)采集、機(jī)電一體化、智能化儀表、家用電器以及網(wǎng)絡(luò)技術(shù)等方面得到了廣泛的應(yīng)用,特別是單片機(jī)嵌入式技術(shù)的開發(fā)與應(yīng)用,標(biāo)志著計(jì)算機(jī)發(fā)展史上又一個(gè)新的里程碑。作為計(jì)算機(jī)兩大發(fā)展方向之一的單片機(jī),以面向?qū)ο蟮膶?shí)時(shí)控制為己任,嵌入到如家用電器、汽車、機(jī)器人、儀器儀表等設(shè)備中,使其智能化。目前國內(nèi)外各大電氣公司,大的半導(dǎo)體廠商正在不斷的開發(fā)、使用單片機(jī),使其無論在控制能力,減小體積,降低

7、成本,還是開發(fā)環(huán)境的改善等方面,都得到空前迅速的發(fā)展。溫濕度檢測控制系統(tǒng)在工業(yè)生產(chǎn)、科學(xué)研究和人們的生活領(lǐng)域中,得到了廣泛應(yīng)用。在工業(yè)生產(chǎn)過程中,很多時(shí)候都需要對溫濕度進(jìn)行嚴(yán)格的監(jiān)控,以使得生產(chǎn)能夠順利的進(jìn)行,產(chǎn)品的質(zhì)量才能夠得到充分的保證。使用自動(dòng)溫度控制系統(tǒng)可以對生產(chǎn)環(huán)境的溫度進(jìn)行自動(dòng)控制,保證生產(chǎn)的自動(dòng)化、智能化能夠順利、安全進(jìn)行,從而提高企業(yè)的生產(chǎn)效率。溫濕度檢測系統(tǒng)應(yīng)用十分廣闊。1.2國內(nèi)外研究狀況和相關(guān)領(lǐng)域研究成果網(wǎng)絡(luò)通信技術(shù)的發(fā)展,使監(jiān)控系統(tǒng)廣泛應(yīng)用于工農(nóng)業(yè)生產(chǎn)等領(lǐng)域,因此,糧情檢測技術(shù)糧情檢測屬監(jiān)控系統(tǒng)范疇,近年來,由于計(jì)算機(jī)技術(shù)、超大規(guī)模集成電路技術(shù)和的研究在軟、硬件等方面都

8、有了一定的進(jìn)展。早期糧情監(jiān)測主要采用溫度計(jì)測量法,此方法是將溫度計(jì)放入一個(gè)特質(zhì)的插桿中,根據(jù)人的經(jīng)驗(yàn)查在糧堆里的幾個(gè)測溫點(diǎn),由管理人定期讀數(shù),以此來確定糧食溫度的高低,以便采取一些措施。這種方法雖然可用,但是因?yàn)闇囟扔?jì)的精確度及人為的讀數(shù)等原因,不但檢測慢,而且精度低,很容易引發(fā)局部糧溫過高發(fā)霉導(dǎo)致大面積糧食糧食損壞。隨著科學(xué)技術(shù)的發(fā)展,至80年代開始,一些倉庫采用電阻溫度傳感器、模數(shù)轉(zhuǎn)化器、報(bào)警裝置、采樣器組成的檢測系統(tǒng),可以對糧倉各個(gè)點(diǎn)進(jìn)行巡回檢測,檢測的精度和速度都大大提高,但是因?yàn)殡娮璧撵`敏度問題,導(dǎo)致系統(tǒng)的可靠性不夠理想 。到90年代,糧倉檢測系統(tǒng)有了很大的提高,系統(tǒng)采取了矩陣式布線

9、技術(shù),簡化了采集的線路,以半導(dǎo)體等器件作為傳感器;以串行傳輸方式為線路傳輸,從而減少了傳輸線根數(shù);采用單板機(jī)進(jìn)行數(shù)據(jù)處理,并采用各種手段來提高檢測速度和傳送速度,軟硬件的結(jié)合提高了檢測的可靠性和精度。但由于傳感器的線性度差,無法大面積推廣。最近幾年,隨著單片機(jī)技術(shù)的日益精湛及計(jì)算機(jī)的廣泛推廣應(yīng)用,糧倉的檢測越來越準(zhǔn)確,穩(wěn)定性也越來越高。高科技數(shù)字傳感器的廣泛應(yīng)用使得糧倉的檢測達(dá)到一個(gè)佳配置和最好的性價(jià)比。這樣的傳感器采用了微控制器最新技術(shù)和半導(dǎo)體集成電路,半導(dǎo)體溫度檢測、數(shù)據(jù)信號轉(zhuǎn)換。計(jì)算機(jī)接口等芯片都集成在一個(gè)管芯上。現(xiàn)在國內(nèi)出現(xiàn)了很多數(shù)字傳感的配套產(chǎn)品,如中繼器、接插器、中繼器、分線器等,

10、技術(shù)也相對成熟。1.3 溫濕度控制系統(tǒng)的設(shè)計(jì)意義隨著社會(huì)的發(fā)展,科技的進(jìn)步,以及測溫度、濕度儀器在各個(gè)領(lǐng)域的應(yīng)用,智能化已是現(xiàn)代溫度、濕度控制系統(tǒng)發(fā)展的主流方向。溫度、濕度測試控制系統(tǒng),控制對象是溫度、濕度。溫度、濕度控制在日常生活及工業(yè)領(lǐng)域應(yīng)用相當(dāng)廣泛,比如溫室、水池、發(fā)酵缸、電源等場所的溫度、濕度控制。而以往溫度、濕度控制是由人工完成的而且不夠重視,其實(shí)在很多場所溫度、濕度都需要監(jiān)控以防止發(fā)生意外。針對此問題,本系統(tǒng)設(shè)計(jì)的目的是實(shí)現(xiàn)一種可連續(xù)高精度的溫度、濕度控制系統(tǒng),它應(yīng)用廣泛,功能強(qiáng)大,小巧美觀,便于攜帶,是一款既實(shí)用又廉價(jià)的控制系統(tǒng)。1.4 溫濕度控制系統(tǒng)完成的功能根據(jù)設(shè)計(jì)要求確定了

11、系統(tǒng)的總體方案,整個(gè)系統(tǒng)由溫濕度傳感器、單片機(jī)、顯示模塊、鍵盤、報(bào)警器六部分組成10。認(rèn)為先輸入溫濕度的上下限到系統(tǒng)內(nèi),溫濕度檢測器把監(jiān)測值傳給單片機(jī),如監(jiān)測值超出范圍,則驅(qū)動(dòng)報(bào)警。本機(jī)實(shí)現(xiàn)的功能:1. 當(dāng)溫度或者濕度下限溫濕度,蜂鳴器報(bào)警;2. 當(dāng)溫度或者濕度上限溫濕度,蜂鳴器報(bào)警;3. 數(shù)碼管即時(shí)顯示溫度;4. 溫度:溫度可控制范圍在1525度;5. 濕度:濕度可控制范圍在25%75%;2系統(tǒng)方案設(shè)計(jì)2.1 溫度檢測方案設(shè)計(jì)2.1.1 方案一采用ad590,它的測溫范圍在-55+150之間,而且精確度高。m檔在溫度測試的范圍內(nèi)的非線性誤差是0.3。ad590可承受20v的反向電壓和44v正

12、向電壓。使用可靠,只需要直流電源就能維持正常工作,器件反接也不會(huì)損壞原器件。而且不用線性校正,使用也方便,接口也很簡單,有很強(qiáng)的抗干擾能力。ad590的信號可傳輸出百余米,但是實(shí)現(xiàn)ad590的系統(tǒng)設(shè)計(jì)需要要使用高精度的adc配合才能得到數(shù)據(jù),并且造價(jià)太高。2.1.2 方案二采用數(shù)字可編程溫度傳感器作為溫度檢測元件。數(shù)字可編程溫度傳感器可以直接讀出被測溫度值。不需要將溫度傳感器的輸出信號接到a/d轉(zhuǎn)換器上,減少了系統(tǒng)的硬件電路的成本和整個(gè)系統(tǒng)的體積??刂齐娐返暮诵钠骷怯擅绹鴄tmel公司生產(chǎn)的at89s52單片機(jī),屬于mcs-51系列。at89s52是一種低功耗、高性能的cmos8位微控制器,

13、具有8k在系統(tǒng)可編程flash存儲(chǔ)器,采用的工藝是atmel公司的高密度非易失存儲(chǔ)器技術(shù);片上flash允許程序存儲(chǔ)器在系統(tǒng)可編程,亦適于常規(guī)編程器;在單芯片上,擁有靈巧的8位cpu和在系統(tǒng)可編程flash,使得at89s52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案;價(jià)格低廉、性能可靠、抗干擾能力強(qiáng)。因此廣泛應(yīng)用于工業(yè)控制和嵌入式系統(tǒng)中1。at89s52是一種低功耗、高性能cmos8位微控制器,具有8k 在系統(tǒng)可編程flash 存儲(chǔ)器。使用atmel 公司高密度非易失性存儲(chǔ)器技術(shù)制造,與工業(yè)80c51 產(chǎn)品指令和引腳完全兼容。片上flash允許程序存儲(chǔ)器在系統(tǒng)可編程,亦適于常規(guī)編程

14、器。在單芯片上,擁有靈巧的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級中斷結(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ù)位為止。

15、2.1.3 方案論證方案一硬件電路復(fù)雜,需要設(shè)計(jì)a/d轉(zhuǎn)換電路,以及與其相關(guān)的編程,總體設(shè)計(jì)起來較困難,軟件、硬件調(diào)試復(fù)雜,硬件成本較高。而且器傳感器有以下缺點(diǎn):它靈敏度比較低,容易受到環(huán)境干擾信號的影響,也容易受到前置放大器溫度漂移的影響。所以總體來說,方案一在硬件、軟件上的成本都比較高,而且易受外部環(huán)境的影響,系統(tǒng)工作不穩(wěn)定。方案二由于采用的是具有一總線特點(diǎn)的溫度傳感器,所以電路連接簡單;而且該傳感器擁有強(qiáng)大的通信協(xié)議,同過幾個(gè)簡單的操作就可以實(shí)現(xiàn)傳感器與單片機(jī)的交互,包括復(fù)位傳感器、對傳感器讀寫數(shù)據(jù)、對傳感器寫命令。軟件、硬件易于調(diào)試,制作成本較低。也使得系統(tǒng)所測結(jié)果精度大大提高。經(jīng)過對

16、這兩種方案的比較,本設(shè)計(jì)決定采用方案二。2.2系統(tǒng)總體方案設(shè)計(jì)單片機(jī)是整個(gè)系統(tǒng)的控制中樞,它指揮外圍器件協(xié)調(diào)工作,從而完成特定的功能。硬件實(shí)現(xiàn)上采用模塊化設(shè)計(jì),每一模塊只實(shí)現(xiàn)一個(gè)特定功能,最后將模塊連接在一起。這樣可以減低設(shè)計(jì)的復(fù)雜性。本系統(tǒng)硬件設(shè)計(jì)包括溫濕度傳感器電路、led顯示電路、復(fù)位電路、蜂鳴器電路、晶振電路,如圖2-2:單片機(jī)溫濕度傳感器器溫濕度調(diào)節(jié)部分led溫濕度顯示部分獨(dú)立鍵盤蜂鳴器圖2-2 溫濕度監(jiān)控系統(tǒng)原理圖3 系統(tǒng)硬件及電路介紹3.1 單片機(jī)at89s52介紹at89s52是一種消耗低、性能高的cmos8位微控制器,具有8k flash 存儲(chǔ)器。使用atmel 公司高密度非

17、易失性存儲(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級中斷結(jié)構(gòu),全雙工串行口,片內(nèi)晶振及時(shí)鐘電路。另外,at89s52 可降至0hz 靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,cpu停止工作,允許ram、定時(shí)器/計(jì)數(shù)器

18、、串口、中斷繼續(xù)工作。掉電保護(hù)方式下,ram內(nèi)容被保存,振蕩器被凍結(jié),單片機(jī)停止一切工作,直到下一個(gè)硬件復(fù)位或中斷出現(xiàn)為止2。如表3-1。引腳功能:vcc :電源gnd: 接地p0口: p0口是一個(gè)8位漏極開路的雙向i/o口。作為輸出口,每位能驅(qū)動(dòng)8個(gè)ttl邏輯電平。對p0端口寫“1”時(shí),引腳用作高阻抗輸入。在程序校驗(yàn)時(shí),輸出指令字節(jié)。程序校驗(yàn)時(shí),需要外部上拉電阻在flash編程時(shí),p0口也用來接收指令字節(jié);在flash編程時(shí),p0口也用來接收指令字節(jié)。p1口3:p1 口是一個(gè)具有內(nèi)部上拉電阻的8 位雙向i/o 口,p1 輸出緩沖器能驅(qū)動(dòng)4 個(gè)ttl 邏輯電平。對p1 端口寫“1”時(shí),內(nèi)部上拉

19、電阻把端口拉高,此時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(iil)。表3-1 p1引腳功能引腳號第二功能p1.0t2(定時(shí)器/計(jì)數(shù)器t2的外部計(jì)數(shù)輸入),時(shí)鐘輸出p1.1t2ex(定時(shí)器/計(jì)數(shù)器t2的捕捉/重載觸發(fā)信號和方向控制)p1.5mosip1.6misop1.7sckp3口:p3 口是一個(gè)有內(nèi)部上拉電阻的8 位雙向i/o 口,p2 輸出緩沖器能驅(qū)動(dòng)4 個(gè)ttl 邏輯電平。對p3 端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(iil)。p3口亦作為at89s52

20、特殊功能(第二功能)使用,如下表所示。在flash編程和校驗(yàn)時(shí),p3口也接收一些控制信號。表3-2 p3引腳功能引腳號第二功能p3.0rxd(串行輸入)p3.1txd(串行輸出)p3.2into(外部中斷0)p3.3int1(外部中斷1)p3.4t0(定時(shí)器0外部輸入)p3.5t1定時(shí)器1外部輸入)p3.6wr(外部數(shù)據(jù)存儲(chǔ)器寫選通)p3.7rd(外部數(shù)據(jù)存儲(chǔ)器寫選通)rst:復(fù)位輸入。ale/proe:地址鎖存控制信號(ale)是訪問外部程序存儲(chǔ)器時(shí),鎖存低8 位地址的輸出脈沖。psen:外部程序存儲(chǔ)器選通信號(psen)是外部程序存儲(chǔ)器選通信號。ea/vpp:訪問外部程序存儲(chǔ)器控制信號。為

21、使能從0000h 到ffffh的外部程序存儲(chǔ)器讀取指令,ea必須接gnd。為了執(zhí)行內(nèi)部程序指令,ea應(yīng)該接vcc。在flash編程期間,ea也接收12伏vpp電壓。xtal1:振蕩器反相放大器和內(nèi)部時(shí)鐘發(fā)生電路的輸入端。xtal2:振蕩器反相放大器的輸出端。圖3-1 at89s523.2 溫濕度檢測電路ght11數(shù)字溫濕度傳感器是一款溫濕度復(fù)合傳感器,內(nèi)含有已校準(zhǔn)的數(shù)字信號輸出,它是專用的溫濕度傳感器,能確保極高的可靠性和長期的穩(wěn)定性。其包括一個(gè)ntc測溫元件和一個(gè)電阻式感濕元件,連接一個(gè)高性能的八位單片機(jī)。因此該產(chǎn)品具有品質(zhì)卓越、超快響應(yīng)、抗干擾能力強(qiáng)、性價(jià)比極高等優(yōu)點(diǎn)。1、 傳感器性能說明

22、,如表3-3:表3-3 傳感器性能參數(shù)條件mintypmax單位濕度分辨率111%rh8bit重復(fù)性1%rh精度254%rh0505%rh互換性可完全互換量程范圍03090%rh252090%rh502080%rh響應(yīng)時(shí)間1/e(63%)25,1m/s 空氣61015s遲滯1%rh長期穩(wěn)定性典型值1%rh/yr續(xù)表3-3溫度分辨率111888bit重復(fù)性1精度12量程范圍050響應(yīng)時(shí)間1/e(63%)630s2、 接口說明 建議連接線長度短于20米時(shí)用5k上拉電阻,大于20米時(shí)根據(jù)實(shí)際情況使用合適的上拉電阻 3、 電源引腳 dht11的供電電壓為 35.5v。傳感器上電后,要等待 1s 以越過

23、不穩(wěn)定狀態(tài)在此期間無需發(fā)送任何指令。電源引腳(vdd,gnd)之間可增加一個(gè)100nf 的電容,用以去耦濾波。 3.3報(bào)警電路與led顯示電路在生產(chǎn)控制的系統(tǒng)中,為了生產(chǎn)的安全,為了提醒操作人的及時(shí)處理,都設(shè)有緊急狀況報(bào)警系統(tǒng)。方法是通過計(jì)算機(jī)采集處理數(shù)據(jù)、數(shù)字濾波,變換之后,域之前設(shè)定的上下限值進(jìn)行比較,如果不在范圍內(nèi)則報(bào)警,正常則不予與報(bào)警,只做正常的顯示。同樣倉庫的溫度低高設(shè)定的溫度范圍內(nèi)時(shí)當(dāng)p3.4輸出高電平“1”時(shí),晶體管導(dǎo)通,壓電蜂鳴器兩端獲得約+5v電壓而鳴叫,出報(bào)警聲音;單片機(jī)的p3.6控制繼電器接通風(fēng)降溫設(shè)備,直到低于設(shè)定的最低溫度時(shí),p3.4輸出低電平時(shí),三極管截止,蜂鳴器

24、停止發(fā)聲8。如圖3-2:圖3-2 報(bào)警電路用led作為顯示模塊主要是因?yàn)樗母吡列?,此設(shè)計(jì)系統(tǒng)采用四位一體的數(shù)碼管顯示,該數(shù)碼管段選連在一起,具有四個(gè)獨(dú)立的位選端,在實(shí)現(xiàn)程序顯示時(shí)只需分別控制相應(yīng)的位選端動(dòng)態(tài)掃描即可,操作十分簡單方便。數(shù)碼管的操作分為靜態(tài)掃描和動(dòng)態(tài)掃描,本設(shè)計(jì)系統(tǒng)采用的是動(dòng)態(tài)掃描。單片機(jī)應(yīng)用中數(shù)碼管動(dòng)態(tài)顯示接口是最廣泛中的一個(gè)顯示方式,動(dòng)態(tài)驅(qū)動(dòng)是指將所有的數(shù)碼管的顯示比劃“a.b.c.d.e.f.dp”的同名端連接在一起,為每個(gè)數(shù)碼管的com公共極增加位選通控制電路,位選通由各自獨(dú)立的i/o線控制9。如圖3-3:圖3-3 顯示電路圖3.4 鍵盤與繼電器電路按鍵器輸入信號由八個(gè)

25、小按鍵控制與單片機(jī)的p1口連接,當(dāng)有按鍵按下的時(shí)候,就產(chǎn)生了有效地輸入信號。根據(jù)p1口按鍵輸入的高低電平,判斷是哪個(gè)按鍵按下,并執(zhí)行相應(yīng)的操作。鍵盤是人與微機(jī)打交道的主要設(shè)備,按鍵的讀取容易引起誤動(dòng)作??刹捎密浖ザ秳?dòng)的方法處理,軟件的觸點(diǎn)在閉合和斷開的時(shí)候會(huì)產(chǎn)生抖動(dòng),這時(shí)觸點(diǎn)的邏輯電平是不穩(wěn)定的,如不采取妥善處理的話,將引起按鍵命令錯(cuò)誤或重復(fù)執(zhí)行,在這里采用軟件延時(shí)的方法來避開抖動(dòng)5。如圖3-4:圖3-4 按鍵電路繼電器線圈需要流過較大的電流(約50ma)才能使繼電器吸合,一般的集成電路不能提供這樣大的電流,因此必須進(jìn)行擴(kuò)流,即驅(qū)動(dòng)。用pnp型三極管驅(qū)動(dòng)繼電器的電路圖,繼電器線圈作為發(fā)射極負(fù)

26、載而接到發(fā)射極和正電源之間。當(dāng)輸入為+vcc時(shí),三極管截止,繼電器線圈無電流流過,則繼電器釋放(off);相反,當(dāng)輸入為0時(shí),三極管飽和,繼電器線圈有相當(dāng)?shù)碾娏髁鬟^,則繼電器吸合(on)。當(dāng)輸入電壓由變0v為+vcc時(shí),三極管由飽和變?yōu)榻刂?,這樣繼電器電感線圈中的電流突然失去了流通通路,若無續(xù)流二極管d將在線圈兩端產(chǎn)生較大的反向電動(dòng)勢,極性為下正上負(fù),電壓值可達(dá)一百多伏,這個(gè)電壓加上電源電壓作用在三極管的集電極上足以損壞三極管6。故續(xù)流二極管d的作用是將這個(gè)反向電動(dòng)勢通過圖中箭頭所指方向放電,使三極管集電極對地的電壓最高不超過+vcc +0.7v。如圖3-5:圖3-5 繼電器電路3.5 時(shí)鐘與

27、復(fù)位電路at89s52可以由兩種方式產(chǎn)生時(shí)鐘,一種是內(nèi)部方式,一種外部方式。為了方便本設(shè)計(jì)采用內(nèi)部方式,利用芯片內(nèi)部的振蕩電路,其內(nèi)部有一個(gè)高增益反相放大器,放大器的輸入端和輸出端分別是引腳txal1和xtal2,此放大器和作為反饋的片外晶體諧振器構(gòu)成一個(gè)自激振蕩器7。如圖3-6:圖3-6 時(shí)鐘電路圖單片機(jī)復(fù)位電路就好比電腦的重啟部分,當(dāng)電腦在使用中出現(xiàn)死機(jī),按下重啟按鈕電腦內(nèi)部的程序從頭開始執(zhí)行。單片機(jī)也一樣,當(dāng)單片機(jī)系統(tǒng)在運(yùn)行中,受到環(huán)境干擾出現(xiàn)程序跑飛的時(shí)候,按下復(fù)位按鈕內(nèi)部的程序自動(dòng)從頭開始執(zhí)行。復(fù)位電路分為上電自動(dòng)復(fù)位和按鍵手動(dòng)復(fù)位。上電自動(dòng)復(fù)位是通過外部復(fù)位電路的電容充電實(shí)現(xiàn)的,按

28、鍵手動(dòng)復(fù)位是將復(fù)位端經(jīng)電阻與電源接通而實(shí)現(xiàn)的。如圖3-7:圖3-7 復(fù)位電路圖4 系統(tǒng)設(shè)計(jì)及實(shí)現(xiàn)4.1 系統(tǒng)硬件電路設(shè)計(jì)圖4-1首先要根據(jù)系統(tǒng)的總體功能和鍵盤設(shè)置選擇一種最合適的監(jiān)控程序結(jié)構(gòu),然后根據(jù)實(shí)時(shí)性的要求,合理地安排監(jiān)控軟件和各執(zhí)行模塊之間地調(diào)度關(guān)系。本部分詳細(xì)介紹了基于at89s52單片機(jī)的倉庫溫濕度采集控制系統(tǒng)的軟件設(shè)計(jì)。根據(jù)系統(tǒng)功能,可以將系統(tǒng)設(shè)計(jì)分為若干個(gè)子程序進(jìn)行設(shè)計(jì),如溫度采集子程序,濕度采集子程序,數(shù)據(jù)處理子程序、顯示子程序、執(zhí)行子程序。采用kiel uvision3集成編譯環(huán)境和c語言來進(jìn)行系統(tǒng)軟件的設(shè)計(jì)。本章從設(shè)計(jì)思路、軟件系統(tǒng)框圖出發(fā),先介紹整體的思路后,再逐一分析

29、各模塊程序算法的實(shí)現(xiàn),最終編寫出滿足任務(wù)需求的程序。如圖4-1:4.2 系統(tǒng)主程序方案系統(tǒng)開始工作,人工設(shè)定溫度和濕度的上限及下限。led顯示當(dāng)前的溫濕度,內(nèi)置單片機(jī)判斷當(dāng)前的溫濕度是否超過上限:如超過,則報(bào)警,聯(lián)通繼電器;如沒有,則哦判斷是否低于下限,低于下限則報(bào)警,聯(lián)通繼電器,正常范圍內(nèi),則不做處理。隔一段時(shí)間進(jìn)行一次溫濕度判斷。一次來保證溫度和濕度都在規(guī)定的范圍內(nèi),不在則會(huì)報(bào)警提示。如圖4-1: 圖4-1 系統(tǒng)流程圖4.3 鍵盤掃描程序流程圖鍵盤開始工作,判斷是否按下,如按下,延遲20ms,做第二次判斷,輸入完畢點(diǎn)開始鍵,啟動(dòng)系統(tǒng)工作,結(jié)束鍵盤掃描。如圖4-2:圖4-2 按鍵掃描流程圖5

30、實(shí)物演示記錄當(dāng)前溫度值為28攝氏度,濕度為59%。設(shè)定溫度20-33攝氏度,濕度50%-65%,此時(shí)儀器正常。如圖5-1圖5-1設(shè)定溫度范圍為30-40攝氏度,濕度為60%-70%。設(shè)置成功后應(yīng)顯示溫度低,濕度低,如圖5-2。設(shè)定溫度范圍為20-25攝氏度,濕度為40%-50%。設(shè)置成功后應(yīng)顯示溫度高,濕度高,如圖5-3。圖5-2圖5-3結(jié) 論回顧起此次單片機(jī)課程設(shè)計(jì),我仍感慨頗多,的確,從選題到定稿,從理論到實(shí)踐,在接近一個(gè)月的日子里,可以說得是苦多于甜,但是可以學(xué)到很多很多的的東西,同時(shí)不僅可以鞏固了以前所學(xué)過的知識,而且學(xué)到了很多在書本上所沒有學(xué)到過的知識。在設(shè)計(jì)的過程中遇到問題,可以說

31、得是困難重重,難免會(huì)遇到過各種各樣的問題,同時(shí)在設(shè)計(jì)的過程中發(fā)現(xiàn)了自己的不足之處,對以前所學(xué)過的知識理解得不夠深刻,掌握得不夠牢固,比如說不懂一些元器件的使用方法,對單片機(jī)匯編語言掌握得不好,通過這次課程設(shè)計(jì)之后,一定把以前所學(xué)過的知識重新溫故。本系統(tǒng)采用的單片機(jī)控制,實(shí)現(xiàn)對倉庫溫濕度的智能控制,單片機(jī)可完成室內(nèi)的數(shù)據(jù)采集、傳送預(yù)處理和控制任務(wù)。用單片機(jī)c語言編程,采用模塊化的結(jié)構(gòu)設(shè)計(jì),提高了可靠性和可擴(kuò)展性。把單片機(jī)控制理論與技術(shù)應(yīng)用在監(jiān)控中,能夠?qū)崿F(xiàn)智能化的控制要求。經(jīng)過一段時(shí)間的設(shè)計(jì)和實(shí)踐,本設(shè)計(jì)已經(jīng)完成了一個(gè)比較完整的溫濕度檢測與報(bào)警和繼電器系統(tǒng)。它可以通過鍵盤輸入溫濕度上限、下限值,

32、然后計(jì)算其上限和下限的中間值作為最適溫濕度值。不斷的采集溫濕度值,顯示溫濕度值,如果發(fā)現(xiàn)采集的溫濕度值高于上限值就通過蜂鳴器報(bào)警。如果采集的溫濕度值低于下限值,蜂鳴器報(bào)警的同時(shí)控制繼電器執(zhí)行相應(yīng)的動(dòng)作。如果并沒有超過上下限則不會(huì)報(bào)警。到此此溫濕度檢測系統(tǒng)已經(jīng)完成,這個(gè)系統(tǒng)在精度上還有待開發(fā),在按鍵操作和溫濕度實(shí)時(shí)監(jiān)測已經(jīng)完善。但是我想通過以后的學(xué)習(xí)和努力一定會(huì)有所提高,能夠做出更好的設(shè)計(jì)。所設(shè)計(jì)系統(tǒng)不僅適用于倉庫溫濕度環(huán)境的控制,對軟件進(jìn)行一定的擴(kuò)展后也可用于實(shí)驗(yàn)室、醫(yī)療室、儲(chǔ)藏保鮮、組織培養(yǎng)等生物環(huán)境和糧庫等環(huán)境的控制,具有較強(qiáng)的通用性和適應(yīng)性。雖然到現(xiàn)在為止,有些東西我還是不懂和不理解,但

33、我學(xué)會(huì)了面對問題,自己盡量解決,先分析,然后解決,一條道通不過然后嘗試著其它的方法,最終把問題克服掉。最重要的是鍛煉了和同學(xué)的協(xié)作完成任務(wù),提高了合作能力。我感覺這是這次設(shè)計(jì)過程中收獲最大的,這將是我未來的工作中 用之不盡寶貴的經(jīng)驗(yàn)。感謝那些幫助過我的同學(xué),感謝他們在自己做畢業(yè)設(shè)計(jì)的情況下還幫我找資料并對我的設(shè)計(jì)提出寶貴的意見。總體來說,經(jīng)過這次課程設(shè)計(jì),我受益良多,也得到了很多經(jīng)驗(yàn)。我明白了只有自己真正接觸嘗試了,才知道自己的真實(shí)水平。也使我看清了自己的知識水平與各種綜合能力,找出了自己的不足和差距。我將明確自己在今后要奮斗的目標(biāo)與方向,勇往直前。參考文獻(xiàn)1 張桂香,姚存治.基于atmega

34、128單片機(jī)的智能供電測控系統(tǒng)設(shè)計(jì)j.電力自動(dòng)化設(shè)備,2009,29(8):136-139. 2 李景魁.基于at89s52單片機(jī)的多路電能數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)j.制造業(yè)自動(dòng)化,2011,33(9):80-81,84.3 劉楊斌,劉其峰,華慧等.基于at89s52單片機(jī)的簡易數(shù)字示波器設(shè)計(jì)j.現(xiàn)代電子技術(shù),2011,34(14):138-140.4 陳立兵,樊瑜瑾,代杰等.基于at89s52單片機(jī)的溫度采集系統(tǒng)設(shè)計(jì)j.機(jī)械與電子,2011,(2):65-67. 5 李磊,李瑞鶴,朱騰等.基于at89s52圖文顯示設(shè)計(jì)與實(shí)現(xiàn)j.甘肅聯(lián)合大學(xué)學(xué)報(bào),自然科學(xué)版,2011,25(6):57-60.6 裴

35、美珍,單正婭.基于at89s52的空調(diào)溫度控制系統(tǒng)的設(shè)計(jì)j.微型機(jī)與應(yīng)用,2010,29(6):22-24.7 馬兆遠(yuǎn),王勇,馬志峰等.基于at89s52的智能報(bào)警系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)j.計(jì)算機(jī)技術(shù)與發(fā)展,2009,19(12):181-184. 8 郭志源.基于at89s52的遠(yuǎn)程報(bào)警和控制系統(tǒng)j.機(jī)械研究與應(yīng)用,2007,20(5):106-108.9 趙娜,趙剛,于珍珠等.基于51 單片機(jī)的溫度測量系統(tǒng)j.高等教育出版社,2009,5:50-72.10王昌明,孔德仁,何云峰.傳感器與測試技術(shù)m.北京航空航天大學(xué)出版社,2005.3:23-30.11秦玉新.單片機(jī)控制的數(shù)字溫度計(jì)j.數(shù)字技術(shù)與

36、應(yīng)用,2005.6:51-60.12臧玉萍姜寶林.數(shù)字溫度計(jì)ds1820及其應(yīng)用j.吉林工學(xué)院學(xué)報(bào)社,2001.2:33-40.附錄: 程序代碼#include /包含單片機(jī)寄存器的頭文件#include#include#define uchar unsigned char/宏定義#define uint unsigned int uchar code led=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,0xff,0xbf,0x7f;uchar code table=0x40,0

37、x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10;/帶小數(shù)點(diǎn)的編碼uchar data temp_read=0x00,0x00; uchar data display=0x00,0x00,0x00,0x00,0x00;sbit cs=p20; /將cs位定義為p3.4引腳sbit clk=p21; /將clk位定義為p1.0引腳sbit dio=p22; /將dio位定義為p1.1引腳sbit dq=p11;/18b20數(shù)據(jù)口sbit beep=p34;/蜂鳴器void display1(); /顯示函數(shù)聲明sbit k1=p15; /切換屏幕sbit k

38、2=p14;/加溫鍵sbit k3=p13;/減溫鍵sbit relay = p36; /繼電器控制口uchar num=0;uchar th=25,low=15;/初始溫度uchar sth=70;sl=30;/出事濕度uchar temp,a,b,c,temp1,time;uint time1,ya,temp2;/*延時(shí)子函數(shù)*/void delay(uint x)while(x-);void delayms(uint xms)uint i,j;for(i=xms;i0;i-)for(j=110;j0;j-);/*報(bào)警*/void beep()beep=0;delay(200);beep=

39、1;delay(200);/*18b20初始化*/uchar init18b20()uchar n;dq=1;delay(8);dq=0;delay(90);dq=1;delay(8);n=dq;delay(100);dq=1;return n;/*18b20寫函數(shù)*/void writeonechar(uchar dat)uchar i=0;for(i=0;i=1;delay(5); /*18b20讀函數(shù)*/uchar readonechar()uchar i=0,dat=0;for(i=0;i=1;dq=1;if(dq)dat|=0x80;delay(4);dq=1;return(dat)

40、;/*讀取溫度*/uchar readtemp()init18b20(); writeonechar(0xcc); /跳過rom writeonechar(0x44); /啟動(dòng)溫度轉(zhuǎn)換 delay(200); init18b20(); writeonechar(0xcc); /跳過rom writeonechar(0xbe); /讀取溫度 temp_read0=readonechar(); /讀取低八位 溫度值 temp_read1=readonechar(); /讀取高八位溫度值 temp_read0=(temp_read0&0xf0)4; temp_read1=(temp_read1)4;

41、 temp=(temp_read0|temp_read1); /低位與高位合并一個(gè)字節(jié) return temp;/返回讀取的溫度/*按鍵掃描*/void key()if(k1=0)delayms(10);if(k1=0)num+;if(num=6)num=0;while(!k1);if(num!=0)/*設(shè)置上限溫度*/if(num=1)if(k2=0)delayms(10);if(k2=0)th+;if(th=100) th=25; while(!k2);if(k3=0)delayms(10);if(k3=0)th-;if(th=0) th=25; while(!k3); /*設(shè)置下限溫度*

42、/if(num=2) if(k2=0) delayms(10);if(k2=0) low+;if(low=40)low=15;while(!k2); if(k3=0) delayms(10);if(k3=0)low-;if(low=0)low=15;while(!k3); /*設(shè)置上限濕度*/if(num=4)if(k2=0)delayms(10);if(k2=0)sth+;if(sth=100) sth=70; while(!k2);if(k3=0)delayms(10);if(k3=0)sth-;if(sth=0) sth=70; while(!k3); /*設(shè)置下限濕度*/if(num=

43、5)if(k2=0) delayms(10);if(k2=0) sl+;if(sl=60)sl=30;while(!k2); if(k3=0) delayms(10);if(k3=0)sl-;if(sl=0)sl=30;while(!k3); /*顯示當(dāng)前溫度*/void display1() a=temp1/10; b=temp1%10; p2=0xbf; p0=0xc6; delayms(10); p2=0xef; p0=leda; delayms(10); p2=0xf7; p0=ledb; delayms(10);/*設(shè)置上限溫度*/void display2()uchar c,d;c

44、=th/10;d=th%10;p2=0xbf; p0=0x89; delayms(10); p2=0xef; p0=ledc; delayms(10); p2=0xf7; p0=ledd; delayms(10);/*設(shè)置溫度下限*/void display3() uchar e,f;e=low/10;f=low%10;p2=0xbf; p0=0xc7; delayms(10);p2=0xef; p0=lede; delayms(10); p2=0xf7; p0=ledf; delayms(10);/*溫度超過或低于設(shè)定值報(bào)警*/void sound()if(temp1th) /判斷是否超過設(shè)

45、定值 beep();/超過設(shè)定值報(bào)警 if(temp1th) relay=0; /*濕度超出設(shè)定值報(bào)警*/void sound1()if(temp2sth|temp2sl) /判斷是否超過設(shè)定值 beep();/超過設(shè)定值報(bào)警 if(temp2sth) relay=0; /*顯示當(dāng)前濕度*/void display4(uint k)/*p2=0xbf;p0=leda/100;/p0=0xff;delay(5); p2=0xdf;p0=tablea%100;/p0=0xff;delay(5); */p2=0xef;p0=ledk%100/10;/p0=0xff;delayms(10);p2=0x

46、f7;p0=ledk%10;/p0=0xff;delayms(10);/*設(shè)置下限濕度*/void display5()uchar o,p;o=sth/10;p=sth%10;p2=0xbf;p0=0x89;delayms(5);p2=0xdf;p0=0x89;delayms(5);p2=0xf7;p0=ledp;delayms(5);p2=0xef;p0=ledo;delayms(5);/*設(shè)置濕度上限*/void display6()uchar l,i;i=sl/10;l=sl%10;p2=0xbf;p0=0xc7;delayms(5);p2=0xdf;p0=0xc7;delayms(5);p2=0xf7;p0=ledl;delayms(5);p2=0xef;p0=ledi;delayms(5);/*ad轉(zhuǎn)換*/unsigned char a_d() unsigned char i,dat; cs=1; /一個(gè)轉(zhuǎn)換周期開始 clk=0; /為

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論