基于單片機(jī)的火災(zāi)報警系統(tǒng)的設(shè)計_第1頁
基于單片機(jī)的火災(zāi)報警系統(tǒng)的設(shè)計_第2頁
基于單片機(jī)的火災(zāi)報警系統(tǒng)的設(shè)計_第3頁
基于單片機(jī)的火災(zāi)報警系統(tǒng)的設(shè)計_第4頁
基于單片機(jī)的火災(zāi)報警系統(tǒng)的設(shè)計_第5頁
已閱讀5頁,還剩42頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、 編 號: 審定成績: 畢業(yè)設(shè)計(論文)設(shè)計(論文)題目:基于單片機(jī)的火災(zāi)報警系統(tǒng)的設(shè)計摘 要近年來全國火災(zāi)事故頻繁發(fā)生,造成人、財、物的巨大損失。以前,火災(zāi)的報警和控制都很落后,造成了巨大的損失。現(xiàn)在,用戶對火災(zāi)報警以至自動消防系統(tǒng)的要求越來越高。針對多起火災(zāi)事故的分析,排除水壓不足等因素外,現(xiàn)有的消防隔斷未能起到應(yīng)有的作用,是造成重大損失的關(guān)鍵?,F(xiàn)在的數(shù)字式控制系統(tǒng)對火災(zāi)的報警和預(yù)處理都起到了重要的作用。因此,對火災(zāi)的報警系統(tǒng)是很重要的。本論文以電阻式煙霧傳感器和單片機(jī)技術(shù)為核心并與其他電子技術(shù)相結(jié)合, 設(shè)計出一種技術(shù)水平較好的煙霧報警器。其中選用mq-2型半導(dǎo)體可燃?xì)怏w敏感元件煙霧傳感器

2、實(shí)現(xiàn)煙霧的檢測,具有靈敏度高、響應(yīng)快、抗干擾能力強(qiáng)等優(yōu)點(diǎn),而且價格低廉,使用壽命長。選用的at89c52單片機(jī),它具有高速、低功耗、超強(qiáng)抗干擾等優(yōu)點(diǎn),是目前同類技術(shù)中應(yīng)用最廣的,且其擴(kuò)展電路很廣泛。不僅用了煙霧傳感器還用到了數(shù)字式溫度傳感器,這對報警系統(tǒng)的精度更加的完善。以at89c52單片機(jī)和mq-2型半導(dǎo)體電阻式煙霧傳感器及數(shù)字式溫度傳感器為核心設(shè)計的火災(zāi)報警器可實(shí)現(xiàn)聲光報警、故障自診斷、報警限設(shè)置、延時報警及等功能。是一種結(jié)構(gòu)簡單、性能 穩(wěn)定、使用方便、價格低廉、智能化的煙霧報警器,具有一定的實(shí)用價值?!娟P(guān)鍵詞】at89c52單片機(jī) 模數(shù)轉(zhuǎn)換器 ds18b20 報警abstractfre

3、quent occurrence of fire accidents in recent years,making a great loss of people, financial, and material.previously, the fire alarm and control are very backward, causing huge losses.nowadays,fire as well as automatic fire alarm systems have become increasingly demanded by user.for the analysis of

4、fire accidents,except for eliminate water pressure less,the existing fire partition should not play a role, is the key to cause significant damage.now the digital control system of fire alarm and pre-have played an important role.therefore, the fire alarm system is very important.this paper design a

5、 better smoke alarm with smoke sensors and scd technology as the core,and combines with other electronic technology.the alarm use mq-2 combustible gas sensor-type semiconductor to achieve smoke smoke detection sensors with high sensitivity, fast response, the advantages of anti-interference ability,

6、 and low cost and long service life.at89s52 is high speed, low power, super anti-jamming, etc, is the same technology the most widely used, and the expansion of the circuit is very wide.not only with the smoke sensor also uses a digital temperature sensor, the accuracy of this alarm system more perf

7、ect.the fire alarm with at89c52 microcontroller and mq-2-type semiconductor resistance type smoke sensor and digital temperature sensor as the core can realizes sound and light alarm, fault diagnosis, concentration display, alarm limit settings, delay alarm and so on.it is a simple structure, stable

8、 performance, easy to use, inexpensive, intelligent smoke detectors,which has some practical value.【key words】at89s52 scd adc ds18b20 alarm目 錄 前 言火的應(yīng)用對人類的文明和社會的進(jìn)步起了巨大的推動作用。然而火一旦失去了控制,也會給人類帶來巨大的災(zāi)難,形成火災(zāi)。據(jù)統(tǒng)計,在眾多災(zāi)種中,火災(zāi)造成的直接損失約為地震的5倍,僅次于干旱和洪澇,而火災(zāi)發(fā)生的頻度則居于各災(zāi)種之首。千百年來,人類和火災(zāi)進(jìn)行了長期的斗爭,積累了許多防火、滅火的經(jīng)驗(yàn)教訓(xùn)。本世紀(jì)70年代后期,

9、開始出現(xiàn)門新興的多學(xué)科交叉應(yīng)用基礎(chǔ)科學(xué)火災(zāi)科學(xué),其中心內(nèi)容是用現(xiàn)代高科技手段研究火災(zāi)發(fā)生、發(fā)展和防治的機(jī)理和規(guī)律,為火災(zāi)防治提供新的思想、理論和方法。使得火災(zāi)研究進(jìn)入了科學(xué)化、系統(tǒng)化的軌道,并促進(jìn)了防火、滅火技術(shù)的進(jìn)步。雖然科學(xué)技術(shù)的進(jìn)步,使人類的防火、滅火手段發(fā)牛了很大的變化,取得了可喜的成績,然而,隨著社會經(jīng)濟(jì)的飛速發(fā)展,城市化進(jìn)程的加快和人口的迅速增長,我國火災(zāi)發(fā)生的次數(shù),造成的損失呈上升趨勢。另一方面,住宅的商品化,高層建筑和超高層建筑越來越多。由于高層建筑火災(zāi)具有火災(zāi)蔓延速度快,火災(zāi)隱患多,撲救工作和人員疏散困難的特點(diǎn),因此高層建筑一旦發(fā)生火災(zāi),后果是不堪設(shè)想的。一座高大的建筑物內(nèi)可

