freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于單片機(jī)的智能樓宇火災(zāi)報(bào)警系統(tǒng)畢業(yè)設(shè)計(jì)論文-資料下載頁

2025-02-26 12:03本頁面

【導(dǎo)讀】火災(zāi)是發(fā)生頻率較高的災(zāi)害之一,在任何時(shí)間、任何地區(qū)都可能發(fā)生。濟(jì)損失大幅增加。尤其是近幾年來,高層建筑大量增加,一旦發(fā)生火災(zāi),滅火的難度。而一套完整的火災(zāi)自動(dòng)報(bào)警系統(tǒng)是高層建筑發(fā)生火災(zāi)時(shí)人們生命財(cái)產(chǎn)的有利保。障,是能否快速準(zhǔn)確地發(fā)現(xiàn)火情,把火災(zāi)撲滅在萌芽狀態(tài)的關(guān)鍵所在。系統(tǒng)的總體設(shè)計(jì)、功能模塊設(shè)計(jì)與實(shí)現(xiàn)。主要是由AT89S52單片機(jī)、18B20溫度傳感器和MQ-2煙霧傳感器組成。實(shí)時(shí)監(jiān)控樓道和房間的溫度和煙霧等級,當(dāng)監(jiān)控的環(huán)境溫度或者煙霧超過設(shè)計(jì)值時(shí),系統(tǒng)會(huì)產(chǎn)生聲光報(bào)警,及時(shí)提醒人們。即使當(dāng)傳感器發(fā)生故障,也可人為的按下緊急。這個(gè)系統(tǒng)的是可以根據(jù)不同的環(huán)境設(shè)定所需要的。報(bào)警值,同時(shí)具有價(jià)格低廉、易于安裝等特點(diǎn)。

  

