智能火災(zāi)報(bào)警系統(tǒng)的研究_第1頁(yè)
智能火災(zāi)報(bào)警系統(tǒng)的研究_第2頁(yè)
智能火災(zāi)報(bào)警系統(tǒng)的研究_第3頁(yè)
智能火災(zāi)報(bào)警系統(tǒng)的研究_第4頁(yè)
智能火災(zāi)報(bào)警系統(tǒng)的研究_第5頁(yè)
已閱讀5頁(yè),還剩40頁(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)介

摘要智能火災(zāi)報(bào)警系統(tǒng)在現(xiàn)代智能建筑中起著極其重要的平安保障作用。隨著傳感器技術(shù)、無(wú)線通信技術(shù)、集成電路和微電子技術(shù)日臻完善,火災(zāi)自動(dòng)報(bào)警系統(tǒng)迎來(lái)了良好的開(kāi)展契機(jī)。本智能火災(zāi)報(bào)警系統(tǒng)設(shè)計(jì)采用STC89C52芯片,結(jié)合溫度傳感器DS18B20和MQ-2型煙霧傳感器以及模數(shù)轉(zhuǎn)換器ADC0832,在考慮經(jīng)濟(jì)適用的前提下,整合單片機(jī)與傳感器技術(shù),將火災(zāi)報(bào)警系統(tǒng)進(jìn)一步智能化。本設(shè)計(jì)還參加了常用的LCD1602液晶顯示屏顯示電路,可以及時(shí)顯示當(dāng)前溫度狀態(tài)和濃度狀態(tài),使得整個(gè)設(shè)計(jì)更加完整,更加靈活。該設(shè)計(jì)可應(yīng)用于個(gè)人建筑或公共場(chǎng)所,隨時(shí)對(duì)室內(nèi)溫度和煙霧濃度進(jìn)行智能監(jiān)控,也可以用于其他需要進(jìn)行火災(zāi)監(jiān)控的場(chǎng)合。關(guān)鍵詞:?jiǎn)纹瑱C(jī);A/D轉(zhuǎn)換器;傳感器;仿真AbstractIntelligentfirealarmsysteminthemodernintelligentbuildingplaysanextremelyimportantroleinsecurity.Asthesensortechnology,wirelesscommunicationtechnology,improvingintegratedcircuitandmicroelectronictechnology,automaticfirealarmsystemisthegoodopportunityofdevelopment.ThissmartfirealarmsystemwasimplementedbasedonSTC89C52chip.Withthecombi-nationoftemperaturesensorDS18B20andfogsensor,Icanendeavourtosaveourbudgetandtoensurethewholedevicecannormallyoperate.Henceweincorporatesingle-chipmachinestech-nologywithsensortechnologyinordertomakethisdevicemoreintelligent.Accordingtothecriterionofthecompletenessforconstructinganintactandflexiblesystem,IalsoaddupadigitalLEDdisplayingcircuit,whichcanimmediatelyunveiltemperatureandfogthicknessstatus.Thissmartdevicecanfinditsapplicationsnotonlywererestrictedunderthepersonalbuildingsandpublicareaswhichmaketheintelligentdetectionavailable,italsocanbeusedformonitoringotherhigh-conflagration-occurringfields.Keywords:Single-chipMachines,A/Dconvertor,Sensors,Simulation目錄摘要IAbstractII目錄II1緒論11.1選題背景及現(xiàn)狀11.2課題研究的目的及意義11.3智能火災(zāi)報(bào)警系統(tǒng)亟待解決的問(wèn)題以及要完成的功能22設(shè)計(jì)方案32.1智能火災(zāi)報(bào)警系統(tǒng)簡(jiǎn)介32.2系統(tǒng)設(shè)計(jì)思想32.3方案論證42.3.1單片機(jī)的選擇42.3.2模數(shù)轉(zhuǎn)換器的選擇52.3.3傳感器的選擇53硬件設(shè)置73.1單片機(jī)STC89C52的原理73.1.1STC89C52的引腳說(shuō)明73.1.2工作特性103.2時(shí)鐘電路143.3電源模塊143.4溫度采集局部153.4.1DS18B20數(shù)字集成溫度傳感器15測(cè)溫模塊電路原理圖193.5濃度采集模塊193.6A/D轉(zhuǎn)換器203.6.1A/D轉(zhuǎn)換器的主要參數(shù)203.6.2A/D轉(zhuǎn)換器與CPU的接口方法203.6.3A/D轉(zhuǎn)換器與CPU之間傳送數(shù)據(jù)的方法203.6.4A/D轉(zhuǎn)換芯片ADC0832及其接口213.7顯示模塊253.8報(bào)警模塊263.8.1蜂鳴器263.8.2發(fā)光二極管263.8.3報(bào)警模塊電路原理圖274軟件編程284.1主程序流程圖285系統(tǒng)仿真305.1仿真軟件—KeilC51簡(jiǎn)介305.2系統(tǒng)電路功能仿真305.3Keiil和Proteus對(duì)系統(tǒng)聯(lián)調(diào)315.4各狀態(tài)仿真結(jié)果顯示32參考文獻(xiàn)34結(jié)束語(yǔ)35致謝36附錄A系統(tǒng)硬件原理圖37附錄B源程序代碼381緒論1.1選題背景及現(xiàn)狀隨著社會(huì)經(jīng)濟(jì)的飛速開(kāi)展,城市化進(jìn)程的加快和人口的迅速增長(zhǎng),我國(guó)的火災(zāi)發(fā)生的次數(shù)、造成的損失呈上升趨勢(shì)。據(jù)統(tǒng)計(jì),在眾多災(zāi)難中,火災(zāi)造成的直接經(jīng)濟(jì)損失約為地震的五倍,僅次于干旱與洪澇,而且發(fā)生的頻度居各種災(zāi)害之首。智能化火災(zāi)報(bào)警系統(tǒng)已并非傳統(tǒng)意義上的簡(jiǎn)單的報(bào)警設(shè)備,而是融入了計(jì)算機(jī)技術(shù)、電子技術(shù)、自動(dòng)控制技術(shù)、傳感器的應(yīng)用等各領(lǐng)域知識(shí)。伴隨著科學(xué)技術(shù)的不斷進(jìn)步,火災(zāi)報(bào)警系統(tǒng)必將得到更快的開(kāi)展?;馂?zāi)自動(dòng)報(bào)警系統(tǒng)(FAS)起著十分重要的消防平安保障作用。常言道:“預(yù)防重于救火”,但預(yù)防卻無(wú)法完全防止火災(zāi)發(fā)生,如果火災(zāi)發(fā)生時(shí),能被及時(shí)發(fā)現(xiàn),并采取有效的控制措施,那么可將火災(zāi)造成的損失降到最低限度。隨著經(jīng)濟(jì)的開(kāi)展,火災(zāi)自動(dòng)報(bào)警設(shè)備的生產(chǎn)和應(yīng)用得到了較大的開(kāi)展,據(jù)調(diào)查研究,國(guó)內(nèi)的生產(chǎn)商達(dá)數(shù)百家,品牌近千個(gè),類型繁多。我國(guó)火災(zāi)報(bào)警系統(tǒng)起步較興旺國(guó)家晚幾十年,從上世紀(jì)70年代我國(guó)才開(kāi)始研制生產(chǎn)火災(zāi)報(bào)國(guó)內(nèi)主要廠家也多是模仿國(guó)外產(chǎn)品,或是引進(jìn)國(guó)外技術(shù)進(jìn)行生產(chǎn),警系統(tǒng)產(chǎn)品。進(jìn)入80年代后,沒(méi)有真正意義上的核心技術(shù),并且市場(chǎng)也剛剛開(kāi)始發(fā)育?;馂?zāi)報(bào)警產(chǎn)品真正開(kāi)展是在90年代以后,隨著政府逐漸開(kāi)放國(guó)門(mén),國(guó)外企業(yè)開(kāi)始大量進(jìn)入中國(guó)消防市場(chǎng),帶來(lái)先進(jìn)技術(shù)的同時(shí)也促進(jìn)了市場(chǎng)的成熟。這時(shí)期,我國(guó)生產(chǎn)火災(zāi)報(bào)警產(chǎn)品的企業(yè)也得到了快速開(kāi)展,局部企業(yè)進(jìn)行了合資生產(chǎn)、技術(shù)合作,取得了不菲的成績(jī),也造就了現(xiàn)今市場(chǎng)上許多有實(shí)力的商家,局部技術(shù)已接近或趕上了國(guó)際水平。我國(guó)的火災(zāi)自動(dòng)報(bào)警控制系統(tǒng)經(jīng)歷了從無(wú)到有、從簡(jiǎn)單到復(fù)雜的開(kāi)展過(guò)程,其智能化程度也越來(lái)越高。目前國(guó)產(chǎn)火災(zāi)自動(dòng)報(bào)警系統(tǒng)價(jià)格低廉,適合我國(guó)國(guó)情,但是火災(zāi)自動(dòng)報(bào)警系統(tǒng)由于多數(shù)沒(méi)有分布智能,可靠性低,且產(chǎn)品沒(méi)有形成系列化、品種不全,產(chǎn)品的外觀也較差,編程復(fù)雜,調(diào)試不方便,設(shè)備兼容性差。國(guó)外產(chǎn)品多數(shù)具有分布智能,可靠性高,產(chǎn)品具有系列化、品種,產(chǎn)品外觀美觀。缺點(diǎn)是多數(shù)操作維護(hù)不便,價(jià)格較高,設(shè)備兼容性差。智能火災(zāi)探測(cè)技術(shù)的宗旨就是要在火災(zāi)發(fā)生的早期,準(zhǔn)確地判斷火警、預(yù)報(bào)火警,從而保障人民的生命財(cái)產(chǎn)平安。1.2課題研究的目的及意義隨著我國(guó)經(jīng)濟(jì)建設(shè)的開(kāi)展,高層建筑成了城市的主要標(biāo)志,高層建筑中的各種通訊線路、動(dòng)力和照明線路、以及各種系統(tǒng)中的線路縱橫交錯(cuò),致使火災(zāi)的發(fā)生概率也在大幅度的增加。加之現(xiàn)代建筑的封閉性較強(qiáng),一旦發(fā)生火災(zāi),整個(gè)大樓就像一個(gè)大的火爐,給滅火帶來(lái)了巨大的難度,對(duì)火災(zāi)發(fā)生后及時(shí)的發(fā)現(xiàn)、及時(shí)控制的要求促使了火災(zāi)自動(dòng)報(bào)警產(chǎn)品的應(yīng)運(yùn)而生。加之現(xiàn)代計(jì)算機(jī)技術(shù)、通訊網(wǎng)絡(luò)技術(shù)和自動(dòng)控制技術(shù)的飛速開(kāi)展又為人類實(shí)現(xiàn)更加理想化的生活提供了可能。智能型火災(zāi)報(bào)警應(yīng)運(yùn)而生了,智能型火災(zāi)報(bào)警系統(tǒng)是一個(gè)集信號(hào)檢測(cè)、傳輸、處理和控制于一體的控制系統(tǒng),代表了當(dāng)前火災(zāi)報(bào)警系統(tǒng)的開(kāi)展方向。所以隨著科學(xué)技術(shù)的迅猛開(kāi)展以及國(guó)內(nèi)外經(jīng)濟(jì)的迅速增長(zhǎng),市場(chǎng)上迫切而需要一種容量大、性能優(yōu)越、可靠性高、便于安裝、使用和維護(hù)的智能型火災(zāi)報(bào)警控制系統(tǒng)。本文所研究的智能火災(zāi)報(bào)警系統(tǒng)主要實(shí)現(xiàn)以下功能:通過(guò)溫度傳感器和氣體傳感器對(duì)室內(nèi)溫度和煙霧濃度進(jìn)行實(shí)時(shí)監(jiān)測(cè),并將所得值與設(shè)定值相比擬。當(dāng)室內(nèi)溫度高于設(shè)定溫度以及煙霧濃度大于設(shè)定濃度時(shí)就接通電源開(kāi)始鳴聲報(bào)警,如果在設(shè)定時(shí)間內(nèi),以上測(cè)量值沒(méi)有降下來(lái)并且無(wú)人手動(dòng)關(guān)閉報(bào)警系統(tǒng),系統(tǒng)將會(huì)自動(dòng)通過(guò)網(wǎng)絡(luò)將信號(hào)傳送給火警消防部門(mén)。該功能主要通過(guò)單片機(jī)實(shí)現(xiàn),此智能火災(zāi)報(bào)警系統(tǒng)的出現(xiàn),既能保證室內(nèi)有人情況下的聲音報(bào)警,又能保證在室內(nèi)人員沒(méi)采取措施或者無(wú)人情況下的網(wǎng)絡(luò)報(bào)警,所以有較高的實(shí)用性。1.3智能火災(zāi)報(bào)警系統(tǒng)亟待解決的問(wèn)題以及要完成的功能目前國(guó)內(nèi)的智能建筑火災(zāi)自動(dòng)報(bào)警系統(tǒng)中仍存在許多問(wèn)題,主要問(wèn)題亟待解決:(1)火災(zāi)自動(dòng)報(bào)警系統(tǒng)存在誤報(bào)、漏報(bào)問(wèn)題。(2)火災(zāi)自動(dòng)報(bào)警系統(tǒng)的智能化水平有待提高。(3)無(wú)線通信技術(shù)有待進(jìn)一步開(kāi)展。(4)火災(zāi)自動(dòng)報(bào)警系統(tǒng)的應(yīng)用領(lǐng)域有待進(jìn)一步擴(kuò)大。本文所研究的智能火災(zāi)報(bào)警系統(tǒng)主要實(shí)現(xiàn)以下功能:(1)用戶可以根據(jù)實(shí)際情況修改溫度和煙霧濃度的預(yù)設(shè)值。(2)對(duì)監(jiān)測(cè)環(huán)境的溫度和煙霧濃度進(jìn)行實(shí)時(shí)監(jiān)控與顯示。(3)通過(guò)檢測(cè)到的溫度和煙霧濃度與預(yù)設(shè)值進(jìn)行比擬,系統(tǒng)自動(dòng)判別是否處于火災(zāi)狀態(tài)。(4)本設(shè)計(jì)采用的聲光報(bào)警,當(dāng)溫度和濃度超過(guò)預(yù)設(shè)值時(shí),即自動(dòng)報(bào)警。2設(shè)計(jì)方案2.1智能火災(zāi)報(bào)警系統(tǒng)簡(jiǎn)介火災(zāi)自動(dòng)報(bào)警系統(tǒng)屬于樓宇自動(dòng)化范疇,是當(dāng)前樓宇自動(dòng)化的一個(gè)主要構(gòu)成系統(tǒng)。其設(shè)置目的是為了防止和減少火災(zāi)危害,保護(hù)人身和財(cái)產(chǎn)平安?;馂?zāi)報(bào)警技術(shù)是預(yù)防火災(zāi)的一項(xiàng)根底工作,應(yīng)用范圍廣泛。報(bào)警早,損失少,不僅對(duì)發(fā)生火災(zāi)的單位和個(gè)人具有重要作用,而且對(duì)公安消防監(jiān)督機(jī)構(gòu)及時(shí)撲滅火災(zāi)、減少人員傷亡和財(cái)產(chǎn)損失同樣具有十分重要的現(xiàn)實(shí)意義?;馂?zāi)自動(dòng)報(bào)警系統(tǒng)由觸發(fā)器件、火災(zāi)報(bào)警裝置及具有其他輔助功能的裝置組成。隨著電子技術(shù)和計(jì)算機(jī)技術(shù)的迅速開(kāi)展,火災(zāi)自動(dòng)報(bào)警系統(tǒng)的結(jié)構(gòu)、形式越來(lái)越靈活多樣,很難精確劃分為幾種固定的模式?;馂?zāi)自動(dòng)報(bào)警技術(shù)趨向于智能化系統(tǒng),這種系統(tǒng)可組合成任何形式的火災(zāi)自動(dòng)報(bào)警網(wǎng)絡(luò)形式,既可以是區(qū)域報(bào)警系統(tǒng),又可以是集中報(bào)警系統(tǒng)或控制中心報(bào)警系統(tǒng)形式。所謂智能火災(zāi)自動(dòng)報(bào)警系統(tǒng),應(yīng)當(dāng)是:使用探測(cè)器件將火災(zāi)發(fā)生期間所產(chǎn)生的煙、溫、光等信號(hào)以模擬量形式,連同外界相關(guān)的環(huán)境參數(shù)一起傳送給報(bào)警器,報(bào)警器再根據(jù)獲取的數(shù)據(jù)及內(nèi)部存儲(chǔ)的大量數(shù)據(jù),利用火災(zāi)模型判據(jù)來(lái)判斷火災(zāi)是否存在,這樣的系統(tǒng)稱為智能火災(zāi)自動(dòng)報(bào)警系統(tǒng)。由于該系統(tǒng)為解決火災(zāi)報(bào)警系統(tǒng)存在的兩個(gè)難題〔誤報(bào)、漏報(bào)〕提供了新的方法和手段,并在處理火災(zāi)真?zhèn)畏矫姹憩F(xiàn)出明顯的有效性和創(chuàng)新性,這是火災(zāi)自動(dòng)報(bào)警系統(tǒng)在技術(shù)上的飛躍。從傳統(tǒng)型走向智能型,是國(guó)內(nèi)外火災(zāi)自動(dòng)報(bào)警系統(tǒng)技術(shù)開(kāi)展的必然趨勢(shì)。2.2系統(tǒng)設(shè)計(jì)思想因?yàn)橐竭_(dá)設(shè)計(jì)系統(tǒng)的簡(jiǎn)單、經(jīng)濟(jì)及實(shí)用性,所以本設(shè)計(jì)使用溫度傳感器、煙霧傳感器,結(jié)合STC89C52芯片,采用一只DS18B20溫度傳感器和MQ-2型煙霧傳感器,直接讀取被測(cè)溫度值和煙霧濃度值,之后通過(guò)軟件編程到達(dá)控制要求。本系統(tǒng)的電路設(shè)計(jì)方框圖如圖2.1所示,它由六局部組成:〔1〕時(shí)鐘電路;〔2〕電源局部,采用3節(jié)AA電池穩(wěn)定供電;〔3〕控制局部,主芯片采用單片機(jī)STC89C52;〔4〕顯示局部,采用LCD1602液晶顯示屏;〔5〕溫度采集局部,采用DS18B20溫度傳感器;〔6〕濃度采集局部,采用MQ-2型煙霧傳感器;〔7〕報(bào)警局部,采用蜂鳴器和發(fā)光二極管實(shí)現(xiàn)聲光報(bào)警。按鍵和顯示模塊按鍵和顯示模塊報(bào)警模塊STC89C52電源模塊時(shí)鐘電路溫度檢測(cè)模塊濃度檢測(cè)模塊圖2.1系統(tǒng)設(shè)計(jì)方框圖2.3方案論證單片機(jī)的選擇8031和STC89C52芯片特性的比照。8031片內(nèi)不帶程序存儲(chǔ)器ROM,使用時(shí)用戶需外接程序存儲(chǔ)器和一片邏輯電路373,外接的程序存儲(chǔ)器多為EPROM的2764系列。用戶假設(shè)想對(duì)寫(xiě)入到EPROM中的程序進(jìn)行修改,必須先用一種特殊的紫外線燈將其照射擦除,之后再可寫(xiě)入。寫(xiě)入到外接程序存儲(chǔ)器的程序代碼沒(méi)有什么保密性可言。由于上述類型的單片機(jī)應(yīng)用的早,影響很大,已成為事實(shí)上的工業(yè)標(biāo)準(zhǔn)。后來(lái)很多芯片廠商以各種方式與Intel公司合作,也推出了同類型的單片機(jī),如同一種單片機(jī)的多個(gè)版本一樣,雖都在不斷的改變制造工藝,但內(nèi)核卻一樣,也就是說(shuō)這類單片機(jī)指令系統(tǒng)完全兼容,絕大多數(shù)管腳也兼容;在使用上根本可以直接互換。我們統(tǒng)稱這些與8051內(nèi)核相同的單片機(jī)為“51系列單片機(jī)”。STC89C52是STC公司生產(chǎn)的一種低功耗、高性能CMOS8位微控制器,具有8K在系統(tǒng)可編程Flash存儲(chǔ)器。STC89C52使用經(jīng)典的MCS-51內(nèi)核,但做了很多的改良使得芯片具有傳統(tǒng)51單片機(jī)不具備的功能。在單芯片上,擁有靈巧的8位CPU和在系統(tǒng)可編程Flash,使得STC89C52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、有效的解決方案。具有以下標(biāo)準(zhǔn)功能:8k字節(jié)Flash,512字節(jié)RAM,32位I/O口線,看門(mén)狗定時(shí)器,內(nèi)置4KBEEPROM,MAX810復(fù)位電路,3個(gè)16位定時(shí)器/計(jì)數(shù)器,4個(gè)外部中斷,一個(gè)7向量4級(jí)中斷結(jié)構(gòu)〔兼容傳統(tǒng)51的5向量2級(jí)中斷結(jié)構(gòu)〕,全雙工串行口。另外STC89X52可降至0Hz靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,CPU停止工作,允許RAM、定時(shí)器/計(jì)數(shù)器、串口、中斷繼續(xù)工作。掉電保護(hù)方式下,RAM內(nèi)容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停止,直到下一個(gè)中斷或硬件復(fù)位為止。最高運(yùn)作頻率35MHz,6T/12T可選。由于內(nèi)部RAM的存在,可以減少I(mǎi)/O擴(kuò)展芯片、鎖存器及片外RAM等等,使整個(gè)設(shè)計(jì)顯得簡(jiǎn)單明了,所以在本設(shè)計(jì)中我選擇使用STC89C52。模數(shù)轉(zhuǎn)換器的選擇A/D轉(zhuǎn)換器的種類很多,就位數(shù)來(lái)分,有8位、10位、12位、16位等。位數(shù)越高,其分辨率也越高,但價(jià)格也越貴。而就其結(jié)構(gòu)而言,有單一的A/D轉(zhuǎn)換器,有內(nèi)含多路開(kāi)關(guān)的A/D轉(zhuǎn)換器。根據(jù)本設(shè)計(jì)的需要,我選擇的A/D轉(zhuǎn)換器是ADC0832。ADC0832是NS(NationalSemiconductor)公司生產(chǎn)的串行接口8位A/D轉(zhuǎn)換器,通過(guò)三線接口與單片機(jī)連接,功耗低,性能價(jià)格比擬高,適宜在袖珍式的智能儀器儀表中使用。ADC0832為8位分辨率A/D轉(zhuǎn)換芯片,其最高分辨可達(dá)256級(jí),可以適應(yīng)一般的模擬量轉(zhuǎn)換要求。芯片具有雙數(shù)據(jù)輸出可作為數(shù)據(jù)校驗(yàn),以減少數(shù)據(jù)誤差,轉(zhuǎn)換速度快且穩(wěn)定性能強(qiáng)。獨(dú)立的芯片使能輸入,使多器件連接和處理器控制變得更加方便。通過(guò)DI數(shù)據(jù)輸入端,可以輕易的實(shí)現(xiàn)通道功能的選擇。傳感器的選擇DS18B20溫度傳感器是美國(guó)DALLAS半導(dǎo)體公司最新推出的一種改良型智能溫度傳感器,與傳統(tǒng)的熱敏電阻等測(cè)溫元件相比,它能直接讀出被測(cè)溫度。這一局部主要完成對(duì)溫度信號(hào)的采集和轉(zhuǎn)換工作,由DS18B20數(shù)字溫度傳感器及其與單片機(jī)的接口局部組成。數(shù)字溫度傳感器DS18B20把采集到的溫度通過(guò)數(shù)據(jù)引腳傳到單片機(jī)的P1.0口,單片機(jī)接受溫度并存儲(chǔ)。半導(dǎo)體煙霧傳感器包括用氧化物半導(dǎo)體陶瓷材料作為敏感體制作的煙霧傳感器以及用單晶半導(dǎo)體器件制作的煙霧傳感器,它具有靈敏度高,反響快、體積小、結(jié)構(gòu)簡(jiǎn)單,使用方便、價(jià)格廉價(jià)等優(yōu)點(diǎn),因而得到廣泛應(yīng)用。本設(shè)計(jì)選用MQ-2型煙霧傳感器,這種型號(hào)的傳感器不但具備一般半導(dǎo)體煙霧傳感器的優(yōu)點(diǎn),并且它的抗干擾能力強(qiáng)、壽命長(zhǎng)。MQ-2氣體傳感器對(duì)液化氣、丙烷、氫氣的靈敏度高,對(duì)天然氣和其它可燃蒸汽的檢測(cè)也很理想。這種傳感器可檢測(cè)多種可燃性氣體,是一款適合多種應(yīng)用的低本錢(qián)傳感器。3硬件設(shè)置3.1單片機(jī)STC89C52的原理STC89C52的引腳說(shuō)明(1)主要性能參數(shù)STC89C52管腳圖[1],如圖3.1。圖3.1STC89C52管腳圖·與MCS-51產(chǎn)品指令系統(tǒng)完全兼容·1000次擦寫(xiě)中期·8K字節(jié)可重擦寫(xiě)Flash閃速存儲(chǔ)器·三級(jí)加密程序存儲(chǔ)器·全靜態(tài)操作:0Hz——24MHz·32個(gè)可編程I/O口線·512字節(jié)內(nèi)部RAM·6個(gè)中斷源·3個(gè)16位定時(shí)/計(jì)數(shù)器·可編程串行UART通道·低功耗空閑和掉電式(2)功能特性概述STC89C52提供以下幾個(gè)標(biāo)準(zhǔn)功能:8K字節(jié)Flash閃存存儲(chǔ)器,512字節(jié)內(nèi)部RAM,32個(gè)I/O口線,3個(gè)16位定時(shí)/計(jì)數(shù)器,一個(gè)5向量?jī)杉?jí)中斷結(jié)構(gòu),一個(gè)全雙工串行通信口,片內(nèi)振蕩器及時(shí)鐘電路。同時(shí),STC89C52可降至0Hz的靜態(tài)邏輯操作,并支持兩種軟件可選的節(jié)電工作模式??臻e方式停止CPU的工作,但允許RAM,定時(shí)/計(jì)數(shù)器,串行通信口及中斷系統(tǒng)繼續(xù)工作。掉電方式保存RAM中的內(nèi)容。但振蕩器停止工作并禁止其它所有工作直到下一個(gè)硬件復(fù)位。(3)引腳功能說(shuō)明·:電源電壓·GND:地·P0口:P0口是一組8位漏極開(kāi)路型雙向I/O口,也即地址/數(shù)據(jù)總線復(fù)用口。作為輸出口用時(shí),每位能吸收電流的方式驅(qū)動(dòng)8個(gè)TTL邏輯門(mén)電路,對(duì)斷口寫(xiě)“1”可作為高阻抗輸入端用。在Flash編程時(shí),P0接受指令字節(jié),而在程序校驗(yàn)時(shí),輸出指令字節(jié),校驗(yàn)時(shí),要求外接上拉電阻。在訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器或程序存儲(chǔ)器時(shí),這組口線分時(shí)轉(zhuǎn)換地址〔低8位〕和數(shù)據(jù)總線復(fù)用,在訪問(wèn)期間激活內(nèi)部上拉電阻。·P1口:P1是一個(gè)帶內(nèi)部上拉電阻的8位雙向I/O口,P1的輸出緩沖級(jí)可驅(qū)動(dòng)〔吸收或輸出電流〕4個(gè)TTL邏輯門(mén)電路。對(duì)端口寫(xiě)“1”,通過(guò)內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可作為輸入口。作輸入口使用時(shí),因?yàn)閮?nèi)部存在上拉電阻,某個(gè)引腳被外部信號(hào)來(lái)低電平時(shí)會(huì)輸出一個(gè)電流〔I〕。Flash編程和程序校驗(yàn)期間,P1口接受低8位地址?!2口:P2口是一個(gè)帶內(nèi)部上拉電阻的8位雙向I/O口,P2的輸出緩沖級(jí)可驅(qū)動(dòng)〔吸收或輸出電流〕4個(gè)TTL邏輯門(mén)電路。對(duì)端口寫(xiě)“1”,通過(guò)內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可作為輸入口。作輸入口使用時(shí),因?yàn)閮?nèi)部存在上拉電阻,某個(gè)引腳被外部信號(hào)來(lái)低電平時(shí)會(huì)輸出一個(gè)電流〔I〕。在訪問(wèn)外部程序存儲(chǔ)器或16位地址的外部數(shù)據(jù)存儲(chǔ)器〔例如執(zhí)行MOVX@DPTR指令〕時(shí),P2口送出高8位地址數(shù)據(jù)。在訪問(wèn)8位地址的外部數(shù)據(jù)存儲(chǔ)器〔例如執(zhí)行MOVX@RI指令〕時(shí),P2口行上的內(nèi)容〔也即特殊功能存放器〔SFR〕區(qū)中R2存放器的內(nèi)容〕,在整個(gè)訪問(wèn)期間不改變。Flash編程或校驗(yàn)時(shí),P2亦接受高位地址和其它控制信號(hào)。·P3口:P3是一組帶內(nèi)部上拉電阻的8位雙向I/O口,P3口的輸出緩沖級(jí)可驅(qū)動(dòng)〔吸收或輸出電流〕4個(gè)TTL邏輯門(mén)電路。對(duì)端口寫(xiě)“1”,通過(guò)內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可作為輸入口。作輸入口使用時(shí),被外部拉低的P3口將用上拉電阻輸出電流〔I〕。P3口除了作為一般的I/O口線外,更重要的用途是它的第二功能[2],見(jiàn)表3.1。表3.1P3口的第二功能端口引腳第二功能P3.0RXD〔串行輸入口〕P3.1TXD〔串行輸出口〕P3.2〔外中斷0〕P3.3〔外中斷1〕P3.4T0〔定時(shí)/計(jì)數(shù)器0〕P3.5T1〔定時(shí)/計(jì)數(shù)器1〕P3.6〔外部數(shù)據(jù)存儲(chǔ)器寫(xiě)選通〕P3.7〔外部數(shù)據(jù)存儲(chǔ)器讀選通〕P3口還接受一些用于Flash閃速存儲(chǔ)器編程和程序校驗(yàn)的控制信號(hào)?!ST:復(fù)位輸入。當(dāng)振蕩器工作時(shí),RST引腳出現(xiàn)兩個(gè)機(jī)器周期以上高電平將使單片機(jī)復(fù)位?!LE/:當(dāng)訪問(wèn)外部程序存儲(chǔ)器時(shí),ALE輸出脈沖用于鎖存地址的低8位字節(jié)。即使不訪問(wèn)外部存儲(chǔ)器,ALE仍以時(shí)鐘振蕩頻率的1/6輸出固定的正脈沖信號(hào),因此它可對(duì)外輸出時(shí)鐘或用于定時(shí)目的。要注意的是:每當(dāng)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí)將跳過(guò)一個(gè)ALE脈沖。對(duì)Flash存儲(chǔ)器編程期間,該引腳還用于輸入編程脈沖〔〕。如有必要,可通過(guò)對(duì)特殊功能存放器〔SFR〕區(qū)中的8EH單元的D0位置位,可禁止ALE操作,該位置位后,只有一條MOVX和MOVC指令A(yù)LE才會(huì)被激活。此外,該引腳會(huì)被微弱拉高,單片機(jī)執(zhí)行外部程序時(shí),應(yīng)設(shè)置ALE無(wú)效。·:程序儲(chǔ)存允許〔〕輸出是外部程序存儲(chǔ)器的讀選信號(hào),當(dāng)STC89C52由外部程序存儲(chǔ)器取指令〔或數(shù)據(jù)〕時(shí),每個(gè)機(jī)器周期兩次有效,即輸出兩個(gè)脈沖。在此期間,當(dāng)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器,這兩次有效的信號(hào)不出現(xiàn)?!A/Vpp:外部訪問(wèn)允許。欲使CPU僅訪問(wèn)外部程序存儲(chǔ)器〔地址為0000H——FFFFH〕,EA端必須得保持低電平〔接地〕。需注意的是:如果加密位LBI被編程,復(fù)位時(shí)內(nèi)部會(huì)鎖存EA端狀態(tài)。如EA端為高電平〔接端〕,CPU那么執(zhí)行內(nèi)部程序存儲(chǔ)器中的指令。Flash存儲(chǔ)器編程時(shí),該引腳加上+12V的編程允許電源,當(dāng)然這必須是該器件是使用12V編程電壓。·XTAL1:振蕩器反相放大器的及內(nèi)部時(shí)鐘發(fā)生器的輸入端?!TAL2:振蕩器反相放大器的輸出端。工作特性(1)時(shí)鐘振蕩器[3]STC89C52中有一個(gè)用于構(gòu)成內(nèi)部振蕩器的高增益反相放大器,引腳XTAL1和XTAL2分別是該放大器的輸入端和輸出端。這個(gè)放大器與作為反響元件的片外石英晶體或陶瓷諧振器一起構(gòu)成自激振蕩器,振蕩電路參見(jiàn)圖3.2。外接石英晶體〔或陶瓷諧振器〕及電容C1、C2接在放大器的反響回路中構(gòu)成并聯(lián)振蕩電路,對(duì)外電容C1、C2雖然沒(méi)有十分嚴(yán)格的要求,但電容容量的大小會(huì)輕微影響振蕩頻率的上下、振蕩器工作的穩(wěn)定性、起振的難易程序及溫度穩(wěn)定性,如果使用石英晶體,我們推薦電容使用30pF〔±10pF〕,而如使用陶瓷諧振器,建議選擇40pF〔±10F〕。用戶也可以采用外部時(shí)鐘。采用外部時(shí)鐘的電路如以下圖所示。這種情況下,外部時(shí)鐘脈沖接到XTAL1端,即內(nèi)部時(shí)鐘發(fā)生器的輸入端,XTAL2那么懸空。由于外部時(shí)鐘信號(hào)是通過(guò)一個(gè)2分頻觸發(fā)器后作為內(nèi)部時(shí)鐘信號(hào)的,所以對(duì)外部時(shí)鐘信號(hào)的占空比沒(méi)有特殊要求,電腦最小高電平持續(xù)時(shí)間和最大的低電平持續(xù)時(shí)間應(yīng)符合產(chǎn)品技術(shù)條件的要求。石英晶體時(shí):C1,C2=30pF±10pF陶瓷諧振器:C1,C2=40pF±10pF圖3.2振蕩電路(2)空閑節(jié)電模式STC89C52有兩種可用軟件編程的省電模式,它們是空閑模式和掉電模式。這兩種方式是控制專用存放器PCON〔即電源中指存放器〕中的PD〔PCON.1〕和IDL〔PCON.0〕位來(lái)實(shí)現(xiàn)的。PD是掉電模式,當(dāng)PD=1時(shí),激活掉電工作模式,單片機(jī)進(jìn)入掉電工作狀態(tài)。IDL是空閑等待方式,當(dāng)IDL=1時(shí),激活空閑工作模式,單片機(jī)進(jìn)入睡眠狀態(tài)。如需同時(shí)進(jìn)入兩種工作模式,即PD和IDL同時(shí)為1,那么先激活掉電模式。在空閑工作模式狀態(tài),CPU保持睡眠狀態(tài)而所有片內(nèi)的外設(shè)仍保持激活狀態(tài),這種方式由軟件產(chǎn)生。此時(shí),片內(nèi)RAM和所有特殊功能存放器的內(nèi)容保持不變??臻e模式可由任何允許的中斷請(qǐng)求或硬件復(fù)位終止。終止空閑工作模式的方法有兩種,其一是任何一條被允許的中斷的事件被激活,IDL被硬件清零,即可終止空閑工作模式,程序會(huì)首先響應(yīng)中斷,進(jìn)入中斷效勞程序,執(zhí)行完中斷效勞程序并緊隨RET1指令后,下一條要執(zhí)行的指令就是使單片機(jī)進(jìn)入空閑模式那條指令后面的一條指令。其二是通過(guò)硬件復(fù)位也可將空閑工作模式終止。需要注意的是,當(dāng)由硬件復(fù)位來(lái)終止空閑工作模式時(shí),CPU通常是從激活空閑模式那條指令的下一條指令開(kāi)始繼續(xù)執(zhí)行程序的,要完成內(nèi)部復(fù)位操作,硬件復(fù)位脈沖要保持兩個(gè)機(jī)器周期有效,在這種情況下,內(nèi)部禁止CPU訪問(wèn)片內(nèi)RAM,而允許訪問(wèn)其它端口,為了防止可能對(duì)端口產(chǎn)生意外寫(xiě)入,即或空閑模式的那條指令后一條指令不應(yīng)是一條對(duì)端口或外部存儲(chǔ)器的寫(xiě)入指令。(3)掉電模式在掉電模式下,振蕩器停止工作,進(jìn)入掉電模式的指令是最后一條被執(zhí)行的指令,片內(nèi)RAM和特殊功能存放器的內(nèi)容在終止掉電模式前被凍結(jié)。退出掉電模式的唯一方法是硬件復(fù)位,復(fù)位后將重新定義全部特殊功能存放器但不包括RAM中的內(nèi)容,在恢復(fù)到正常工作電平前,復(fù)位應(yīng)無(wú)效,且必須保持一定時(shí)間以使振蕩器重啟動(dòng)并穩(wěn)定工作。(4)程序存儲(chǔ)器的加密STC89C52可使用對(duì)芯片上的3個(gè)加密位LB1,LB2,LB3進(jìn)行編程〔P〕或不編程〔U〕來(lái)得到如下表3.2所示的功能:表3.2加密位保護(hù)功能表程序加密位保護(hù)類型LB1LB2LB31UUU沒(méi)有程序保護(hù)功能2PUU禁止從外部程序存儲(chǔ)器中執(zhí)行MOVC指令讀取內(nèi)部程序存儲(chǔ)器的內(nèi)容3PPU除上表功能外,還禁止程序校驗(yàn)4PPP除以上功能外,還禁止外部執(zhí)行注:表中的U——表示未編程,P——表示編程當(dāng)加密位LB1被編程時(shí),在復(fù)位期間,EA端的邏輯電平被采樣并鎖存,如果單片機(jī)上電后一直沒(méi)有復(fù)位,那么鎖存器的初始值是一個(gè)隨機(jī)數(shù),且這個(gè)隨機(jī)數(shù)會(huì)一直到真正復(fù)位為止,為單片機(jī)能正常工作,被鎖存的EA電平值必須與該引腳當(dāng)前的邏輯電平一致,此外,加密位只能通過(guò)整片的方式擦除。(5)芯片擦除利用控制信號(hào)的正確組合并保持ALE/PROG引腳10Ms的低電平脈沖寬度即將PEROM陣列〔4K字節(jié)〕和三個(gè)加密位整片擦除,代碼陣列在片擦除操作中將任何非空單元寫(xiě)入“1”(6)讀片內(nèi)簽名字節(jié)STC89C52單片機(jī)內(nèi)有三個(gè)簽名字節(jié),地址為030H,031H和032H。用于聲明該器件的廠商,型號(hào)和編程電壓。讀簽名字節(jié)的過(guò)程和單元030H,031H及032H的正常效驗(yàn)相仿,只需將P3.6和P3.7保持低電平,返回值的意義如下:〔030H〕1EH聲明產(chǎn)品由ATMEL公司制造;〔031H〕51H聲明為STC89C52單片機(jī);〔032H〕FFH聲明12V編程電壓;〔032H〕05H聲明為5V編程電壓。(7)編程接口[4]FLASH編程和校驗(yàn)特性=0℃-70℃,=5.0±表3.3Flash編程和校驗(yàn)特性符號(hào)參數(shù)最小值最大值單位編程電壓11.512.5V編程電流1mA時(shí)鐘頻率324MHz建立地址到變低48變低后地址保持不變48建立數(shù)據(jù)到變低48變低后數(shù)據(jù)保持不變48ENABLE變高到48加到變低10后保持10寬度1110地址到數(shù)據(jù)有效48ENABLE低到數(shù)據(jù)有效48表3.3續(xù)表ENABLE后數(shù)據(jù)浮空048變高到BUSY變低1.0字節(jié)寫(xiě)入周期2.0采用控制信號(hào)的正確組合可對(duì)FLASH閃速存儲(chǔ)陣列中的每一代碼字進(jìn)行寫(xiě)入和存儲(chǔ)器的整片擦除,寫(xiě)操作周期是自身定時(shí)的,初始化后他將自動(dòng)定時(shí)到操作完成。3.2時(shí)鐘電路時(shí)鐘電路〔如圖3.3所示〕用于產(chǎn)生單片機(jī)工作時(shí)所必需的時(shí)鐘控制信號(hào)。單片機(jī)各功能部件的運(yùn)行都是以時(shí)鐘控制信號(hào)為基準(zhǔn),有條不紊地一拍一拍工作。因此,時(shí)鐘頻率直接影響單片機(jī)的速度,時(shí)鐘電路的質(zhì)量也直接影響單片機(jī)系統(tǒng)的穩(wěn)定性。單片機(jī)內(nèi)部有一個(gè)高增益反向放大器,輸入端為芯片引腳XTAL1,輸出端為引腳XTAL2。而在芯片外部XTAL1和XTAL2之間跨接晶體振蕩器和微調(diào)電容,從而構(gòu)成一個(gè)穩(wěn)定的自激振蕩器。電路中的兩個(gè)電容通常選用30pF左右,對(duì)外接電容的值雖然沒(méi)有嚴(yán)格的要求,但電容的大小會(huì)影響振蕩器頻率的上下、振蕩器的穩(wěn)定性和起振的快速性。晶振的振蕩頻率的范圍通常是1.2MHz~12MHz之間。晶體振蕩頻率高,那么系統(tǒng)的時(shí)鐘頻率也高,單片機(jī)運(yùn)行速度也就快,但反過(guò)來(lái)運(yùn)行速度快對(duì)存儲(chǔ)器的速度要求就高,對(duì)印制電路板的工藝要求也高,所以,這里使用振蕩頻率為6MHz的石英晶體。圖3.3時(shí)鐘電路3.3電源模塊電源電路可分為三大塊:變壓局部、整流濾波局部、穩(wěn)壓局部。變壓局部其實(shí)就是一個(gè)變壓器,變壓器作用是將220V的交流電壓變換成我們所需的電壓。然后再送去整流和濾波。整流電路的任務(wù)是將交流電變換成直流電。完成這一任務(wù)主要是靠二極管的單向?qū)щ娮饔茫虼硕O管是構(gòu)成整流電路的關(guān)鍵元件。由于四只二極管的連接方式及其單向?qū)щ娮饔?,不管輸入的電壓正?fù)極如何,總有兩只二極管是導(dǎo)通的,故通過(guò)該整流電路都能輸出一個(gè)相對(duì)穩(wěn)定的電壓。穩(wěn)壓器是一種能自動(dòng)調(diào)整輸出電壓的供電電路或供電設(shè)備,其作用是將波動(dòng)較大和不合用電器設(shè)備要求的電源電壓穩(wěn)定在它的設(shè)定值范圍內(nèi),使各種電路或電器設(shè)備能在額定工作電壓下正常工作。因?yàn)槲铱紤]到整個(gè)設(shè)計(jì)的實(shí)用、簡(jiǎn)單以及物美價(jià)廉,所以我直接使用3節(jié)AA電池供電。3.4溫度采集局部測(cè)量溫度的關(guān)鍵是溫度傳感器,溫度傳感器的開(kāi)展經(jīng)歷了三個(gè)開(kāi)展階段:〔1〕、傳統(tǒng)的分立式溫度傳感器,〔2〕、模擬集成溫度傳感器,〔3〕、智能集成溫度傳感器。目前,國(guó)際上新型溫度傳感器正從模擬式向數(shù)字式,從集成化向智能化、網(wǎng)絡(luò)化方向飛速開(kāi)展。本設(shè)計(jì)中選用是DALLAS公司生產(chǎn)的一線式數(shù)字溫度傳感器DS18B20作為溫度探測(cè)電路的傳感器。3.4.1DS18B20數(shù)字集成溫度傳感器DS18B20溫度傳感器是美國(guó)DALLAS半導(dǎo)體公司最新推出的一種改良型智能溫度傳感器,與傳統(tǒng)的熱敏電阻等測(cè)溫元件相比,它能直接讀出被測(cè)溫度。這一局部主要完成對(duì)溫度信號(hào)的采集和轉(zhuǎn)換工作,由DS18B20數(shù)字溫度傳感器及其與單片機(jī)的接口局部組成。數(shù)字溫度傳感器DS18B20把采集到的溫度通過(guò)數(shù)據(jù)引腳傳到單片機(jī)的P1.0口,單片機(jī)接受溫度并存儲(chǔ)。此局部只用到DS18B20和單片機(jī),硬件很簡(jiǎn)單。(1)特點(diǎn)·獨(dú)特的單線接口方式,DS18B20在與微處理器連接時(shí)僅需要一條口線即可實(shí)現(xiàn)微處理器與DS18B20的雙向通訊。·DS18B20支持多點(diǎn)組網(wǎng)功能,多個(gè)DS18B20可以并聯(lián)在唯一的三線上,實(shí)現(xiàn)組網(wǎng)多點(diǎn)測(cè)溫。·DS18B20在使用中不需要任何外圍元件,全部傳感元件及轉(zhuǎn)換電路集成在形如一只三極管的集成電路內(nèi)。·適應(yīng)電壓范圍更寬,電壓范圍:3.0~5.5V,在寄生電源方式下可由數(shù)據(jù)線供電。·溫度范圍-55℃~+125℃,在-10~+85℃時(shí)精度為·零待機(jī)功耗?!た删幊痰姆直媛蕿?~12位,對(duì)應(yīng)的可分辨溫度分別為0.5℃、0.25℃、0.125℃·在9位分辨率時(shí)最多在93.75ms內(nèi)把溫度轉(zhuǎn)換為數(shù)字,12位分辨率時(shí)最多在750ms內(nèi)把溫度值轉(zhuǎn)換為數(shù)字,速度更快。·用戶可定義報(bào)警設(shè)置。·報(bào)警搜索命令識(shí)別并標(biāo)志超過(guò)程序限定溫度〔溫度報(bào)警條件〕的器件?!y(cè)量結(jié)果直接輸出數(shù)字溫度信號(hào),以"一線總線"串行傳送給CPU,同時(shí)可傳送CRC校驗(yàn)碼,具有極強(qiáng)的抗干擾糾錯(cuò)能力。·負(fù)電壓特性,電源極性接反時(shí),溫度計(jì)不會(huì)因發(fā)熱而燒毀,但不能正常工作。(2)內(nèi)部結(jié)構(gòu)DS18B20內(nèi)部結(jié)構(gòu)如圖3.4所示,主要由4局部組成:64位ROM、溫度傳感器、非揮發(fā)的溫度報(bào)警觸發(fā)器TH和TL、配置存放器。圖3.4DS18B20內(nèi)部結(jié)構(gòu)3.引腳功能介紹DS18B20的管腳排列如圖3.5所示,DQ為數(shù)字信號(hào)輸入/輸出端,GND為電源地,VDD為外接供電電源輸入端,各引腳的功能如表3.4所示。表3.4DS18B20引腳功能序號(hào)名稱引腳功能描述1GND地信號(hào)2DQ數(shù)據(jù)輸入/輸出引腳。開(kāi)漏單總線接口引腳。當(dāng)被用著在寄生電源下,也可以向器件提供電源。3VDD可選擇的VDD引腳。當(dāng)工作于寄生電源時(shí),此引腳必須接地。圖3.5DS18B20管腳圖4.測(cè)溫原理DS18B20的測(cè)溫原理如圖3.6所示,圖中低溫度系數(shù)晶振的振蕩頻率受溫度的影響很小,用于產(chǎn)生固定頻率的脈沖信號(hào)送給減法計(jì)數(shù)器1,而高溫度系數(shù)晶振的震蕩頻率隨溫度變化明顯改變,所產(chǎn)生的信號(hào)作為減法計(jì)數(shù)器2的脈沖輸入,圖中還隱含著計(jì)數(shù)門(mén),當(dāng)計(jì)數(shù)門(mén)翻開(kāi)時(shí),DS18B20就對(duì)低溫度系數(shù)振蕩器產(chǎn)生的時(shí)鐘脈沖進(jìn)行計(jì)數(shù),進(jìn)而完成溫度測(cè)量。計(jì)數(shù)門(mén)的開(kāi)啟時(shí)間由高溫度系數(shù)振蕩器來(lái)決定,每次測(cè)量前,首先將-55℃所對(duì)應(yīng)的基數(shù)分別置入減法計(jì)數(shù)器1和溫度存放器中,減法計(jì)數(shù)器1和溫度存放器被預(yù)置在-55℃所對(duì)應(yīng)的一個(gè)基數(shù)值。減法計(jì)數(shù)器1對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行減法計(jì)數(shù),當(dāng)減法計(jì)數(shù)器1的預(yù)置值減到0時(shí),溫度存放器的值將加1,減法計(jì)數(shù)器1的預(yù)置將重新被裝入,減法計(jì)數(shù)器1重新開(kāi)始對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行計(jì)數(shù)。如此循環(huán)直到減法計(jì)數(shù)器2計(jì)數(shù)到0時(shí),停止溫度存放器值的累加,此時(shí)溫度存放器中的數(shù)值即為所測(cè)溫度。圖3.7中的斜率累加器用于補(bǔ)償和修正測(cè)溫過(guò)程中的非線性,其輸出用于修正減法計(jì)數(shù)器的預(yù)置值,只要計(jì)數(shù)門(mén)仍未關(guān)閉就重復(fù)上述過(guò)程,直至溫度存放器值到達(dá)被測(cè)溫度值,這就是減法計(jì)數(shù)器1減法計(jì)數(shù)器1斜率累加器減到0減法計(jì)數(shù)器2預(yù)置低溫度系數(shù)振蕩器高溫度系數(shù)振蕩器計(jì)數(shù)比擬器預(yù)置溫度存放器減到0圖3.6DS18B20的測(cè)溫原理圖另外,由于DS18B20單線通信功能是分時(shí)完成的,他有嚴(yán)格的時(shí)隙概念,因此讀寫(xiě)時(shí)序很重要。系統(tǒng)對(duì)DS18B20的各種操作必須按協(xié)議進(jìn)行。操作協(xié)議為:初始化DS18B20(發(fā)復(fù)位脈沖)——發(fā)ROM功能命令——發(fā)存儲(chǔ)器操作命令——處理數(shù)據(jù)。5.測(cè)溫流程圖測(cè)溫流程圖如圖3.7所示。初始化初始化DS18B20跳過(guò)ROM匹配溫度變換延時(shí)1S跳過(guò)ROM匹配讀暫存器轉(zhuǎn)換成顯示碼數(shù)碼管顯示圖3.7DS18B20測(cè)溫流程6.DS18B20供電方式DS18B20可以通過(guò)從VDD引腳接入一個(gè)外部電源供電,也可以工作于寄生電源模式。在硬件上,外接電源供電是VDD接外部電源,GND接地,I/O與單片機(jī)的I/O線相連;用寄生電源供電是VDD、GND接地,I/O接單片機(jī)I/O。無(wú)論是內(nèi)部寄生電源還是外部供電,I/O口線要接5KΩ左右的上拉電阻。寄生電源模式允許DS18B20工作于無(wú)外部電源需求狀態(tài),該模式非常適用于遠(yuǎn)距離測(cè)溫。本設(shè)計(jì)中所采用的是外接電源供電。3.4.2測(cè)溫模塊電路原理圖測(cè)溫模塊電路原理圖如圖3.8所示。圖3.8測(cè)溫模塊電路原理圖3.5濃度采集模塊一般選用接觸燃燒式煙霧傳感器和半導(dǎo)體煙霧傳感器。使用接觸燃燒式傳感器,其探頭的阻緩及中毒,是不可防止的問(wèn)題。阻緩是當(dāng)在煙霧與空氣的混合物中含有硫化氫等含硫物質(zhì)的情況下,那么有可能在無(wú)焰燃燒的同時(shí),有些固態(tài)物質(zhì)附著在催化元件外表,阻塞載體的微孔,從而引起響應(yīng)緩慢反響滯緩,靈敏度降低。雖然將阻緩的傳感器再放回新鮮空氣環(huán)境中有得到某種程度的恢復(fù)的可能,但是如果長(zhǎng)期暴露在這樣的環(huán)境中,其靈敏度會(huì)不斷下降,導(dǎo)致傳感器最終喪失檢測(cè)煙霧的能力。中毒是如果環(huán)境空氣中含有硅烷之類的物質(zhì)時(shí),那么傳感器將使催化元件產(chǎn)生不可逆轉(zhuǎn)的中毒,以致靈敏度很快就喪失。當(dāng)疑心檢測(cè)環(huán)境中存在這些物質(zhì)時(shí),經(jīng)常對(duì)探頭進(jìn)行標(biāo)定,是必須且有效的方法。因此,經(jīng)常對(duì)傳感器進(jìn)行標(biāo)定,是保證其準(zhǔn)確性的必要的途徑。一般連續(xù)使用兩個(gè)月后應(yīng)對(duì)傳感器進(jìn)行量程校準(zhǔn),這種經(jīng)常性對(duì)傳感器的維護(hù),無(wú)形中加大了工作人員的工作量,同時(shí)增加了報(bào)警器的維護(hù)本錢(qián)。半導(dǎo)體煙霧傳感器包括用氧化物半導(dǎo)體陶瓷材料作為敏感體制作的煙霧傳感器以及用單晶半導(dǎo)體器件制作的煙霧傳感器,它具有靈敏度高,響應(yīng)快、體積小、結(jié)構(gòu)簡(jiǎn)單,使用方便、價(jià)格廉價(jià)等優(yōu)點(diǎn),因而得到廣泛應(yīng)用。半導(dǎo)體煙霧傳感器的性能主要看其靈敏度、選擇性(抗干擾性)和穩(wěn)定性(使用壽命)。經(jīng)過(guò)比照上述兩種煙霧傳感器的應(yīng)用特性,發(fā)現(xiàn)半導(dǎo)體煙霧傳感器的優(yōu)點(diǎn)更加突出:靈敏度高、響應(yīng)快、抗干擾性好、使用方便、價(jià)格廉價(jià),且不會(huì)發(fā)生探頭阻緩及中毒現(xiàn)象,維護(hù)本錢(qián)較低等。因此,本設(shè)計(jì)采用半導(dǎo)體煙霧傳感器作為報(bào)警器煙霧信息采集局部的核心。而在眾多半導(dǎo)體氣體傳感器中,本設(shè)計(jì)選用MQ-2型煙霧傳感器,這種型號(hào)的傳感器不但具備一般半導(dǎo)體煙霧傳感器靈敏度高、反響快的優(yōu)點(diǎn),而且其抗干擾能力強(qiáng)、壽命長(zhǎng)。MQ-2氣體傳感器對(duì)液化氣、丙烷、氫氣的靈敏度高,對(duì)天然氣和其它可燃蒸汽的檢測(cè)也很理想。這種傳感器可檢測(cè)多種可燃性氣體,是一款適合多種應(yīng)用的低本錢(qián)傳感器。3.6A/D轉(zhuǎn)換器A/D轉(zhuǎn)換器的功能是將模擬量電信號(hào)轉(zhuǎn)換成數(shù)字量。在本設(shè)計(jì)中,我采用了ADC0832轉(zhuǎn)換器,ADC0832是NS(NationalSemiconductor)公司生產(chǎn)的串行接口8位A/D轉(zhuǎn)換器,通過(guò)三線接口與單片機(jī)連接,功耗低,性能價(jià)格比擬高,適宜在袖珍式的智能儀器儀表中使用。ADC0832為8位分辨率A/D轉(zhuǎn)換芯片,其最高分辨可達(dá)256級(jí),可以適應(yīng)一般的模擬量轉(zhuǎn)換要求。芯片具有雙數(shù)據(jù)輸出可作為數(shù)據(jù)校驗(yàn),以減少數(shù)據(jù)誤差,轉(zhuǎn)換速度快且穩(wěn)定性能強(qiáng)。獨(dú)立的芯片使能輸入,使多器件連接和處理器控制變得更加方便。通過(guò)DI數(shù)據(jù)輸入端,可以輕易的實(shí)現(xiàn)通道功能的選擇。3.6.1A/D轉(zhuǎn)換器的主要參數(shù)(1)分辨率:是指A/D轉(zhuǎn)換器可轉(zhuǎn)換成二進(jìn)制數(shù)的位數(shù)。(2)轉(zhuǎn)換時(shí)間:指從輸入啟動(dòng)轉(zhuǎn)換信號(hào)開(kāi)始到轉(zhuǎn)換結(jié)束,得到穩(wěn)定的數(shù)字輸出量為止的時(shí)間其他參數(shù)與D/A轉(zhuǎn)換器類似。3.6.2A/D轉(zhuǎn)換器與CPU的接口方法(1)ADC轉(zhuǎn)換好的數(shù)據(jù)必須經(jīng)過(guò)三態(tài)緩沖器件與CPU數(shù)據(jù)總線相連接〔在芯片內(nèi)部沒(méi)有三態(tài)輸出緩沖器時(shí)〕;(2)為了輸入正確的轉(zhuǎn)換結(jié)果,必須解決好A/D轉(zhuǎn)換器和CPU取數(shù)之間的時(shí)間配合問(wèn)題。(3)啟動(dòng)轉(zhuǎn)換信號(hào)〔START〕:是由CPU提供應(yīng)ADC芯片的,在正脈沖的下降沿轉(zhuǎn)換開(kāi)始;(4)轉(zhuǎn)換結(jié)束信號(hào)〔EOC〕:一旦啟動(dòng)轉(zhuǎn)換,EOC立即變低,直至轉(zhuǎn)換結(jié)束,EOC輸出高電平,通知CPU轉(zhuǎn)換已結(jié)束;(5)允許輸出信號(hào)〔OE〕:ADC轉(zhuǎn)換結(jié)束后,轉(zhuǎn)換結(jié)果存放在輸出鎖存器中,并沒(méi)有送入數(shù)據(jù)總線上。CPU取數(shù)時(shí),發(fā)出OE信號(hào)選通芯片內(nèi)部三態(tài)輸出緩沖器將數(shù)據(jù)輸出。3.6.3A/D轉(zhuǎn)換器與CPU之間傳送數(shù)據(jù)的方法(1)延時(shí)等待法延時(shí)法是利用CPU執(zhí)行一條輸出指令,啟動(dòng)ADC轉(zhuǎn)換,然后CPU執(zhí)行延時(shí)程序,延時(shí)時(shí)間大于所選用的ADC芯片轉(zhuǎn)換時(shí)間,延時(shí)結(jié)束,CPU執(zhí)行輸入指令,翻開(kāi)三態(tài)門(mén)獲取ADC轉(zhuǎn)換好的數(shù)據(jù)。(2)查詢法查詢法是由CPU來(lái)檢查EOC信號(hào)。當(dāng)CPU啟動(dòng)ADC芯片開(kāi)始轉(zhuǎn)換之后,再通過(guò)狀態(tài)端口讀取EOC信號(hào),檢查ADC是否轉(zhuǎn)換結(jié)束。假設(shè)轉(zhuǎn)換結(jié)束,那么讀取轉(zhuǎn)換結(jié)果,否那么繼續(xù)查詢。(3)中斷法用中斷法可提高CPU的利用率,當(dāng)ADC轉(zhuǎn)換結(jié)束,由EOC信號(hào)上升沿通過(guò)8255A中斷控制邏輯向CPU發(fā)出中斷請(qǐng)求,CPU響應(yīng)中斷在效勞程序中讀取結(jié)果。3.6.4A/D轉(zhuǎn)換芯片ADC0832及其接口(1)主要性能·8位分辨率,逐次逼近型,基準(zhǔn)電壓為5V;·5V單電源供電;·輸入模擬信號(hào)電壓范圍為0~5V;·輸入和輸出電平與TTL和CMOS兼容;·在250KHZ時(shí)鐘頻率時(shí),轉(zhuǎn)換時(shí)間為32us;·具有兩個(gè)可供選擇的模擬輸入通道;·功耗低,15mW?!?〕外部引腳及其說(shuō)明ADC0832有DIP和SOIC兩種封裝,DIP封裝的ADC0832引腳排列如圖3.9所示。各引腳說(shuō)明如下:·CS——片選端,低電平有效。·CH0,CH1——兩路模擬信號(hào)輸入端?!I——兩路模擬輸入選擇輸入端?!O——模數(shù)轉(zhuǎn)換結(jié)果串行輸出端?!LK——串行時(shí)鐘輸入端?!cc/REF——正電源端和基準(zhǔn)電壓輸入端?!ND——電源地?!?〕單片機(jī)對(duì)ADC0832的控制原理圖3.9ADC0832引腳圖一般情況下ADC0832與單片機(jī)的接口應(yīng)為4條數(shù)據(jù)線,分別是CS、CLK、DO、DI。但由于DO端與DI端在通信時(shí)并未同時(shí)有效并與單片機(jī)的接口是雙向的,所以電路設(shè)計(jì)時(shí)可以將DO和DI并聯(lián)在一根數(shù)據(jù)線上使用。當(dāng)ADC0832未工作時(shí)其CS輸入端應(yīng)該為高電平,此時(shí)芯片禁用,CLK和DO/DI的電平可任意。當(dāng)要進(jìn)行A/D轉(zhuǎn)換時(shí),須先將CS端置于低電平并且保持低電平直到轉(zhuǎn)換完全結(jié)束。此時(shí)芯片開(kāi)始轉(zhuǎn)換工作,同時(shí)由處理器向芯片時(shí)鐘輸入端CLK提供時(shí)鐘脈沖,DO/DI端那么使用DI端輸入通道功能選擇的數(shù)據(jù)信號(hào)。在第1個(gè)時(shí)鐘脈沖到來(lái)之前DI端必須是高電平,表示啟動(dòng)位。在第2、3個(gè)時(shí)鐘脈沖到來(lái)之前DI端應(yīng)該輸入2位數(shù)據(jù)用于選擇通道功能,其功能見(jiàn)表3.5。表3.5ADC0832配置位輸入形式配置位選擇通道CH0CH1CHOCH1差分輸入00+-01-+單端輸入10+11+如表3.5所示,當(dāng)配置位2位數(shù)據(jù)為1、0時(shí),只對(duì)CH0進(jìn)行單通道轉(zhuǎn)換。當(dāng)配置2位數(shù)據(jù)為1、1時(shí),只對(duì)CH1進(jìn)行單通道轉(zhuǎn)換。當(dāng)配置2位數(shù)據(jù)為0、0時(shí),將CH0作為正輸入端IN+,CH1作為負(fù)輸入端IN-進(jìn)行輸入。當(dāng)配置2位數(shù)據(jù)為0、1時(shí),將CH0作為負(fù)輸入端IN-,CH1作為正輸入端IN+進(jìn)行輸入。到第3個(gè)時(shí)鐘脈沖到來(lái)之后DI端的輸入電平就失去輸入作用,此后DO/DI端那么開(kāi)始利用數(shù)據(jù)輸出DO進(jìn)行轉(zhuǎn)換數(shù)據(jù)的讀取。從第4個(gè)時(shí)鐘脈沖開(kāi)始由DO端輸出轉(zhuǎn)換數(shù)據(jù)最高位D7,隨后每一個(gè)脈沖DO端輸出下一位數(shù)據(jù)。直到第11個(gè)脈沖時(shí)發(fā)出最低位數(shù)據(jù)D0,一個(gè)字節(jié)的數(shù)據(jù)輸出完成。也正是從此位開(kāi)始輸出下一個(gè)相反字節(jié)的數(shù)據(jù),即從第11個(gè)時(shí)鐘脈沖輸出D0。隨后輸出8位數(shù)據(jù),到第19個(gè)脈沖時(shí)數(shù)據(jù)輸出完成,也標(biāo)志著一次A/D轉(zhuǎn)換的結(jié)束。最后將CS置高電平禁用芯片,直接將轉(zhuǎn)換后的數(shù)據(jù)進(jìn)行處理就可以了。圖3.10為ADC0832時(shí)序圖。圖圖3.10ADC0832時(shí)序圖4.ADC0832典型應(yīng)用〔1〕單片機(jī)串行口方式0與ADC0832接口:圖圖3.11ADC0832與單片機(jī)接口如圖3.11所示,STC89C52的P1.7為片選信號(hào)端,TXD是時(shí)鐘信號(hào)輸出端,RXD為啟動(dòng)信號(hào),模擬通道選擇信號(hào)發(fā)送端以及A/D轉(zhuǎn)換后輸出數(shù)據(jù)的接收端。ADC0832的時(shí)鐘頻率最高為400KHZ,單片機(jī)STC89C52晶振選用4MHZ,在TXD端的輸出頻率為4MHZ/12=333KHZ,符合要求。ADC0832輸出的串行數(shù)據(jù)共15位,由兩段8位數(shù)據(jù)組成,前一段是最高位在先,后一段是最高位在后,兩段數(shù)據(jù)的最低位共用。只有在時(shí)鐘的下降沿,ADC0832的串行數(shù)據(jù)才移出一位。由單片機(jī)控制時(shí)鐘信號(hào)進(jìn)行發(fā)送,并由TXD發(fā)出,以到達(dá)控制ADC0832輸出數(shù)據(jù)位的目的。為了得到一列完整的8位數(shù)據(jù),單片機(jī)分兩次采集含有不同位的數(shù)據(jù),再合成一列完整的8位數(shù)據(jù)。當(dāng)REN=0時(shí),STC89C52連續(xù)一次向ADC0832發(fā)送8個(gè)時(shí)鐘脈沖,前3個(gè)脈沖發(fā)送的是啟動(dòng)位和模擬通道選擇位,共計(jì)3位;從第4個(gè)脈沖下降沿開(kāi)始,ADC0832發(fā)出轉(zhuǎn)換數(shù)據(jù)D7~D4〔在脈沖上升沿單片機(jī)方可接收〕。但由于REN=0,單片機(jī)不予接收,喪失D7~D4數(shù)據(jù)。當(dāng)REN=1時(shí),單片機(jī)又向ADC0832連續(xù)發(fā)出8個(gè)時(shí)鐘脈沖,其輸出轉(zhuǎn)換數(shù)據(jù)D3,D2,D1,和d0,d1,d2,d3,d4,存入累加器A形成如下結(jié)構(gòu):累加器Ad4d3d2d1d0D1D2D3MSBLSB上述數(shù)據(jù)右移3位,并屏蔽掉高3位,暫存于存放器B,得到如下結(jié)構(gòu):存放器B000d4d3d2d1d0MSBLSB單片機(jī)第二次接收,可得到以下數(shù)據(jù):累加器AXXXXXd7d6d5MSBLSB以上數(shù)據(jù)左移5位,并屏蔽低5位,送入累加器A,得到如下結(jié)構(gòu):累加器Ad7d6d500000MSBLSB進(jìn)行〔A〕+〔B〕→〔A〕運(yùn)算,得到如下結(jié)構(gòu):累加器Ad7d6d5d4d3d2d1d0MSBLSB從而得到一個(gè)完整的8位A/D轉(zhuǎn)換結(jié)果。〔2〕SPI串行接口方式SPI是MOTOROLA公司推出的一種同步串行外設(shè)接口,允許MCU也各個(gè)廠家生產(chǎn)工具的標(biāo)準(zhǔn)外圍設(shè)備直接接口,以串行方式交換信息。SPI使用4條線與主機(jī)〔MCU〕連接:串行時(shí)鐘SCK,主機(jī)輸入/從機(jī)輸出數(shù)據(jù)線SO,主機(jī)輸出/從機(jī)輸入數(shù)據(jù)線SI和低電平有效的從機(jī)選擇線CS。SPI串行擴(kuò)展系統(tǒng)的主器件單片機(jī),可以帶有SPI接口,也可以不帶SPI接口,但從器件必須具有SPI接口。圖3.12單片機(jī)與ADC0832的SPI方式連接ADC0832具有SPI接口,圖3.12為AT89S51與ADC0832的SPI串行接口方式,將DO和DI分別連接于P1.0和P1.1。對(duì)CH0通道的模擬信號(hào)進(jìn)行A/D轉(zhuǎn)換,轉(zhuǎn)換結(jié)果存于累加器A中。3.7顯示模塊顯示局部我選擇的是LCD1602液晶顯示器,其原理是利用液晶的物理特性,通過(guò)電壓對(duì)其顯示區(qū)域進(jìn)行控制,有電就有顯示,這樣就可以顯示出圖形。液晶顯示器具有厚度薄、適用于大規(guī)模集成電路直接驅(qū)動(dòng)和易于實(shí)現(xiàn)全彩色顯示的特點(diǎn),目前已經(jīng)被廣泛應(yīng)用在便攜電腦、數(shù)字?jǐn)z像機(jī)和PDA移動(dòng)通信工具等眾多領(lǐng)域。其特點(diǎn):〔1〕顯示質(zhì)量高由于液晶顯示器的每一個(gè)點(diǎn)抽到信后就一直保持那種色彩和亮度,恒定發(fā)光,而不像陰極射線管顯示器那樣需要不斷刷新亮點(diǎn),因此,液晶顯示器的畫(huà)質(zhì)高且不會(huì)閃爍?!?〕數(shù)字式接口液晶顯示器都是數(shù)字式的,與單片機(jī)系統(tǒng)接口更加簡(jiǎn)單可靠,操作更加方便?!?〕體積小、重量輕液晶顯示器通過(guò)顯示屏上的點(diǎn)擊控制液晶分子狀態(tài)來(lái)到達(dá)顯示的目的,在重量上臂相同顯示面積的傳統(tǒng)顯示器要輕的多?!?〕功耗低相對(duì)而言,液晶顯示器的功耗主要消耗在內(nèi)部的電極和驅(qū)動(dòng)IC上,因而耗電量比其他顯示器要少的多。字符型模塊的性能:·重量輕:<100g;·體積?。?lt;11mm厚;·功耗低:10—15mW;·顯示內(nèi)容:192種字符〔5×7點(diǎn)字型〕;·32種字符〔5×10點(diǎn)字型〕;·可自編8〔5×7〕或許〔5×10〕種字符;·指令功能強(qiáng):可組合成各種輸入、顯示、移位方式以滿足不同的要求;·接口簡(jiǎn)單方便:可與8位微處理器或微控制器相聯(lián);·工作溫度寬:0—50oC·可靠性高:壽命為50,000小時(shí)〔25oC〕液晶顯示器的根本原理:液晶板上排列著假設(shè)干5×7或5×10點(diǎn)陣的字符顯示位,每個(gè)顯示位可顯示1個(gè)字符,從規(guī)格上分為每行8、16、20、24、32、40位,有一行、兩行及四行三類。3.8報(bào)警模塊3.8.1蜂鳴器蜂鳴器是一種一體化結(jié)構(gòu)的電子訊響器,采用直流電壓供電,廣泛應(yīng)用于計(jì)算機(jī)、打印機(jī)、復(fù)印機(jī)、報(bào)警器、電子玩具、汽車(chē)電子設(shè)備、機(jī)、定時(shí)器等電子產(chǎn)品中作發(fā)聲器件。蜂鳴器有兩種,一種是有源蜂鳴器,另一種是無(wú)源蜂鳴器。這里的“源”不是指電源,而是指振蕩源。也就是說(shuō),有源蜂鳴器內(nèi)部帶有振蕩源,所以只要一通電就會(huì)叫,但其聲音頻率是不可調(diào)的。而無(wú)源蜂鳴器內(nèi)部不帶振蕩器,所以如果用直流信號(hào)那么無(wú)法令其鳴叫,必須用2KHz~5KHz的方波去驅(qū)動(dòng)它。本設(shè)計(jì)中所選用的是無(wú)源蜂鳴器,選擇無(wú)源蜂鳴器的原因有兩點(diǎn):〔1〕無(wú)源蜂鳴器因?yàn)槠鋬?nèi)部不帶振蕩器,所以比有源蜂鳴器廉價(jià)。〔2〕無(wú)源蜂鳴器聲音頻率是可控的,可以做出多種聲音效果。3.8.2發(fā)光二極管(1).發(fā)光原理發(fā)光二極管是半導(dǎo)體二極管的一種,可以把電能轉(zhuǎn)化成光能,常簡(jiǎn)寫(xiě)為L(zhǎng)ED。發(fā)光二極管與普通二極管一樣是由一個(gè)PN結(jié)組成,也具有單向?qū)щ娦浴.?dāng)給發(fā)光二極管加上正向電壓后,從P區(qū)注入到N區(qū)的空穴和由N區(qū)注入到P區(qū)的電子,在PN結(jié)附近數(shù)微米內(nèi)分別與N區(qū)的電子和P區(qū)的空穴復(fù)合,產(chǎn)生自發(fā)輻射的熒光。(2).選擇使用LED燈報(bào)警的原因·使用低壓電源:供電電壓在6-24V之間?!さ秃哪埽合哪芰枯^同光效的白熾燈減少80%?!に俣瓤欤篖ED燈響應(yīng)時(shí)間為納秒級(jí)?!o(wú)有害金屬汞,對(duì)環(huán)境污染小,價(jià)格廉價(jià)。3.8.3報(bào)警模塊電路原理圖電路原理圖如圖3.13所示。圖3.13報(bào)警模塊電路原理圖4軟件編程系統(tǒng)程序主要包括主程序和多個(gè)子程序,例如單片機(jī)初始化程序、DS18B20初始化程序、按鍵掃描處理子程序、顯示數(shù)據(jù)子程序等。4.1主程序流程圖系統(tǒng)的主要功能是負(fù)責(zé)溫度和濃度的實(shí)時(shí)顯示,將DS18B20和MQ-2煙霧傳感器測(cè)量的當(dāng)前值與默認(rèn)值相比擬并使系統(tǒng)做出相應(yīng)響應(yīng),以保證實(shí)時(shí)監(jiān)控是否有火災(zāi)發(fā)生。其程序流程見(jiàn)圖4.1所示。開(kāi)開(kāi)始初始化DS18B20以及MQ-2型煙霧傳感器顯示當(dāng)前溫度或濃度判斷當(dāng)前溫度值或者濃度值超出默認(rèn)值設(shè)定溫度和濃度默認(rèn)值一定時(shí)間內(nèi)是否被終止否是否報(bào)警是數(shù)據(jù)正常蜂鳴器繼續(xù)報(bào)警STC89C52的初始化圖4.1主程序流程圖5系統(tǒng)仿真5.1仿真軟件—KeilC51簡(jiǎn)介KeilC51軟件是眾多單片機(jī)應(yīng)用開(kāi)發(fā)的優(yōu)秀軟件之一,它集編輯、編譯、仿真于一體,支持匯編語(yǔ)言、PLM語(yǔ)言和C語(yǔ)言的程序設(shè)計(jì),界面友好,易學(xué)易用。(1)Kei的μVision4可以進(jìn)行純粹的軟件仿真(仿真軟件程序,不接硬件電路);也可以利用硬件仿真器,搭接上單片機(jī)硬件系統(tǒng),在仿真器中載入工程程序后進(jìn)行實(shí)時(shí)仿真;還可以使用μVision4的內(nèi)嵌模塊KeilMonitor-51,在不需要額外的硬件仿真器的條件下,搭接單片機(jī)硬件系統(tǒng)對(duì)工程程序進(jìn)行實(shí)時(shí)仿真。(2)uVision4調(diào)試器具備所有常規(guī)源極調(diào)試,符號(hào)調(diào)試特性以及歷史跟蹤,代碼覆蓋,復(fù)雜斷點(diǎn)等功能。DDE界面和shift語(yǔ)言支持自動(dòng)程序測(cè)試。5.2系統(tǒng)電路功能仿真利用Proteus繪制仿真圖。整個(gè)仿真圖的繪制過(guò)程主要有以下幾部組成:首先新建一個(gè)Proteus的工程,在元件庫(kù)里面搜索所需要的元器件,在元器件上單擊右鍵選中,再單擊左鍵對(duì)其進(jìn)行命名和賦值,接著在編輯器左邊的一欄中,找出繪制各種需要的線條和其他一些相關(guān)的線條和器件,進(jìn)行節(jié)點(diǎn)出是否連接好進(jìn)行檢查,為下一步的系統(tǒng)仿真做準(zhǔn)備。畫(huà)出的仿真電路圖如圖5.1。圖5.1智能火災(zāi)報(bào)警系統(tǒng)仿真電路圖5.3Keiil和Proteus對(duì)系統(tǒng)聯(lián)調(diào)Proteus與Keil兩個(gè)軟件可以進(jìn)行聯(lián)調(diào),這一強(qiáng)大功能是其他軟件無(wú)法辦到的,仿真時(shí)通過(guò)KeilC51和Proteus結(jié)合實(shí)現(xiàn)的。首先,要將KEILC51中調(diào)試成功的程序生成.HEX文本并保存,在Proteus中的主芯片STC89C52中導(dǎo)入此文本,即可在Proteus環(huán)境中實(shí)現(xiàn)系統(tǒng)的仿真。(1)Keil與Proteus聯(lián)調(diào),如圖5.2所示。圖5.2聯(lián)調(diào)圖(2)無(wú)故障正常時(shí),即正常,LCD1602正確顯示,測(cè)試圖如圖5.3所示。圖5.3正常工作時(shí)仿真電路圖5.4各狀態(tài)仿真結(jié)果顯示根據(jù)功能要求分別仿真各種情況下的顯示情況,具體如下:按下默認(rèn)值設(shè)置按鈕,可更改當(dāng)前溫度和濃度的報(bào)警默認(rèn)值,會(huì)出現(xiàn)以下界面,如圖5.4。圖5.4默認(rèn)值設(shè)置仿真圖按下時(shí)間設(shè)置按鈕,便可更改當(dāng)前時(shí)間年月日以及星期,顯示結(jié)果如圖5.5。圖5.5顯示時(shí)間設(shè)置仿真圖當(dāng)前實(shí)時(shí)溫度監(jiān)控可根據(jù)增大減小按鈕調(diào)節(jié),顯示如圖5.6。圖5.6當(dāng)前實(shí)時(shí)溫度仿真圖當(dāng)前實(shí)時(shí)濃度監(jiān)控可滑動(dòng)調(diào)節(jié),顯示如圖5.7。圖5.7當(dāng)前實(shí)時(shí)濃度仿真圖參考文獻(xiàn)[1]徐愛(ài)卿.MCS-51/96單片機(jī)原理及應(yīng)用[M].北京:北京航空航天大學(xué)出版社,2006.[2]夏繼強(qiáng).單片機(jī)實(shí)驗(yàn)及實(shí)踐教程[M].北京:北京航空航天大學(xué)出版社,2002.[3]張毅剛.單片機(jī)原理及應(yīng)用[M].北京:高等教育出版社,2003.[4]李剛.新型單片機(jī)接口器件與技術(shù)[M].西安:西安電子科技大學(xué)出版社,2005.[5]余成波.傳感器與自動(dòng)檢測(cè)技術(shù)[M].第2版,北京:高等教育出版社,2009.[6]李瑜芳.傳感器原理及其應(yīng)用[M].成都:電子科技大學(xué)出版社,2008.[7]樓順天,周佳社.微機(jī)原理與接口技術(shù)[M].北京:科學(xué)出版社,2006.[8]李廣弟.單片機(jī)根底[M].北京:北京航空航天大學(xué)出版社,2005.[9]李苑.單片機(jī)實(shí)用教程[M].北京:清華大學(xué)出版社,2006.[10]李廣弟.單片機(jī)根底[M].第3版,北京:北京航空航天大學(xué)出版社,2007.[11]胡輝.單片機(jī)原理及應(yīng)用設(shè)計(jì)[M].北京:中國(guó)水利水電出版社,2005.[12]李學(xué)海.PLC單片機(jī)實(shí)用教程[M].北京:北京航空航天大學(xué)出版社,2005.[13]李朝青.單片機(jī)原理及接口技術(shù)[M].北京:北京航空航天大學(xué)出版社,2001.[14]樹(shù)杜春.單片機(jī)C語(yǔ)言和匯編語(yǔ)言混合編程實(shí)例詳解[M].北京:北京航空航天大學(xué)出版,2006.[15]徐愛(ài)鈞.單片機(jī)高級(jí)語(yǔ)言C51應(yīng)用程序設(shè)計(jì)[M].北京:電子工業(yè)出版社,2002.結(jié)束語(yǔ)本文所設(shè)計(jì)的智能火災(zāi)報(bào)警系統(tǒng)結(jié)構(gòu)簡(jiǎn)單、測(cè)溫度和濃度準(zhǔn)確、經(jīng)濟(jì)本錢(qián)低、比擬人性化,具有一定的實(shí)際應(yīng)用價(jià)值。該系統(tǒng)可用于家庭用戶的火災(zāi)監(jiān)測(cè)報(bào)警,也可用于工廠建筑火災(zāi)報(bào)警監(jiān)控。不過(guò)該系統(tǒng)功能還有待完善,我們可以根據(jù)用戶的實(shí)際情況增加一些其他功能,例如:添加自動(dòng)滅火功能,或者增加詳細(xì)實(shí)時(shí)監(jiān)控,如具體到每分每秒的溫度和濃度情況記錄,以便于日后查驗(yàn)與總結(jié)。本文最大的缺乏就是由于知識(shí)的欠缺性,僅僅完成了系統(tǒng)的仿真而無(wú)法完成系統(tǒng)的聯(lián)網(wǎng)局部功能。致謝經(jīng)過(guò)自己不斷的搜索努力以及馮老師的耐心指導(dǎo)和熱情幫助,本設(shè)計(jì)已經(jīng)根本完成。在這段時(shí)間里,老師嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度和熱忱的工作作風(fēng)令我十分欽佩,她的指導(dǎo)使我受益非淺在此對(duì)老師們表示深深得感謝。通過(guò)這次畢業(yè)設(shè)計(jì),使我深刻地認(rèn)識(shí)到學(xué)好專業(yè)知識(shí)的重要性,也理解了理論聯(lián)系實(shí)際的含義,并且檢驗(yàn)了大學(xué)的學(xué)習(xí)成果。雖然在這次設(shè)計(jì)中對(duì)于知識(shí)的運(yùn)用和銜接還不夠熟練,但是我將在以后的工作和學(xué)習(xí)中繼續(xù)努力、不斷完善。這個(gè)設(shè)計(jì)是對(duì)過(guò)去所學(xué)知識(shí)的系統(tǒng)提高和擴(kuò)充的過(guò)程,為今后的學(xué)習(xí)和開(kāi)展打下了良好的根底?;厥自趯幚淼膶W(xué)習(xí)生活,有苦有樂(lè),感謝很多老師給予我的關(guān)心,保護(hù)和栽培。四年來(lái)和同學(xué)朝夕相處,在即將畢業(yè)的前夕祝愿大家把這段回憶永遠(yuǎn)存在心中。由于自身水平有限,設(shè)計(jì)中一定存在很多缺乏之處,敬請(qǐng)各位老師批評(píng)指正。附錄A系統(tǒng)硬件原理圖附錄B源程序代碼#include<reg52.h>//#include<stdio.h>//#include<intrins.h>#include"ds1302.h"#include"lcd1602.h"#include"keyscan.h"#include"iodef.h"http://#include"mimasuo.h"#include"24c02.h"#include"adc0832.h"http://#include"jisuanqi1.h"#include"18b20.h"unsignedcharstate=1;//1代表報(bào)警器bitds18is=1;//18b20在不在main(){unsignedchari;JON_OFF();//mms_Ring();LABA=0;InitLcd();//初始化LCDDelayMs(15);//延時(shí)用于穩(wěn)定功能 ADC_Init();Init_DS18B20();ds1302_init();while(1){ Baojingyi();//實(shí)時(shí)測(cè)量} }//初始化adcvoidADC_Init(void){unsignedcharadc_val1; ADC_CSN=1; ADC_CLK=1; ADC_DAT=1;//UART_Init(); while(1) {ADC_CSN=0; DelayUs(250); DelayUs(250); adc_val[0]=adc_getone();//adc讀取一位 adc_val[1]=adc_getone();//adc讀取一位 adc_val[2]=adc_getone();//adc讀取一位 ADC_CSN=1; ADC_CLK=1; //ADC_DAT=1;/* SBUF=adc_val[0]; DelayMs(100); SBUF=adc_val[1]; DelayMs(100); SBUF=adc_val[2]; DelayMs(100); */adc_val1=(adc_val[0]+adc_val[1])&0xfe; if(adc_val1==adc_val[2]) { break;}}}//ADC讀取一位unsignedcharadc_getone(void){unsignedcharadc_u=0,adc_a;//臨時(shí)存放器 for(adc_a=1;adc_a<=8;adc_a++) {ADC_CLK=0;//產(chǎn)生ADC時(shí)鐘下降沿 adc_u<<=1;//移動(dòng) if(ADC_DAT==1) {adc_u|=0x01;//讀數(shù)據(jù)} else {adc_u&=~0x01; }ADC_CLK=1;//時(shí)鐘上升沿 DelayUs(100); } returnadc_u;}//雙路adc測(cè)量voidadc_test(void){unsignedlongadc_t1=0,adc_t2=0;//存放采樣高8位 unsignedcharadc_ok=0;//記錄采樣成功 for(;;) {unsignedcharadc_3;//存放采樣第9、10位 ADC_CSN=0;//啟動(dòng)采樣 DelayUs(250);//延時(shí)等待采樣成功 DelayUs(150);//延時(shí)等待采樣成功 adc_1=adc_getone();//adc讀取第一位 adc_2=adc_getone();//adc讀取第二位 adc_3=adc_getone();//adc讀取第三位 ADC_CSN=1;//停止采樣 ADC_CLK=1;//時(shí)鐘恢復(fù) if(((adc_1+adc_2)&0xfe)==adc_3) {//=============================== //轉(zhuǎn)換數(shù)據(jù)格式,取出10位AD數(shù)據(jù) /* adc_1<<=2;adc_2<<=2;adc_3>>=4;adc_2|=(adc_3&0x0003); adc_3>>=2; adc_1|=(adc_3&0x0003);*/ //================================ adc_t1+=adc_1;//存當(dāng)前采樣數(shù)據(jù) adc_t2+=adc_2;//存當(dāng)前采樣數(shù)據(jù) adc_ok++;//采樣成功數(shù)+1 } if(adc_ok==5) {//取5次采樣平均數(shù) adc_1=adc_t1/5; adc_2=adc_t2/5; break;//跳出整個(gè)for循環(huán)}}}//報(bào)警儀顯示的程序voidBaojingyi(void){unsignedcharkey_temp;//鍵值 key_temp=keyscan(); if(state_1==0) {//氣體報(bào)警器 unsignedintbai_w,shi_w,ge_w;//顯存 unsignedlongadc_3,gas_2;//把二進(jìn)制轉(zhuǎn)換BCD adc_test();//進(jìn)行adc測(cè)量 adc_3=adc_1;//計(jì)算氣體的BCD bai_w=adc_3/100; //計(jì)算氣體百位 shi_w=(adc_3%100)/10;//計(jì)算氣體十位 ge_w=adc_3%10;//計(jì)算氣體個(gè)位 LCD_write_char(0,1,''); //Spacebar LCD_write_char(1,1,'G'); //G LCD_write_char(2,1,'a'); //a LCD_write_char(3,1,'s'); //s LCD_write_char(4,1,':'); //: LCD_write_char(5,1,bai_w+0x30); //顯示氣體百位 LCD_write_char(6,1,shi_w+0x30); //顯示氣體十位 LCD_write_char(7,1,ge_w+0x30); //顯示氣體個(gè)位 LCD_write_char(8,1,''); //Spacebar LCD_write_char(9,1,''); //Spacebar //disp_ds18();//刷新溫度 //顯示時(shí)間的 Time_Now(); if((adc_3>gas_1)||(disp_ds18()>wen_1)) { JON_ON();//繼電器閉合 LED1_ON();//LED發(fā)亮 mms_Ring(1);//喇叭告警 _nop_(); LED1_OFF();} else {JON_OFF();//解除警報(bào)了 _nop_(); LED1_OFF();} if(key_temp==1) {state_1=1;//設(shè)置報(bào)警 WriteCommand(0x0c);//顯示開(kāi)及光標(biāo)設(shè)置} elseif(key_temp==5) {state_1=2;//設(shè)置時(shí)間 state_wnl1=2; state_wnl2=4; LCD_wannianli(2);//刷新顯示的 WriteCommand(0x80+2);//光標(biāo)位置的 }}elseif(state_1==1) {unsignedintbai_w,shi_w,ge_w;//顯存 unsignedlongadc_3,gas_2;//把二進(jìn)制轉(zhuǎn)換BCD //增加減少氣體告警閾值 if(key_temp==2) {gas_1++; } elseif(key_temp==3) {gas_1--;} elseif(key_temp==6) {wen_1++;} elseif(key_temp==7) {wen_1--;} gas_2=gas_1;//計(jì)算告警閾值的BCD bai_w=gas_2/100; //計(jì)算告警閾值百位 shi_w=(gas_2%100)/10;//計(jì)算告警閾值十位 ge_w=gas_2%10;//計(jì)算告警閾值個(gè)位 LCD_write_char(0,1,''); //Spacebar LCD_write_char(1,1,'G'); //G LCD_write_char(2,1,'a'); //a LCD_write_char(3,1,'s'); //s LCD_write_char(4,1,''); //Spacebar LCD_write_char(5,1,'S'); //S LCD_write_char(6,1,'e'); //e LCD_write_char(7,1,'t'); //t LCD_write_char(8,1,':'); //: LCD_write_char(9,1,''); //Spacebar LCD_write_char(10,1,bai_w+0x30); //顯示氣體告警閾值百位 LCD_write_char(11,1,shi_w+0x30); //顯示氣體告警閾值十位 LCD_write_char(12,1,ge_w+0x30); //顯示氣體告警閾值個(gè)位 LCD_write_char(13,1,''); //Spacebar LCD_write_char(14,1,''); //Spacebar LCD_write_char(15,1,''); //Spacebar //gas_2=gas_1;//計(jì)算告警閾值的BCD bai_w=wen_1/100; //計(jì)算告警閾值百位 shi_w=(wen_1%100)/10;//計(jì)算告警閾值十位 ge_w=wen_1%10;//計(jì)算告警閾值個(gè)位 LCD_write_char(0,0,''); //Spacebar LCD_write_char(1,0,'T'); //G LCD_write_char(2,0,'e'); //a LCD_write_char(3,0,'p'); //s LCD_write_char(4,0,''); //Spacebar LCD_write_char(5,0,'S'); //S LCD_write_char(6,0,'e'); //e LCD_write_char(7,0,'t'); //t LCD_write_char(8,0,':'); //: LCD_write_char(9,0,''); //Spacebar LCD_write_char(10,0,bai_w+0x30); //顯示氣體告警閾值百位 LCD_write_char(11,0,shi_w+0x30); //顯示氣體告警閾值十位 LCD_write_char(12,0,ge_w+0x30); //顯示氣體告警閾值個(gè)位 LCD_write_char(13,0,''); //Spacebar LCD_write_char(14,0,''); //Spacebar LCD_write_char(15,0,''); //Spacebar if(key_temp==1) {state_1=1;//設(shè)置報(bào)警 WriteCommand(0x0c);//顯示開(kāi)及光標(biāo)設(shè)置 } elseif(key_temp==5) {state_1=2;//設(shè)置時(shí)間 state_wnl1=2; state_wnl2=4; LCD_wannianli(2);//刷新顯示的 WriteCommand(0x80+2);//光標(biāo)位置的} elseif(key_temp==4) {state_1=0; //測(cè)量 WriteCommand(0x0c);//顯示開(kāi)及光標(biāo)設(shè)置 }}elseif(state_1==2) {if(k

溫馨提示

  • 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)論