10、容納成干上萬的人在里面工作和生活,安全是每個人考慮的首要問題,而威脅人類生存、侵吞人類生命財產(chǎn)的災(zāi)害中,火災(zāi)又是一種多發(fā)、常見的災(zāi)害,因此防止火災(zāi)發(fā)生,減少火災(zāi)損失就成為人們普遍關(guān)心和深入研究的永恒課題了。為了減少火災(zāi)的損失,防止火災(zāi)和火災(zāi)的報警是很重要的。在本課題中我將介紹一種火災(zāi)報警系統(tǒng)。數(shù)字式的控制單元,具有結(jié)構(gòu)簡單、性能穩(wěn)定、使用方便、價格低廉、智能化的煙霧報警器。這給客戶帶來一種安心和安全保障更好的生活。這使得每個人能安居樂業(yè),為人民服務(wù),為國家的繁榮富強(qiáng)做出貢獻(xiàn)。第一章 緒 論 第一節(jié) 概述 作為一個完整的火災(zāi)報警器系統(tǒng),必須包含以下幾個部分:系統(tǒng)控制模塊,火災(zāi)探測模塊,數(shù)據(jù)轉(zhuǎn)換模

11、塊以及報警模塊。在科技高速發(fā)展的今天,單片機(jī)技術(shù)已經(jīng)在電子制造等領(lǐng)域占有很重要的位子,以單片機(jī)作為系統(tǒng)的控制核心,具有體積小、功能強(qiáng)大、精度高、響應(yīng)快等優(yōu)點(diǎn)。隨著“信息時代”的到來,傳感器作為一種信息采集裝置扮演者很重要的角色,相對于傳統(tǒng)的測溫裝置,傳感器具有測溫精度高、響應(yīng)速度快等優(yōu)勢。本文所要介紹的就是一個基于單片機(jī)和傳感器的火災(zāi)報警系統(tǒng)的設(shè)計。第2節(jié) 消防報警產(chǎn)品的現(xiàn)狀和特點(diǎn)消防報警產(chǎn)品是一個系列產(chǎn)品,包括火災(zāi)探測設(shè)備、信息傳輸設(shè)備、報警分析控制器、消防控制聯(lián)動。是物理傳感技術(shù)、自動控制、計算機(jī)技術(shù)、數(shù)據(jù)傳輸和管理、智能樓宇等技術(shù)的綜合集成,屬于高新技術(shù)。隨著電子技術(shù)和計算機(jī)技術(shù)的迅速發(fā)

12、展,火災(zāi)自動報警系統(tǒng)的結(jié)構(gòu)、形式越來越靈活多樣,很難精確劃分為幾種固定的模式?;馂?zāi)自動報警技術(shù)趨向于智能化系統(tǒng),這種系統(tǒng)可組合成任何形式的火災(zāi)自動報警網(wǎng)絡(luò)形式,既可以是區(qū)域報警系統(tǒng),又可以是集中報警系統(tǒng)或控制中心報警系統(tǒng)形式。所謂智能火災(zāi)自動報警系統(tǒng),應(yīng)當(dāng)是:使用探測器件將火災(zāi)發(fā)生期間所產(chǎn)生的煙、溫、光等信號以模擬量形式,連同外界相關(guān)的環(huán)境參數(shù)一起傳送給報警器,報警器再根據(jù)獲取的數(shù)據(jù)及內(nèi)部存儲的大量數(shù)據(jù),利用火災(zāi)模型判據(jù)來判斷火災(zāi)是否存在,這樣的系統(tǒng)稱為智能火災(zāi)自動報警系統(tǒng)。由于該系統(tǒng)為解決火災(zāi)報警系統(tǒng)存在的兩個難題(誤報、漏報)提供了新的方法和手段,并在處理火災(zāi)真?zhèn)畏矫姹憩F(xiàn)出明顯的有效性和創(chuàng)

13、新性,這是火災(zāi)自動報警系統(tǒng)在技術(shù)上的飛躍。從傳統(tǒng)型走向智能型,是國內(nèi)外火災(zāi)自動報警系統(tǒng)技術(shù)發(fā)展的必然趨勢。智能火災(zāi)自動報警控制系統(tǒng)具有如下特點(diǎn):(1)為全面有效地反映被監(jiān)視環(huán)境的各種細(xì)微變化,智能系統(tǒng)采用了設(shè)有專用芯片的模擬量探測器,對濕度和灰塵等影響實(shí)施自動補(bǔ)償,對電干擾及線路分布參數(shù)的影響進(jìn)行自動處理,從而為實(shí)現(xiàn)各種智能特性、解決無災(zāi)誤報和準(zhǔn)確報警奠定了技術(shù)基礎(chǔ);(2)系統(tǒng)采用主從式網(wǎng)絡(luò)結(jié)構(gòu),解決了對不同工程的適應(yīng)性,又提高了運(yùn)行的可靠性;(3)利用全總線計算機(jī)通信技術(shù),既完成了總線報警,又實(shí)現(xiàn)了總線聯(lián)動控制,徹底避免了控制輸出與執(zhí)行機(jī)構(gòu)之間的長距離穿線布管,大大方便了系統(tǒng)布線設(shè)計和現(xiàn)場施

14、工;(4)系統(tǒng)采用大容量的控制矩陣和交叉查尋軟件包,以軟件編程代替了硬件組合,提高了消防聯(lián)動的靈活性和可修改性;(5)具有豐富的自診斷功能,為系統(tǒng)維護(hù)及正常運(yùn)行提供了有利條件。第3節(jié) 本章小結(jié)本章的主要內(nèi)容是對于火災(zāi)報警器系統(tǒng)的一個概述以及對產(chǎn)品的發(fā)展現(xiàn)狀和特點(diǎn)的一個分析介紹。第二章 火災(zāi)報警器系統(tǒng)總體設(shè)計第1節(jié) 系統(tǒng)概述本設(shè)計可以對外界溫度進(jìn)行實(shí)時采集和檢測,當(dāng)所測溫度高于臨界溫度時自動報警。本系統(tǒng)包含以下幾個模塊:at89s52單片機(jī)最小控制系統(tǒng),以ds18b20數(shù)字傳感器為核心的溫度探測模塊,a/d轉(zhuǎn)換模塊以及報警模塊。系統(tǒng)框圖見圖2.1。溫度信號采集電路將溫度信號以數(shù)字信號的形式送入單

15、片機(jī)。單片機(jī)對該數(shù)字信號進(jìn)行濾波處理,并對處理后的數(shù)據(jù)進(jìn)行分析,是否大于或等于某個預(yù)設(shè)值,即報警臨界溫度。如果大于則啟動報警電路發(fā)出報警聲音,反之則為正常狀態(tài)。第2節(jié) 硬件選型1、 cpu選型:對于cpu的選型,要求cpu功能強(qiáng)大,可靠性高,性價比高,精度和響應(yīng)速度高?;谏鲜鲆?,本設(shè)計選用at89s52單片機(jī)作為系統(tǒng)的cpu。2、 傳感器選型: 對于溫度傳感器的選型,要求傳感器的測溫精度高、響應(yīng)速度快、抗干擾力好、可靠性高。基于上述要求,本設(shè)計選用ds18b20傳感器最為系統(tǒng)采集溫度信號用的傳感器。煙霧傳感器我們選擇mq-2型半導(dǎo)體可燃?xì)怏w敏感元件煙霧傳感器實(shí)現(xiàn)煙霧的檢測,它具有靈敏度高、