【正文】 關(guān)控制。 D:控制整體顯示的開與關(guān),高電平表示開顯示,低電平表示關(guān)顯示 C:控制光標(biāo)的開與關(guān),高電平表示有光標(biāo),低電平表示無光標(biāo) B:控制光標(biāo)是否閃爍,高電平閃爍,低電平不閃爍 ; ( e) 指令 5:光標(biāo)或顯示移位 S/C:高電平時(shí)移動(dòng)顯示的文字,低電平時(shí)移動(dòng)光標(biāo) ; ( f) 指令 6:功能設(shè)置命令 DL:高電平時(shí)為 4位總線, 低電平時(shí)為 8位總線 N: 低電平時(shí)為單行顯示,高電平時(shí)雙行顯示 F: 低電平時(shí)顯示 5x7的點(diǎn)陣字符,高電平時(shí)顯示 5x10的點(diǎn)陣字符 ; ( g) 指令 7:字符發(fā)生器 RAM地址設(shè)置 ; ( h) 指令 8: DDRAM地址設(shè)置 ; ( i) 指令 9:讀忙信號和光標(biāo)地址 BF:為忙標(biāo)志位,高電平表示忙,此時(shí)模塊不能接收命令或者數(shù)據(jù),如果為低電平表示不忙 ; ( j) 指令 10:寫數(shù)據(jù) ; ( k) 指令 11:讀數(shù)據(jù) 。 圖 38 LCD液晶顯示屏與單片機(jī)接口硬件連接圖 LCD1602的讀寫操作、屏幕和光標(biāo)的操作都是通 過指令編程來實(shí)現(xiàn)的。 LCD1602液晶顯示器是液晶顯示模塊的最主要部件,通過液晶顯示的原理,設(shè)計(jì)出相應(yīng)的硬件接線圖。硬件接線圖如上圖 38所示: 上圖是 LCD1602與單片機(jī)的接口原理圖??梢钥闯?其中, LCD1602的 4~6號 引腳與單片機(jī)的 ~ 引腳 LCD1602的相連 接 ,因?yàn)?AT89S52單片機(jī)的 P0口沒有上拉電阻,所以在它們中間接一個(gè) 10K的 電阻 排。為了實(shí)現(xiàn) 它們數(shù)據(jù) 之間 的讀寫功能。單片機(jī)的 ~ 引腳與 LCD1602的 7~14號 引腳相連 接 , 這樣就可以 進(jìn)行數(shù)據(jù)的通訊傳輸。 上面兩節(jié)介紹了火災(zāi)檢測模塊和顯示模塊。當(dāng)溫度傳感器或者煙霧傳感器檢測出火災(zāi)時(shí),系統(tǒng)會(huì)通過發(fā)光二極管產(chǎn)生光報(bào)警,通過蜂鳴器產(chǎn)生聲音報(bào)警。下圖39是光報(bào)警原理圖,圖 310是聲報(bào)警原理圖。兩者就構(gòu)成的聲光報(bào)警。 圖 39光報(bào)警原理圖 圖 310 聲音報(bào)警原理圖 通過圖 39 可知?jiǎng)? 輸出是低電平時(shí),三極管導(dǎo)通,繼電器線圈得電,常開觸頭吸合發(fā)光二極管得電,從而產(chǎn)生光報(bào)警。同樣圖 310當(dāng) 輸出是低電平時(shí),三級 管導(dǎo)通,蜂鳴器得電產(chǎn)生聲音報(bào)警。兩者同時(shí)工作就是聲光報(bào)警。 電源模塊設(shè)計(jì)與實(shí)現(xiàn) 系統(tǒng) 所需要的電源為直流 5V。 為了 很好的滿足系統(tǒng)電源需求,采用穩(wěn)壓電源供電。選擇 7805 為電源模塊的核心 ,作 整體電源 為系統(tǒng)供電 。直流 5V 電源電路如 下 圖 311 所示。 先采用 15V/15W的變壓器,在變壓器副邊得到 12V 的交流電, 再經(jīng)過電容濾波和 7805 電源模塊,最終輸出穩(wěn)定的 直流 5V電源 。 電路中 的 電容 C C2分別為輸入端和輸出端濾波電容,防止穩(wěn)壓器產(chǎn)生高頻自激振蕩和抑制電路引入的高頻干擾, 下 圖 311中的二極管是作為 保護(hù)二 極管 使用的,一旦輸出電壓低于需要 的穩(wěn) 定電壓值時(shí),此二極管導(dǎo)通,保護(hù)穩(wěn)壓器輸出端 不被損壞。電阻為負(fù)載電阻。 圖 311 直流 5V電源電路 LEDR1VCC104C2104C1+5VVin VoutGNDLM78055VS1 4 軟件功能模塊設(shè)計(jì)與實(shí)現(xiàn) 上面 一節(jié)完成了硬件的設(shè)計(jì),要想要系統(tǒng)工作還要完成系統(tǒng)的軟件設(shè)計(jì)。這樣系統(tǒng)才能正常工作。下面就介紹系統(tǒng)軟件的設(shè)計(jì)與實(shí)現(xiàn)。 溫度檢測模塊 軟件 設(shè)計(jì)與實(shí)現(xiàn) 溫度檢測 模塊 是火災(zāi)檢測模塊 重要組成部分 之一 , 它測得數(shù)據(jù)為系統(tǒng)做出的動(dòng)作提供依據(jù)。 根據(jù) DS18B20 傳感器結(jié)構(gòu)和 功能, 可以 做 出以 下設(shè)計(jì): DS18B20 傳感器為單線輸出, 在單片 機(jī) 使用 讀 /寫時(shí)序 來讀 /寫 DSl820 的數(shù)據(jù)位和寫命令字的位 ,或取其數(shù)據(jù),將數(shù)據(jù)轉(zhuǎn)換成與之對應(yīng)的溫度值,當(dāng)被測溫度值大于預(yù)設(shè) 溫度值時(shí),輸出報(bào)警信號,反之, 則 繼續(xù)檢測 環(huán)境溫度 。 經(jīng)過單線接口訪問 DS18B20 的協(xié)議 初始化與 ROM 的操作指令如下: ( 1)初始化 單 總線上的所有 數(shù)據(jù)處理都要從初始化起始。初始化包含總線主機(jī)發(fā)出的復(fù)位脈沖,接著由其他元 件送出 的 存在脈沖。 ( 2) ROM 操作指 令 一旦總線主機(jī)檢測到從屬器件的存在,它便可以發(fā)出器件 ROM 操作命令之一。所有 ROM 操作指令都為 8 位長。指令具體如下: ( a) Read ROM (讀 ROM)[33H] 此指令允許單片機(jī)讀取 DS18B20 溫度傳感器 的系列編碼,唯一的 產(chǎn)品序列碼,及 其 8 位的 CRC。這個(gè)指 令只能在 單總線上 有一個(gè) 傳感器的情況下使用。若單 總線上存 在在數(shù)個(gè)的 器件 時(shí),那么當(dāng)全部的芯片 同時(shí)發(fā)送 數(shù)據(jù) 時(shí) , 將 會(huì)產(chǎn)生數(shù)據(jù)沖突的情況 。 ( b) Match ROM(“ 符合 ” ROM)[55H] Match ROM 指令。后續(xù) 以 64 位的 ROM 數(shù)據(jù)序列,允許單片機(jī) 對多點(diǎn)總線上特定的 DS18B20 尋址,只有 在 與 64為 ROM 序列完全 相符的 DS18B20 情況下,才能對后續(xù)的存貯器操作指令 令做出 相應(yīng) 響應(yīng)。其他 與 64 位 ROM 序列完全不符的芯片將 會(huì) 等 待復(fù)位脈沖。這個(gè) 命令在 單總線上不管有幾個(gè)元件的情況下都 可使用。 ( c) Skip ROM(“跳過” ROM) [CCH] 在單總線系統(tǒng)中,此指令允許主機(jī)不必 提供 64 位 ROM編碼而 就訪問存儲(chǔ)器操作來節(jié)省時(shí)間。假如單總線上設(shè)計(jì)多個(gè)芯片時(shí),那么 在 Skip ROM 命令之后發(fā)出讀命令,由于多個(gè)芯片同時(shí)發(fā)送數(shù)據(jù),單 總線上 會(huì)產(chǎn)生數(shù)據(jù)沖突現(xiàn)象。 (d)Search ROM(“探索 ” ROM) [F0H] 當(dāng)模塊 工作時(shí), 主機(jī) 可能 會(huì)不清楚 單 總線上的元 件 的 個(gè)數(shù)或 其 ROM 編碼。搜索ROM 值 令 會(huì)允許主機(jī)應(yīng)用 “消去”( elimination) 識(shí)別 單總線上的全部傳感器 的64 位 ROM 編碼。 (e)Alarm ROM(報(bào)警搜索) [ECH] 此命令的流程與搜索 ROM 命令相同。但是,僅在最近一次溫度測量出現(xiàn)報(bào)警的情況下, DS18B20 才對此命令做出響應(yīng)。報(bào)警的條件定義為溫度高于 TH 或低于 TL。只要 DS18B20 一上電,報(bào)警條件就保持在設(shè)置狀態(tài),直到另一次溫度測量顯示出非報(bào)警值,或者改變 TH或 TL 的設(shè)置使得測量值再一次位于允許的范圍之內(nèi)。貯存在 EEPROM 內(nèi)的觸發(fā)器值用于報(bào)警。 DS18B20 的讀 /寫時(shí)序如 下 圖 41所示。 圖 41 DS18B20的讀 /寫時(shí)序圖 單片機(jī) 時(shí)刻發(fā)送一 個(gè) 復(fù)位脈沖 (最短 的是 480us 的低電平信號 )接著在 時(shí)間后 釋放總線 , 并 且 接收狀態(tài) 嚇得 DSl8B20 傳感器 在檢測到 單總線有 上升沿 后 , 等待 大約 1560us 接著 DS18B20 在 時(shí)間 發(fā)出存在脈沖 (低電平 大約 持續(xù) 60240us)如 下 圖 42 所示 。 t 0 t 1 t 2 t 3 t 4400 us ~ 960 us15 us ~ 60 us 480 us60 us ~ 240 usVccGNDGNDVcc1 WIRE BUS1 WIRE BUSMASTER WRITE “ 0 ” SLOT60 us Tx ” 0 ” 120 usMASTER WRITE “ 1 ” SLOTMASTER READ “ 1 ” SLOTMASTER READ “ 0 ” SLOT1 us t REC81 us t REC815 us 15 us30 us15 us 15 us30 us 1 us15 us 15 us30 us15 us 1 usDS 18 B 20 SAMPLESMIN TYP MAXDS 18 B 20 SAMPLESMIN TYP MAX 圖 42初始化的時(shí)序圖 當(dāng)單 總線 在 時(shí)刻從高 電平拉到 低電平時(shí) , 就產(chǎn)生寫 時(shí)間隙從 時(shí)刻開始 大約15us之內(nèi)應(yīng)將所需寫的位送到 單 總線上 的 DSl8B20傳感器 在 大致 1560us后 對總線采樣若低電平寫入的位是 0 若高電平寫入的位是連續(xù)寫 2 位間的間隙應(yīng)大于1us,如圖 43所示。 圖 43 寫“ 0”寫“ 1”電平時(shí)序圖 流程圖如圖 44所示。 讀 取 溫 度判 斷 DS18B20是 否 存 在 ?開 始啟 動(dòng) 溫 度 轉(zhuǎn) 換等 待 數(shù) 據(jù)數(shù) 據(jù) 轉(zhuǎn) 換是否結(jié) 束數(shù) 據(jù) 比 較是否聲 光 報(bào) 警t 0 t 115 us15 us ~ 60 us 60 us 1 us15 us 60 us 1 ust 0 t 145 us 圖 44 溫度檢測模塊流程圖 部分程序清單如下所示: int Read_Temperature(void) //讀取溫度 { int i。 union{ uchar c[2]。 int x。 }temp。 do i=ds1820_ack()。 while(i==0x01)。 ds1820_write(0xcc)。 //跳過 Rom ds1820_write(0x44)。 //啟動(dòng) ds18b20 溫度轉(zhuǎn)換 delay(100)。 do i=ds1820_ack()。 while(i==0x01)。 ds1820_write(0xcc)。 //跳過 Rom ds1820_write(0xbe)。 //讀取轉(zhuǎn)換后溫度值 //for (i=0。i9。i++) [0]=ds1820_read()。 [1]=ds1820_read()。 return ()。 } 煙霧檢測模塊 軟件 設(shè)計(jì)與實(shí)現(xiàn) 首先對單片機(jī) A/D 進(jìn)行初始化,然后讀取從 MQ2 電路采集的電壓信號經(jīng) A/D轉(zhuǎn)換, 將模擬量 轉(zhuǎn)換成相應(yīng)的 數(shù)字量數(shù)值,與程序預(yù)設(shè)好的煙霧濃度數(shù)值 相比較,從而判定是否輸出 火災(zāi) 報(bào)警信號。 其原理流程 如 下 圖 45所示。 圖 45 煙霧檢測模塊流程圖 其主要程序清單如下: void adc_init(void) // A/D 轉(zhuǎn)換設(shè)置 { ADCSRA=0x00。 //禁用 adc ADMUX=0x40。 //參考電壓 AVCC( 01) ,轉(zhuǎn)換結(jié)果右對齊( 0)通道 0 ACSR=0x80。 //模擬比較器禁用 ADCSRA=0xEE。 //AD 使能,啟動(dòng) AD,ADC 自動(dòng)觸發(fā)使能,ADC中斷使能,預(yù)分頻選擇 64 SFIOR=0x00。 } pragma interrupt_handler adc_isr:15 //ADC 轉(zhuǎn)換結(jié)束 // void adc_isr(void) {int n,m。 ad_con=n=ADCL。 開 始結(jié) 束AD初 始 化讀 取 AD值數(shù) 據(jù) 比 較是否聲 光 報(bào) 警 m=ADCH。 ad_con|=(int)m8。 ADCSRA=0x00。 //禁用 adc ADMUX=0x40。 //選通 A/D 通道 0 ACSR=0x80。 //模擬比較器禁用 ADCSRA=0xEE。 //AD 使能,啟動(dòng) AD,ADC 自動(dòng)觸發(fā)使能, ADC中斷使能,預(yù)分頻選擇 64 }
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1