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

正文內(nèi)容

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

2024-11-14 19:52本頁面

【導(dǎo)讀】也越來越廣泛,由此引起的火災(zāi)也愈加泛濫,使我們的生活環(huán)境到處潛伏著火災(zāi)隱患。智能火災(zāi)報(bào)警系統(tǒng)可增強(qiáng)了我們?cè)谏钪械陌踩校瑧?yīng)用于多種場(chǎng)合。等級(jí),并可在顯示屏上顯示當(dāng)前溫度示數(shù)與當(dāng)前煙霧濃度等級(jí)。本文詳細(xì)介紹了該設(shè)計(jì)。的方案選擇以及實(shí)用性的完善等問題。整個(gè)系統(tǒng)設(shè)計(jì)分為硬件和軟件兩部分。硬件部分由STC12C5A60S2單片機(jī)主控電。EEPROM存儲(chǔ)電路、時(shí)鐘電路、串口電平變化電路共十個(gè)模塊組成。還可采用備用電源供電,保障智能火災(zāi)系統(tǒng)的正常工作。智能火災(zāi)報(bào)警系統(tǒng)的組成結(jié)構(gòu)......

  

【正文】 才能正常工作)。然后,對(duì)所有硬件芯片進(jìn)行開機(jī)初始化,接下來就選擇是否設(shè)防,若不設(shè)防,則系統(tǒng)不會(huì)報(bào)警;若設(shè)防,設(shè)防也分兩種情況,第一種情況是手動(dòng)設(shè)置溫度傳感器報(bào)警的上下限,當(dāng)所檢測(cè)到的溫度高于設(shè)置的上限時(shí),系統(tǒng)就會(huì)進(jìn)行聲光報(bào)警,或當(dāng)檢測(cè)到的溫度低于設(shè)置的下限時(shí),系統(tǒng)也會(huì)進(jìn)行聲光報(bào)警;第二種情況是手動(dòng)設(shè)置 第 17 頁 共 49 頁 煙霧傳感器的報(bào)警等級(jí),當(dāng)檢測(cè)到的煙霧濃度達(dá)到所設(shè)定的報(bào)警濃度等級(jí)時(shí),系統(tǒng)進(jìn)行聲光報(bào)警。這兩種情況發(fā)生一種或者都發(fā) 生,系統(tǒng)都會(huì)進(jìn)行聲光報(bào)警。 圖 軟件總設(shè)計(jì)流程圖 整個(gè)系統(tǒng)都采用模塊化設(shè)計(jì),由主程序、 A/D 轉(zhuǎn)換子程序、延時(shí)子程序、顯示子程序、數(shù)據(jù)存儲(chǔ)子程序、按鍵輸入子程、溫度控制子程序這些模塊程序組成。 系統(tǒng)主要模塊的驅(qū)動(dòng)程序 整個(gè)系統(tǒng)是由主程序與子程序組成的,而子程序又分為主要程序(實(shí)現(xiàn)基本功能的程序),與附加功能程序。下面就介紹一下系統(tǒng)的主要的兩個(gè)子程序,這兩個(gè)子程序分別是數(shù)據(jù)存儲(chǔ)子程序和按鍵輸入子程序 。 數(shù)據(jù)存儲(chǔ)模塊的軟件設(shè)計(jì) 如圖 所示,數(shù)據(jù)存儲(chǔ)模塊的軟件設(shè)計(jì)流程為:開始上電,單片機(jī)讀取 24C02 芯片內(nèi)的數(shù)據(jù),然后再判斷是否要在單片機(jī)里設(shè)置溫度的上下限和煙霧濃度等級(jí)等系統(tǒng)參否 是 是 是 否 否 開機(jī)初始化 開始 溫度高于上限或低于下限溫度? 煙霧傳感器預(yù)熱 有害氣體高于上限? 結(jié)束 聲光報(bào)警 不報(bào)警 要設(shè)防? 第 18 頁 共 49 頁 數(shù),若設(shè)置系統(tǒng)參數(shù),則確認(rèn)系統(tǒng)參數(shù)是否設(shè)置完成,若成功確認(rèn)完成系統(tǒng)參數(shù)的設(shè)置,則單片機(jī)將設(shè)置好的系統(tǒng)參數(shù)數(shù)據(jù)寫入 24C02 芯片中儲(chǔ)存起來。若不設(shè)置系統(tǒng)參數(shù),則沒有新的數(shù)據(jù)存儲(chǔ)到 24C02 芯片中。 圖 數(shù)據(jù)存儲(chǔ)模塊軟件計(jì)流程圖 數(shù)據(jù)存儲(chǔ)子程序如下: include /************************************** 此延時(shí)函數(shù)是使用 1T 的指令周期進(jìn)行計(jì)算 **************************************/ void Delay5us() { uchar n = 4。 while (n) { _nop_()。 _nop_()。 } } 否 是 是 否 讀取 AT24C02 內(nèi)數(shù)據(jù) 開始 設(shè)置系統(tǒng)參數(shù)? 將數(shù)據(jù)寫入 AT24C02 設(shè)置系統(tǒng)參數(shù)完成? 結(jié)束 第 19 頁 共 49 頁 /************************************** 延時(shí) 5 毫秒 **************************************/ void Delay5ms() { uint n = 2500。 while (n) { _nop_()。 _nop_()。 _nop_()。 _nop_()。 _nop_()。 } } /************************************** 起始信號(hào) **************************************/ void AT24C04_Start() { SDA = 1。 SCL = 1。 Delay5us()。 SDA = 0。 Delay5us()。 SCL = 0。 } /************************************** 停止信號(hào) **************************************/ void AT24C04_Stop() { 第 20 頁 共 49 頁 SDA = 0。 SCL = 1。 Delay5us()。 SDA = 1。 Delay5us()。 } /************************************** 發(fā)送應(yīng)答信號(hào) 入口參數(shù) :ack (0:ACK 1:NAK) **************************************/ void AT24C04_SendACK(bit ack) { SDA = ack。 SCL = 1。 Delay5us()。 SCL = 0。 Delay5us()。 } /************************************** 接收應(yīng)答信號(hào) **************************************/ bit AT24C04_RecvACK() { SCL = 1。 Delay5us()。 CY = SDA。 SCL = 0。 Delay5us()。 return CY。 } /************************************** 向 IIC 總線發(fā)送一個(gè)字節(jié)數(shù)據(jù) 第 21 頁 共 49 頁 **************************************/ void AT24C04_SendByte(uchar dat) { uchar i。 for (i=0。 i8。 i++) { dat = 1。 SDA = CY。 SCL = 1。 Delay5us()。 SCL = 0。 Delay5us()。 } AT24C04_RecvACK()。 } /************************************** 從 IIC 總線接收一個(gè)字節(jié)數(shù)據(jù) **************************************/ uchar AT24C04_RecvByte() { uchar i。 uchar dat = 0。 SDA = 1。 for (i=0。 i8。 i++) { dat = 1。 SCL = 1。 Delay5us()。 dat |= SDA。 SCL = 0。 Delay5us()。 } return dat。 } 第 22 頁 共 49 頁 //******************寫任何地址函數(shù) ************************// void AT24C04_W_anyadd(uint add, uchar dat) { AT24C04_Start()。 AT24C04_SendByte(0xa0)。 AT24C04_SendByte(add)。 AT24C04_SendByte(dat)。 AT24C04_Stop()。 } //******************讀任何地址函數(shù) ************************// uchar AT24C04_R_anyadd(uint add) { uchar i=0。 uchar temp。 AT24C04_Start()。 AT24C04_SendByte(0xa0)。 AT24C04_SendByte(add)。 AT24C04_Start()。 AT24C04_SendByte(0xa1)。 temp = AT24C04_RecvByte()。 Delay5ms()。 AT24C04_Stop()。 return temp。 } 按鍵輸入模塊的軟件設(shè)計(jì) 如圖 所示,按鍵輸入模塊的軟件設(shè)計(jì)的大致流程為:系統(tǒng)上電,程序開始執(zhí)行,若按下按鍵 3,則顯示屏顯示 1 到 4 的菜單選項(xiàng),此時(shí)若再按下按鍵 3,則確定選擇進(jìn)入菜單 1 到 4 選項(xiàng)的第一項(xiàng),可設(shè)置報(bào)警溫度的上下限。若不再次按下按鍵 3,則可選擇按下按鍵 2,然后再按一次按鍵 3,就可以對(duì)系統(tǒng)進(jìn)行報(bào)警的煙霧濃度的等級(jí)進(jìn)行設(shè)置。若是剛才不按下按鍵 2,則可選擇按下按鍵 1,再按一次按鍵 3, OLED 屏幕上就會(huì)顯示本人的學(xué)號(hào)、電話、 號(hào)碼等個(gè)人信息。進(jìn)入菜單里的第 1 至 3 個(gè)選項(xiàng)后,則會(huì)退出菜單。若一開始 時(shí)就沒有按下按鍵 3,則就不會(huì)進(jìn)入菜單程序,顯示屏就顯示系統(tǒng)上電初始化時(shí)的默認(rèn)畫面。 第 23 頁 共 49 頁 圖 按鍵模塊軟件計(jì)流程圖 按鍵模塊子程序附于本文附錄。 5 上位機(jī)控制設(shè)計(jì) 上位機(jī)界面 本系統(tǒng)的上位機(jī)界面通過 VB 語言進(jìn)行編寫,主要界面如圖 所示。本系統(tǒng)的上位機(jī)界面根據(jù)系統(tǒng)的實(shí)際功能設(shè)置選項(xiàng),根據(jù)需要,本系統(tǒng)的上位機(jī)界面主要由六大模塊組成,如設(shè)計(jì)主題模塊 “基于單片機(jī)的智能火災(zāi)報(bào)警系統(tǒng)設(shè)計(jì)”,用于 顯示設(shè)計(jì)標(biāo)題;開啟端口模塊,用于選擇所要連接的串行端口;同步接收下位機(jī)信息模塊,用于同步接收智能火災(zāi)報(bào)警系統(tǒng)在工作中檢測(cè)到的溫度、煙霧濃度等級(jí)等信息;上位機(jī)控制模塊,用于在上位機(jī)上設(shè)置報(bào)警溫度的上限與報(bào)警煙霧濃度的等級(jí);基本信息顯示模塊,用于顯示畢設(shè)指導(dǎo)老師姓名與作者姓名。 是 否 是 開始 顯示 1 到 4 菜單 KEY3 按下? 否 否 否 否 否 是 是 是 是 KEY3 再次按下? KEY1 按下? KEY2 按下? 退出菜
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1