16、響應(yīng)快、抗干擾能力強(qiáng)等優(yōu)點(diǎn),而且價格低廉,使用壽命長。3、 at89s52簡介:at89s52是一種低功耗、高性能cmos8位微控制器,具有8k在系統(tǒng)可編程flash 存儲器。使用atmel公司高密度非易失性存儲器技術(shù)制造,與工業(yè)80c51產(chǎn)品指令和引腳完全兼容。片上flash允許程序存儲器在系統(tǒng)可編程,亦適于常規(guī)編程器。在單芯片上,擁有靈巧的8位cpu和在系統(tǒng)可編程flash,使得at89s52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、有效的解決方案。1、 at89s52的標(biāo)準(zhǔn)功能: 8k字節(jié)flash,256字節(jié)ram, 32位i/o口線,看門狗定時器,2個數(shù)據(jù)指針,三個16位定時器/計數(shù)器,一

17、個6向量2級中斷結(jié)構(gòu),全雙工串行口,片內(nèi)晶振及時鐘電路。另外,at89s52可降至0hz靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,cpu 停止工作,允許ram、定時器/計數(shù)器、串口、中斷繼續(xù)工作。掉電保護(hù)方式下,ram內(nèi)容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停止,直到下一個中斷或硬件復(fù)位為止。2、 at89s52引腳功能介紹:at89s51單片機(jī)為40引腳雙列直插式封裝,其引腳排列和邏輯符號如圖2.2所示。 圖2.2 at89s52引腳圖p0口:p0口是一個8位漏極開路的雙向i/o口。作為輸出口,每位能驅(qū)動8個ttl邏輯電平。對p0端口寫“1”時,引腳用作高阻抗輸入。當(dāng)訪問外部程序

18、和數(shù)據(jù)存儲器時,p0口也被作為低8位地址/數(shù)據(jù)復(fù)用。在這種模式下,p0具有內(nèi)部上拉電阻。在flash編程時,p0口也用來接收指令字節(jié);在程序校驗(yàn)時,輸出指令字節(jié)。程序校驗(yàn)時,需要外部上拉電阻。p1口:p1口是一個具有內(nèi)部上拉電阻的8 位雙向i/o口,p1輸出緩沖器能驅(qū)動4個ttl邏輯電平。對p1端口寫“1”時,內(nèi)部上拉電阻把端口拉高,此時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(iil)。 此外,p1.0和p1.2分別作定時器/計數(shù)器2的外部計數(shù)輸入(p1.0/t2)和時器/計數(shù)器2 的觸發(fā)輸入(p1.1/t2ex),具體如下表所示。 在flash編程

19、和校驗(yàn)時,p1口接收低8位地址字節(jié)。 引腳號第二功能 p1.0 t2(定時器/計數(shù)器t2的外部計數(shù)輸入),時鐘輸出 p1.1 t2ex(定時器/計數(shù)器t2的捕捉/重載觸發(fā)信號和方向控制) p1.5 mosi(在系統(tǒng)編程用) p1.6 miso(在系統(tǒng)編程用) p1.7 sck(在系統(tǒng)編程用) p2 口:p2 口是一個具有內(nèi)部上拉電阻的8 位雙向i/o 口,p2 輸出緩沖器能驅(qū)動4個ttl邏輯電平。對p2端口寫“1”時,內(nèi)部上拉電阻把端口拉高,此時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(iil)。在訪問外部程序存儲器或用16位地址讀取外部數(shù)據(jù)存儲器(例

20、如執(zhí)行movx dptr)時,p2口送出高八位地址。在這種應(yīng)用中,p2口使用很強(qiáng)的內(nèi)部上拉發(fā)送1。在使用8位地址(如movx ri)訪問外部數(shù)據(jù)存儲器時,p2口輸出p2鎖存器的內(nèi)容。在flash編程和校驗(yàn)時,p2口也接收高8位地址字節(jié)和一些控制信號。p3 口:p3 口是一個具有內(nèi)部上拉電阻的8 位雙向i/o 口,p2 輸出緩沖器能驅(qū)動4個ttl邏輯電平。對p3端口寫“1”時,內(nèi)部上拉電阻把端口拉高,此時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(iil)。p3口亦作為at89s52特殊功能(第二功能)使用,如下表所示。 在flash編程和校驗(yàn)時,p3口也

21、接收一些控制信號。 端口引腳第二功能p3.0 rxd(串行輸入口)p3.1 txd(串行輸出口)p3.2 into(外中斷0)p3.3 int1(外中斷1)p3.4 to(定時/計數(shù)器0)p3.5 t1(定時/計數(shù)器1)p3.6 wr(外部數(shù)據(jù)存儲器寫選通)p3.7 rd(外部數(shù)據(jù)存儲器讀選通)此外,p3口還接收一些用于flash閃存編程和程序校驗(yàn)的控制信號。rst復(fù)位輸入。當(dāng)振蕩器工作時,rst引腳出現(xiàn)兩個機(jī)器周期以上高電平將是單片機(jī)復(fù)位。ale/prog當(dāng)訪問外部程序存儲器或數(shù)據(jù)存儲器時,ale(地址鎖存允許)輸出脈沖用于鎖存地址的低8位字節(jié)。一般情況下,ale仍以時鐘振蕩頻率的1/6輸出

22、固定的脈沖信號,因此它可對外輸出時鐘或用于定時目的。要注意的是:每當(dāng)訪問外部數(shù)據(jù)存儲器時將跳過一個ale脈沖。對flash存儲器編程期間,該引腳還用于輸入編程脈沖(prog)。如有必要,可通過對特殊功能寄存器(sfr)區(qū)中的8eh單元的d0位置位,可禁止ale操作。該位置位后,只有一條movx和movc指令才能將ale激活。此外,該引腳會被微弱拉高,單片機(jī)執(zhí)行外部程序時,應(yīng)設(shè)置ale禁止位無效。psen程序儲存允許(psen)輸出是外部程序存儲器的讀選通信號,當(dāng)at89c52由外部程序存儲器取指令(或數(shù)據(jù))時,每個機(jī)器周期兩次psen有效,即輸出兩個脈沖,在此期間,當(dāng)訪問外部數(shù)據(jù)存儲器,將跳過

23、兩次psen信號。ea/vpp外部訪問允許,欲使cpu僅訪問外部程序存儲器(地址為0000h-ffffh),ea端必須保持低電平(接地)。需注意的是:如果加密位lb1被編程,復(fù)位時內(nèi)部會鎖存ea端狀態(tài)。如ea端為高電平(接vcc端),cpu則執(zhí)行內(nèi)部程序存儲器的指令。flash存儲器編程時,該引腳加上+12v的編程允許電源vpp,當(dāng)然這必須是該器件是使用12v編程電壓vpp。4、 ds18b20簡介:dallas最新單線數(shù)字溫度傳感器ds18b20是一種新型的“一線器件”,其體積更小、更適用于多種場合、且適用電壓更寬、更經(jīng)濟(jì)。dallas 半導(dǎo)體公司的數(shù)字化溫度傳感器ds18b20是世界上第一

24、片支持“一線總線”接口的溫度傳感器。溫度測量范圍為-55+125 攝氏度,可編程為9位12 位轉(zhuǎn)換精度,測溫分辨率可達(dá)0.0625攝氏度,分辨率設(shè)定參數(shù)以及用戶設(shè)定的報警溫度存儲在eeprom 中,掉電后依然保存。被測溫度用符號擴(kuò)展的16位數(shù)字量方式串行輸出;其工作電源既可以在遠(yuǎn)端引入,也可以采用寄生電源方式產(chǎn)生;多個ds18b20可以并聯(lián)到3 根或2 根線上,cpu只需一根端口線就能與諸多ds18b20 通信,占用微處理器的端口較少,可節(jié)省大量的引線和邏輯電路。因此用它來組成一個測溫系統(tǒng),具有線路簡單,在一根通信線,可以掛很多這樣的數(shù)字溫度計,十分方便。1、 ds18b20性能特點(diǎn): 獨(dú)特的

25、單線接口方式,ds18b20在與微處理器連接時僅需要一條口線即可實(shí)現(xiàn)微處理器與ds18b20的雙向通訊 ds18b20支持多點(diǎn)組網(wǎng)功能,多個ds18b20可以并聯(lián)在唯一的三線上,實(shí)現(xiàn)組網(wǎng)多點(diǎn)測溫 ds18b20在使用中不需要任何外圍元件,全部傳感元件及轉(zhuǎn)換電路集成在形如一只三極管的集成電路內(nèi) 適應(yīng)電壓范圍更寬,電壓范圍:3.05.5v,在寄生電源方式下可由數(shù)據(jù)線供電 溫范圍55125,在-10+85時精度為0.5 零待機(jī)功耗 可編程的分辨率為912位,對應(yīng)的可分辨溫度分別為0.5、0.25、0.125和0.0625,可實(shí)現(xiàn)高精度測溫 在9位分辨率時最多在93.75ms內(nèi)把溫度轉(zhuǎn)換為數(shù)字,12位

26、分辨率時最多在750ms內(nèi)把溫度值轉(zhuǎn)換為數(shù)字,速度更快 用戶可定義報警設(shè)置 報警搜索命令識別并標(biāo)志超過程序限定溫度(溫度報警條件)的器件 測量結(jié)果直接輸出數(shù)字溫度信號,以一線總線串行傳送給cpu,同時可傳送crc校驗(yàn)碼,具有極強(qiáng)的抗干擾糾錯能力 負(fù)電壓特性,電源極性接反時,溫度計不會因發(fā)熱而燒毀,但不能正常工作 以上特點(diǎn)使ds18b20非常適用與多點(diǎn)、遠(yuǎn)距離溫度檢測系統(tǒng)。ds18b20內(nèi)部結(jié)構(gòu)主要由四部分組成:64位光刻rom、溫度傳感器、非揮發(fā)的溫度報警觸發(fā)器th和tl、配置寄存器。ds18b20的管腳排列、各種封裝形式如圖 2.3所示,dq 為數(shù)據(jù)輸入/輸出引腳。開漏單總線接口引腳。當(dāng)被用

27、著在寄生電源下,也可以向器件提供電源;gnd為地信號;vdd為可選擇的vdd引腳。當(dāng)工作于寄生電源時,此引腳必須接地。其電路圖如圖2.4所示。 圖2.3 封裝圖、 圖2.4 傳感器電路圖 2、 ds18b20內(nèi)部結(jié)構(gòu):圖2.4為ds1820的內(nèi)部框圖,它主要包括寄生電源、溫度傳感器、64位激光rom單線接口、存放中間數(shù)據(jù)的高速暫存器(內(nèi)含便箋式ram),用于存儲用戶設(shè)定的溫度上下限值的th和tl觸發(fā)器存儲與控制邏輯、8位循環(huán)冗余校驗(yàn)碼(crc)發(fā)生器等七部分。 圖2.5 ds18b20內(nèi)部結(jié)構(gòu)圖ds18b20有4個主要的數(shù)據(jù)部件:(1)光刻rom中的64位序列號是出廠前被光刻好的,它可以看作是

28、該ds18b20的地址序列碼。64位光刻rom的排列是:開始8位(28h)是產(chǎn)品類型標(biāo)號,接著的48位是該ds18b20自身的序列號,最后8位是前面56位的循環(huán)冗余校驗(yàn)碼(crc=x8+x5+x4+1)。光刻rom的作用是使每一ds18b20都各不相同,這樣就可以實(shí)現(xiàn)一根總線上掛接多個ds18b20的目的。(2)ds18b20中的溫度傳感器可完成對溫度的測量,以12位轉(zhuǎn)化為例:用16位符號擴(kuò)展的二進(jìn)制補(bǔ)碼讀數(shù)形式提供,以0.0625/lsb形式表達(dá),其中s為符號位。其中dq為數(shù)字信號輸入/輸出端;gnd為電源地;vdd為外接供電電源輸入端(采用寄生電源供電方式時接地)。(3)ds18b20溫度

29、傳感器的存儲器:ds18b20溫度傳感器的內(nèi)部存儲器包括一個高速暫存ram和一個非易失性的可電擦除的eepram,后者存放高溫度和低溫度觸發(fā)器th、tl和結(jié)構(gòu)寄存器。(4)配置寄存器3、 ds18b20工作方式:ds18b20采用單總線工作方式,由于所有信號(控制和數(shù)據(jù))都通過單總線傳輸,因此總線的時序邏輯必須非常嚴(yán)格,其工作時序如圖2.6所示: 圖2.6 ds18b20工作時序圖4、 ds18b20測溫原理:ds18b20的測溫原理如圖2.7所示,圖中低溫度系數(shù)晶振的振蕩頻率受溫度的影響很小用于產(chǎn)生固定頻率的脈沖信號送給減法計數(shù)器1,高溫度系數(shù)晶振隨溫度變化其震蕩頻率明顯改變,所產(chǎn)生的信號作

30、為減法計數(shù)器2的脈沖輸入,圖中還隱含著計數(shù)門,當(dāng)計數(shù)門打開時,ds18b20就對低溫度系數(shù)振蕩器產(chǎn)生的時鐘脈沖后進(jìn)行計數(shù),進(jìn)而完成溫度測量.計數(shù)門的開啟時間由高溫度系數(shù)振蕩器來決定,每次測量前,首先將-55 所對應(yīng)的基數(shù)分別置入減法計數(shù)器1和溫度寄存器中,減法計數(shù)器1和溫度寄存器被預(yù)置在-55 所對應(yīng)的一個基數(shù)值。減法計數(shù)器1對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進(jìn)行減法計數(shù),當(dāng)減法計數(shù)器1的預(yù)置值減到0時溫度寄存器的值將加1,減法計數(shù)器 1的預(yù)置將重新被裝入,減法計數(shù)器1重新開始對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進(jìn)行計數(shù),如此循環(huán)直到減法計數(shù)器2計數(shù)到0時,停止溫度寄存器值的累加,此時溫度寄存器中的數(shù)值

31、即為所測溫圖2中的斜率累加器用于補(bǔ)償和修正測溫過程中的非線性其輸出用,于修正減法計數(shù)器的預(yù)置值,只要計數(shù)門仍未關(guān)閉就重復(fù)上述過程,直至溫度寄存器值達(dá)到被測溫度值,這就是ds18b20的測溫原理。 圖2.7 ds18b20測溫原理圖第3節(jié) 系統(tǒng)軟件總體設(shè)計系統(tǒng)軟件部分主要實(shí)現(xiàn)對火災(zāi)報警系統(tǒng)的測試工作,由煙霧傳感數(shù)據(jù)采集程序、溫度采集程序、聲光報警程序等三個部分組成。其中,煙霧傳感數(shù)據(jù)采集程序完成對煙霧濃度的采集并進(jìn)行數(shù)據(jù)轉(zhuǎn)換;溫度采集程序顯示對現(xiàn)場的溫度進(jìn)行采集;報警程序設(shè)置報警的下限,當(dāng)外界指標(biāo)超出限制時,將進(jìn)行聲光報警。圖?系統(tǒng)軟件部分主程序流程圖。第4節(jié) 本章小結(jié) 本章主要描述了系統(tǒng)軟硬件

32、的整體設(shè)計思路,并給出了系統(tǒng)框圖和流程圖。在硬件部分給出了部分元器件的選型并對主要元器件at89s52和ds18b20等的引腳和功能進(jìn)行了詳細(xì)的介紹。第3章 系統(tǒng)設(shè)計實(shí)現(xiàn)第1節(jié) 硬件設(shè)計1、 at89s52單片機(jī)最小系統(tǒng)設(shè)計:1、 單片機(jī)最小系統(tǒng)概述及原理圖51系列單片機(jī)最小系統(tǒng)包含51單片機(jī)芯片,復(fù)位電路和振蕩電路三個部分,本設(shè)計采用at89s52單片機(jī)芯片,芯片有40腳,包含32位i/o口線,看門狗定時器,2個數(shù)據(jù)指針,三個16位定時器/計數(shù)器,一個6向量2級中斷結(jié)構(gòu),全雙工串行口,片內(nèi)晶振及時鐘電路。時鐘電路通過內(nèi)部時鐘源提供時鐘,外部只需要接一個振蕩電路,振蕩電路中晶振是12mhz。復(fù)

33、位電路電路采用按鍵復(fù)位方式,當(dāng)單片機(jī)復(fù)位引腳檢測到至少24個時鐘周期的高電平的時候會自動復(fù)位系統(tǒng),系統(tǒng)會重新啟動。單片機(jī)最小系統(tǒng)設(shè)計圖如圖3.1所示。圖3.1 單片機(jī)最小系統(tǒng)圖 2、復(fù)位電路單片機(jī)復(fù)位電路是指單片機(jī)的初始化操作。單片機(jī)啟動運(yùn)行時,都需要先復(fù)位,其作用是使cpu和系統(tǒng)中其他部件處于一個確定的初始狀態(tài),并從這個狀態(tài)開始工作。因而,復(fù)位是一個重要的操作方式。但單片機(jī)本身是不能自動進(jìn)行復(fù)位的,必須配合相應(yīng)的外部電路才能實(shí)現(xiàn)。 (1) 復(fù)位電路的功能: 系統(tǒng)上電時提供復(fù)位信號,直至系統(tǒng)電源穩(wěn)定后,撤銷復(fù)位信號。本系統(tǒng)采用的是開關(guān)復(fù)位形式。開關(guān)復(fù)位可以在電源接通后,單片機(jī)自動復(fù)位,并且在單

34、片機(jī)運(yùn)行期間,用開關(guān)操作也能使單片機(jī)復(fù)位。上電后,由于電容的充電和反相門的作用,使rst持續(xù)一段時間的高電平。當(dāng)單片機(jī)已在運(yùn)行當(dāng)中時,按下復(fù)位鍵k后松開,也能使rst為一段時間的高電平,從而實(shí)現(xiàn)上電或開關(guān)復(fù)位的操作,復(fù)位電路如圖3.2圖?3、晶振原理 晶振是為電路提供頻率基準(zhǔn)的元器件,通常分成有源晶振和無源晶振兩個大類,無源晶振需要芯片內(nèi)部有振蕩器,并且晶振的信號電壓根據(jù)起振電路而定,允許不同的電壓,但無源晶振通常信號質(zhì)量和精度較差,需要精確匹配外圍電路(電感、電容、電阻等),如需更換晶振時要同時更換外圍的電路。有源晶振不需要芯片的內(nèi)部振蕩器,可以提供高精度的頻率基準(zhǔn),信號質(zhì)量也較無源晶振要好

35、。因價格等因素,實(shí)際應(yīng)用中多采用無源晶振設(shè)計的電路居多,本系統(tǒng)也采用的是無源晶振。如圖?所示就有一個頻率為12m的晶振,匹配電容是兩個30p的瓷片電容,使單片機(jī)正常工作。圖? 2、 溫度采集系統(tǒng)設(shè)計:ds18b20的電源供電方式有兩種:外部供電方式和寄生電源方式。本設(shè)計中采用前者作為ds18b20的電源供電方式,把ds18b20的數(shù)據(jù)線與單片機(jī)的13管腳連接,再加上上拉電阻。ds18b20與芯片連接電路如圖 3.2所示。 圖3.2 ds18b20與芯片連接圖三、a/d轉(zhuǎn)換模塊a/d轉(zhuǎn)換器的功能是將模擬量電信號轉(zhuǎn)換成數(shù)字量。在本設(shè)計中,我采用了adc0809轉(zhuǎn)換器,它可以將多路轉(zhuǎn)換器輸入的模擬量

36、進(jìn)行a/d轉(zhuǎn)換,所以省略了多路開關(guān)。由于控制系統(tǒng)是對溫度和煙的濃度進(jìn)行檢測,相當(dāng)于a/d轉(zhuǎn)換器的轉(zhuǎn)換時間來說信號變化很慢,所以采樣保持器(保持在a/d轉(zhuǎn)換時間內(nèi)輸入的模擬信號不變)也可以省去。因此,模擬信號經(jīng)過放大后可以直接進(jìn)入a/d轉(zhuǎn)換器。1、 a/d轉(zhuǎn)換器的主要參數(shù) (1) 分辨率: 是指a/d轉(zhuǎn)換器可轉(zhuǎn)換成二進(jìn)制數(shù)的位數(shù)。 (2) 轉(zhuǎn)換時間: 指從輸入啟動轉(zhuǎn)換信號開始到轉(zhuǎn)換結(jié)束,得到穩(wěn)定的數(shù)字輸出量為止的時間其他參數(shù)與d/a轉(zhuǎn)換器類似。2、a/d轉(zhuǎn)換器與cpu的接口方法(1) adc轉(zhuǎn)換好的數(shù)據(jù)必須經(jīng)過三態(tài)緩沖器件與cpu數(shù)據(jù)總線相連接(在芯片內(nèi)部設(shè)有三態(tài)輸出緩沖器);(2) 為了輸入正

37、確的轉(zhuǎn)換結(jié)果,必須解決好a/d轉(zhuǎn)換器和cpu取數(shù)之間的時間配合問題。 (3) 啟動轉(zhuǎn)換信號(start):是由cpu提供給adc芯片的,在正脈沖的下降沿轉(zhuǎn)換開始; (4) 轉(zhuǎn)換結(jié)束信號(eoc):一旦啟動轉(zhuǎn)換,eoc立即變低,直至轉(zhuǎn)換結(jié)束,eoc輸出高電平,通知cpu轉(zhuǎn)換已結(jié)束; (5) 允許輸出信號(oe):adc轉(zhuǎn)換結(jié)束后,轉(zhuǎn)換結(jié)果存放在輸出鎖存器中,并沒有送入數(shù)據(jù)總線上。cpu取數(shù)時,發(fā)出oe信號選通芯片內(nèi)部三態(tài)輸出緩沖器將數(shù)據(jù)輸出。3、 a/d轉(zhuǎn)換器與cpu之間傳送數(shù)據(jù)的方法(1) 延時等待法延時法是利用cpu執(zhí)行一條輸出指令,啟動adc轉(zhuǎn)換,然后cpu執(zhí)行延時程序,延時時間大于所選用

38、的adc芯片轉(zhuǎn)換時間,延時結(jié)束,cpu執(zhí)行輸入指令,打開三態(tài)門獲取adc轉(zhuǎn)換好的數(shù)據(jù)。 (2) 查詢法 查詢法是由cpu來檢查eoc信號。當(dāng)cpu啟動adc芯片開始轉(zhuǎn)換之后,再通過狀態(tài)端口讀取eoc信號,檢查adc是否轉(zhuǎn)換結(jié)束。若轉(zhuǎn)換結(jié)束,則讀取轉(zhuǎn)換結(jié)果,否則繼續(xù)查詢。(3) 中斷法用中斷法可提高cpu的利用率,當(dāng)adc轉(zhuǎn)換結(jié)束,由eoc信號上升沿通過8255a中斷控制邏輯向cpu發(fā)出中斷請求,cpu響應(yīng)中斷在服務(wù)程序中讀取結(jié)果。4、 a/d轉(zhuǎn)換芯片adc0809及其接口(1) 主要性能: 8位逐次逼近型a/d轉(zhuǎn)換器,所有引腳的邏輯電平與ttl兼容;帶有鎖存功能的8路模擬量轉(zhuǎn)換開關(guān),可對8路0

39、-5v模擬量進(jìn)行分時轉(zhuǎn)換;輸出具有三態(tài)鎖存/緩沖功能;分辨率:8位,轉(zhuǎn)換時間:100us;不可調(diào)誤差:1lsb,功耗:15mw; 工作電壓:+5v,參考電壓標(biāo)準(zhǔn)值+5v;片內(nèi)無時鐘,一般需外加640khz以下且不低于100khz的時鐘信號。(2) adc0809內(nèi)部結(jié)構(gòu)有模擬多路轉(zhuǎn)換開關(guān)和a/d轉(zhuǎn)換兩大部分組成。模擬多路轉(zhuǎn)換開關(guān)由8路模擬開關(guān)和3位地址鎖存與譯碼器組成,地址鎖存允許信號ale將三位地址信號addc、addb和adda進(jìn)行鎖存,然后由譯碼電路選通其中一路摸擬信號加到a/d轉(zhuǎn)換部分進(jìn)行轉(zhuǎn)換。a/d轉(zhuǎn)換部分包括比較器、逐次逼近寄存器sar、256r電阻網(wǎng)絡(luò)、樹狀電子開關(guān)、控制與時序電

40、路等,另外具有三態(tài)輸出鎖存緩沖器,其輸出數(shù)據(jù)線可直接連cpu的db。具體見下圖? 圖? adc0809內(nèi)部結(jié)構(gòu)(3)adc0809的引腳功能:d7-d0:8位數(shù)據(jù)輸出線;in7-in0:8路模擬信號輸入;addc、addb、adda:8路模擬信號輸入通道的地址選擇線;ale:地址鎖存允許,其正跳變鎖存地址選擇線狀態(tài),經(jīng)譯碼選通對應(yīng)的模擬輸入信號;start:啟動信號,上升沿使片內(nèi)所有寄存器清零,下降沿啟動a/d轉(zhuǎn)換;eoc:轉(zhuǎn)換結(jié)束,轉(zhuǎn)換開始后,此引腳變?yōu)榈碗娖?,轉(zhuǎn)換一結(jié)束,此引腳變?yōu)楦唠娖?;oe:輸出允許,此引腳為高電平有效,當(dāng)有效時,芯片內(nèi)部三態(tài)數(shù)據(jù)輸出鎖存緩沖器被打開,轉(zhuǎn)換結(jié)果送到d7-

41、d0;clock:時鐘,最高可達(dá)1280khz,由外部提供;ref(+)、ref(-):參考電壓正極、負(fù)極,通常ref(+)接vcc,ref(-)接gnd;vcc:電源,+5v,gnd:地線。在論文的硬件設(shè)計中adc0809因內(nèi)部帶有三態(tài)門輸出鎖存器,故它可以直接和at89c51的i/o口相連。a/d轉(zhuǎn)換模塊是將采集到的煙霧濃度模擬信號轉(zhuǎn)化為數(shù)字信號,以便單片機(jī)控制。四、煙霧傳感電路設(shè)計mq-2氣敏元件的結(jié)構(gòu)和外形如圖?所示, 由微型al2o3陶瓷管、sno2 敏感層,測量電極和加熱器構(gòu)成的敏感元件固定在塑料或不銹鋼制成的腔體內(nèi),加熱器為氣敏元件提供了必要的工作條件。封裝好的氣敏元件有6只針狀

42、管腳,其中4個用于信號取出,2個用于提供加熱電流。圖? mq-2結(jié)構(gòu)圖電路如圖所示,電路采用交流供電,220v交流市電從插頭引入電路,經(jīng)電源變壓器降壓后變?yōu)橹绷鳎绷麟妷褐苯庸﹤鞲衅鱩q2的加熱絲h-h工作,加熱絲給傳感器mq2預(yù)熱一定時間后,才能正常檢測煙霧。當(dāng)mq2所處的環(huán)境煙霧在允許范圍內(nèi)時,其兩端輸出電極h-h間導(dǎo)電率很低,則加在電極間兩端hh電壓很低,則輸出電壓升高,開始吸收煙霧。當(dāng)煙霧逐漸減少,傳感器mq2導(dǎo)電率升高,加在電極間兩端hh的電壓升高,輸出電壓變小。電路主要通過調(diào)試可變電阻 ,可以調(diào)節(jié)煙霧傳感器的靈敏度 ,電路如圖?五、報警電路設(shè)計 報警電路采用聲光報警,聲音部分采用蜂

43、鳴器,光部分采用發(fā)光二極管。當(dāng)外界環(huán)境的溫度達(dá)到報警的下限時,led指示燈開始發(fā)光,同時蜂鳴器開始發(fā)聲報警。煙霧傳感器采集煙霧濃度,當(dāng)煙霧的濃度過高時,經(jīng)a/d轉(zhuǎn)換將此模擬信號轉(zhuǎn)化為數(shù)字信號,并用單片機(jī)控制使蜂鳴器報警。電路原理圖如圖?圖?六、四分頻電路設(shè)計1、74ls161簡介74ls161為4位二進(jìn)制同步計數(shù)器。它的清除端是異步的。當(dāng)清除端clear 為低電平時,不管時鐘端clock 狀態(tài)如何,即可完成清除功能。 預(yù)置是同步的。當(dāng)置入控制器load 為低電平時,在clock 上升沿作用下,輸出端qaqd 與數(shù)據(jù)輸入端ad 相一致。對于54/74161,當(dāng)clock 由低至高跳變或跳變前,如

44、果計數(shù)控制端enp、ent 為高電平,則load 應(yīng)避免由低至高電平的跳變,而54/74ls161 無此種限制。計數(shù)是同步的,靠clock 同時加在四個觸發(fā)器上而實(shí)現(xiàn)的。當(dāng)enp、ent 均為高電平時,在clock 上升沿作用下qaqd 同時變化,從而消除了異步計數(shù)器中出現(xiàn)的計數(shù)尖峰。對54/74161,只有當(dāng)clock 為高電平時,enp、ent 才允許由高至低電平的跳變,54/74ls161 的enp、ent 跳變與clock 無關(guān)。有超前進(jìn)位功能。當(dāng)計數(shù)溢出時,進(jìn)位輸出端(rco)輸出一個高電平脈沖,其寬度為qa 的高電平部分。 在不外加門電路的情況下,可級聯(lián)成n 位同步計數(shù)器。 對于5

45、4/74ls161,在clock 出現(xiàn)前,即使enp、ent、clear 發(fā)生變化,電路的功能也不受影響。其引腳圖如圖?圖?2、四分頻設(shè)計因?yàn)閍dc0809的始終頻率不能超過640k,而單片機(jī)的時鐘頻率為12m,所以在這里要進(jìn)行分頻,在這里我們采用芯片74ls161和74ls00d與非門來組成四分頻電路,使電路的時鐘頻率降低,以滿足系統(tǒng)的要求。其原理圖如圖圖? 七、電源模塊設(shè)計隨著半導(dǎo)體工藝的發(fā)展,現(xiàn)在已生產(chǎn)并廣泛應(yīng)用的單片集成穩(wěn)壓電源,具有體積小,可靠性高,使用靈活,價格低廉等優(yōu)點(diǎn)。最簡單的集成穩(wěn)壓電源只有輸入,輸出和公共引出端,故稱之為三端集成穩(wěn)壓器。三端式穩(wěn)壓器由啟動電路、基準(zhǔn)電壓電路、

46、取樣比較放大電路、調(diào)整電路和保護(hù)電路等部分組成。三端穩(wěn)壓器件78/79系列三端穩(wěn)壓器件是最常用的線性降壓型 dc/dc 轉(zhuǎn)換器,用 78/79系列三端穩(wěn)壓器來組成穩(wěn)壓電源所需的外圍元件極少,電路內(nèi)部還有過流、過熱及調(diào)整管的保護(hù)電路,使用起來可靠 、方便,而且價格便宜。由于電路要求的電源是5v,所以設(shè)計中采用了7805。7805可以為電路提供比較穩(wěn)定的+5v電源。電源原理圖如圖? 圖? 電源原理圖第2節(jié) 軟件設(shè)計1、 系統(tǒng)軟件總體設(shè)計系統(tǒng)軟件部分主要實(shí)現(xiàn)對溫度檢測以及煙霧濃度的檢查,對指標(biāo)超標(biāo)進(jìn)行聲光報警。主要包括溫度檢測程序、煙霧傳感數(shù)據(jù)采集程序設(shè)計、聲光報警程序設(shè)計。圖?是系統(tǒng)軟件主程序流程

47、圖。圖?系統(tǒng)軟件主程序流程圖由上圖可以看出主程序執(zhí)行過程:首先對單片機(jī)的io口進(jìn)行初始化使led燈不亮,蜂鳴器停止蜂鳴。然后調(diào)用溫度測量函數(shù)控制ds18b20進(jìn)行溫度測量并獲取溫度值。然后緊接著調(diào)用煙霧濃度采集模塊程序采集環(huán)境煙霧濃度。在得到溫度值與煙霧濃度后進(jìn)入判斷程序,判斷溫度值與煙霧濃度是否有超標(biāo)的量。若其中有一項(xiàng)或兩項(xiàng)都超標(biāo)就進(jìn)行聲光報警。2、 ds18b20溫度檢測模塊程序設(shè)計 ds18b20在單片機(jī)控制下分三個階段: 18b20 初始化:初始化流程見圖3.3 讀18b20時序:讀ds18b20流程見圖3.4寫18b20時序:寫18b20 流程見圖3.5dsl8820以單總線協(xié)議工作

48、,單片機(jī)首先發(fā)送復(fù)位脈沖,使信號線上的dsl8820被復(fù)位,接著發(fā)送rom操作命令,使dsl8820被激活進(jìn)入接收內(nèi)存訪問命令狀態(tài)。內(nèi)存訪問命令完成溫度轉(zhuǎn)換、讀取等工作(單總線在rom命令發(fā)送之前存儲命令和控制命令不起作用)。系統(tǒng)以rom命令和存儲器命令的形式對dsl8820操作。rom操作命令均為8位,命令代碼分別為:讀rom(33h)、匹配rom(5sh)、跳過rom(cch)、搜索rom(foh)和告警搜索(ech)命令。存儲器操作命令為:寫暫存存儲器(4eh)、讀暫存存儲器(beh)、復(fù)制暫存存儲器-(481-i)、溫度變換(44h)、重新調(diào)出ezpram(bsh)和讀電源供電方式(b

49、4h)命令。 寫數(shù)據(jù):將數(shù)據(jù)線從高電平拉至低電平,產(chǎn)生寫起始信號。在15us之內(nèi)將所需寫的位送到數(shù)據(jù)線上,在15us到60us之間對數(shù)據(jù)線進(jìn)行采樣,如果采樣為高電平,就寫1,如果為低電平寫0。在開始另一個寫周期前必須有l(wèi)us以上的高電平恢復(fù)期。讀數(shù)據(jù):主機(jī)將數(shù)據(jù)線從高電平拉至低電平lus以上,再使數(shù)據(jù)線升為高電平,從而產(chǎn)生讀起始信號。主機(jī)在讀時間片下降沿之后15us內(nèi)完成讀位。每個讀周期最短的持續(xù)期為60us,各個讀周期之間也必須有l(wèi)us以上的高電平恢復(fù)期。cpu控制dsl8820完成溫度轉(zhuǎn)換必須經(jīng)過三個步驟:每一次讀寫之前都要對dsl8820進(jìn)行復(fù)位,復(fù)位成功后發(fā)送一條rom指令,最后發(fā)送r

50、am指令這樣才能對dsl8820進(jìn)行預(yù)定的操作。復(fù)位要求主cpu數(shù)據(jù)線下拉500微秒,然后釋放,dsl8820收到信號后等待16到60微秒左右,后發(fā)出存在低脈沖,主cpu收到此信號表示復(fù)位成功。ds18b20初始化過程如圖3.10所示。圖3.10 ds18b20初始化過程ds18b20初始化程序流程圖3.10所示。 圖3.3 ds18b20初始化流程圖ds18b20的讀寫時序要求非常的嚴(yán)格,只有在編程中嚴(yán)格遵照讀寫時序才能夠正確控制ds18b20并從中獲得較準(zhǔn)確的溫度值。ds18b20讀寫時序如圖?所示。圖3.11 ds18b20的讀寫時序ds18b20讀寫程序流程圖如圖?所示。圖3.4 讀寫

51、一個字節(jié)程序流程圖讀出當(dāng)前的溫度數(shù)據(jù)我們需要執(zhí)行兩次工作周期,第一個周期為復(fù)位、跳過rom指令、執(zhí)行溫度轉(zhuǎn)換存儲器操作指令、等待500us溫度轉(zhuǎn)換時間。緊接著執(zhí)行第二個周期為復(fù)位、跳過rom指令、執(zhí)行讀ram的存儲器操作指令、讀數(shù)據(jù)(最多為9個字節(jié),中途可停止,只讀簡單溫度值則讀前2個字節(jié)即可)。讀取溫度的程序流程圖如圖?所示。圖? 溫度讀取程序流程圖ds18b20讀寫相關(guān)程序如下:init_ds18b20(void); /ds18b20初始化程序ds_read_byte(); /從ds18b20讀一個字節(jié)ds_write_byte(char bitval); /向ds18b20寫一個字節(jié)ge

52、t_temperature(); /從ds18b20讀取溫度值3、 煙霧傳感數(shù)據(jù)采集程序設(shè)計本課題中首先通過煙霧濃度傳感器mq-2將煙霧濃度轉(zhuǎn)換成電壓信號,然后采用adc0809轉(zhuǎn)換芯將電壓信號轉(zhuǎn)換為數(shù)字信號,通過單片機(jī)進(jìn)行處理。數(shù)字芯片在操作時首先要分析它的操作時序圖,adc0809的操作時序圖有如圖?所示。 圖?? adc0809的操作時序圖從圖可以看出,啟動脈沖start和地址鎖存允許脈沖ale的上升沿將地址送上地址總線,模擬量經(jīng)c、b、a選擇開關(guān)所指定的通道送到a/d轉(zhuǎn)換器。在start信號下降沿的作用下,逐次逼近過程開始,在時鐘的控制下,一位一位地逼近。此時,轉(zhuǎn)換結(jié)束信號eoc呈低電

53、平狀態(tài)。由于逐次逼近需要一定的過程,所以,在此期間內(nèi),模擬輸入值應(yīng)維持不變,比較器要一次次進(jìn)行比較,直到轉(zhuǎn)換結(jié)束。此時,如果計算機(jī)發(fā)出一個輸出允許命令(eoc呈高電平),則可讀出數(shù)據(jù)。在本課題中由于只用到一路,所以本設(shè)計選用in0路作為模擬量的輸入端。所以c、b、a端全接地。根據(jù)adc0809的工作原理,對它的操作步驟如下:對epp接口進(jìn)行初始化,選擇模擬量輸入通道。發(fā)出啟動脈沖。查詢轉(zhuǎn)換結(jié)束信號eoc的值,等待轉(zhuǎn)換結(jié)束。轉(zhuǎn)換結(jié)束后讀取轉(zhuǎn)換結(jié)果。其流程圖如圖35所示。圖? adc0809程序流程圖adc0809轉(zhuǎn)換程序ad_get(void),源代碼如下:float ad_get(void)

54、/獲得ad轉(zhuǎn)換數(shù)據(jù)st=0;/啟動轉(zhuǎn)換st=1;st=0;while(!eoc);/等待轉(zhuǎn)換結(jié)束 oe=1;getdata=p0;oe=0;temp=getdata;temp=temp*0.01953;return temp;4、 聲光報警模塊程序設(shè)計該部分程序控制led的亮滅和蜂鳴器的報警,當(dāng)煙霧濃度和溫度兩個指標(biāo)有超標(biāo)時,程序通過點(diǎn)亮led和使蜂鳴器報警。部分源程序如下:if(ds_data30|ad_data2) led=1; /led亮 bee=1; /蜂鳴器報警第3節(jié) 本章小結(jié)本章從硬件和軟件兩個方面出發(fā),詳細(xì)介紹了每個模塊的軟硬件設(shè)計具體方案。硬件部分介紹了單片機(jī)最小系統(tǒng)、溫度采集系統(tǒng)、煙霧濃度采集系統(tǒng)以及聲光報警電路。軟件部分介紹了主程序以及ds18b20溫度采集與a/d轉(zhuǎn)換部分以及部分聲光報警程序。第4章 系統(tǒng)調(diào)試第一節(jié) at89s52單片機(jī)開發(fā)工具介紹本設(shè)計通過keiluvisio

溫馨提示

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

評論

0/150

提交評論