基于單片機(jī)的智能安防報(bào)警系統(tǒng)設(shè)計(jì)方案詳解
掃描二維碼
隨時(shí)隨地手機(jī)看文章
本文主要詳解基于單片機(jī)的智能安防報(bào)警系統(tǒng)設(shè)計(jì)方案,我們以基于STC89C52單片機(jī)設(shè)計(jì)的方案來(lái)介紹,首先介紹了STC89C52引腳圖及功能,其次闡述了基于STC89C52單片機(jī)的智能安防報(bào)警系統(tǒng)的硬件、軟件、系統(tǒng)測(cè)試等方面的內(nèi)容,具體的跟隨小編來(lái)詳細(xì)的了解一下。
STC89C52是STC公司生產(chǎn)的一種低功耗、高性能CMOS8位微控制器,具有 8K 在系統(tǒng)可編程Flash存儲(chǔ)器。STC89C52使用經(jīng)典的MCS-51內(nèi)核,但做了很多的改進(jìn)使得芯片具有傳統(tǒng)51單片機(jī)不具備的功能。在單芯片上,擁有靈巧的8 位CPU 和在系統(tǒng)可編程Flash,使得STC89C52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。
STC89C52引腳圖及功能
STC89C52引腳說(shuō)明:
VCC(40引腳):電源電壓
VSS(20引腳):接地
P0口:P0口是一個(gè)8位漏極開(kāi)路的雙向I/O口。作為輸出口,每位能驅(qū)動(dòng)8個(gè)TTL邏輯電平。對(duì)P0端口寫(xiě)“1”時(shí),引腳用作高阻抗輸入。當(dāng)訪問(wèn)外部程序和數(shù)據(jù)存儲(chǔ)器時(shí),P0口也被作為低8位地址/數(shù)據(jù)復(fù)用。在這種模式下,P0具有內(nèi)部上拉電阻。在flash編程時(shí),P0口也用來(lái)接收指令字節(jié);在程序校驗(yàn)時(shí),輸出指令字節(jié)。程序校驗(yàn)時(shí),需要外部上拉電阻。
P1口:P1口是一個(gè)具有內(nèi)部上拉電阻的8 位雙向I/O 口,p1 輸出緩沖器能驅(qū)動(dòng)4個(gè)TTL邏輯電平。對(duì)P1 端口寫(xiě)“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。
此外,P1.0和P1.2分別作定時(shí)器/計(jì)數(shù)器2的外部計(jì)數(shù)輸入(P1.0/T2)和時(shí)器/計(jì)數(shù)器2 的觸發(fā)輸入(P1.1/T2EX),具體如下表所示。在flash編程和校驗(yàn)時(shí),P1口接收低8位地址字節(jié)。
引腳號(hào)第二功能
P1.0 T2(定時(shí)器/計(jì)數(shù)器T2的外部計(jì)數(shù)輸入),時(shí)鐘輸出
P1.1 T2EX(定時(shí)器/計(jì)數(shù)器T2的捕捉/重載觸發(fā)信號(hào)和方向控制)
P1.5 MOSI(在線系統(tǒng)編程用)
P1.6 MISO(在線系統(tǒng)編程用)
P1.7 SCK(在線系統(tǒng)編程用)
P2口:P2口是一個(gè)具有內(nèi)部上拉電阻的8位雙向I/O 口,P2輸出緩沖器能驅(qū)動(dòng)4個(gè)TTL邏輯電平。對(duì)P2端口寫(xiě)“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。
在訪問(wèn)外部程序存儲(chǔ)器或用16位地址讀取外部數(shù)據(jù)存儲(chǔ)器(例如執(zhí)行MOVX @DPTR)時(shí),P2口送出高八位地址。在這種應(yīng)用中,P2口使用很強(qiáng)的內(nèi)部上拉發(fā)送1。在使用8位地址(如MOVX @RI)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),P2口輸出P2鎖存器的內(nèi)容。在flash編程和校驗(yàn)時(shí),P2口也接收高8位地址字節(jié)和一些控制信號(hào)。
P3口:P3口是一個(gè)具有內(nèi)部上拉電阻的8位雙向I/O 口,P3輸出緩沖器能驅(qū)動(dòng)4個(gè)TTL邏輯電平。對(duì)P3端口寫(xiě)“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。P3口亦作為STC89C52特殊功能(第二功能)使用,如下表所示。在flash編程和校驗(yàn)時(shí),P3口也接收一些控制信號(hào)。
P3口除作為一般I/O口外,還有其他一些復(fù)用功能:
RST——復(fù)位輸入。當(dāng)振蕩器工作時(shí),RST引腳出現(xiàn)兩個(gè)機(jī)器周期以上高電平將是單片機(jī)復(fù)位。
ALE/PROG——當(dāng)訪問(wèn)外部程序存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器時(shí),ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低8位字節(jié)。一般情況下,ALE仍以時(shí)鐘振蕩頻率的1/6輸出固定的脈沖信號(hào),因此它可對(duì)外輸出時(shí)鐘或用于定時(shí)目的。要注意的是:每當(dāng)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí)將跳過(guò)一個(gè)ALE脈沖。
對(duì)FLASH存儲(chǔ)器編程期間,該引腳還用于輸入編程脈沖(PROG)。
如有必要,可通過(guò)對(duì)特殊功能寄存器(SFR)區(qū)中的8EH單元的D0位置位,可禁止ALE操作。該位置位后,只有一條MOVX和MOVC指令才能將ALE激活。此外,該引腳會(huì)被微弱拉高,單片機(jī)執(zhí)行外部程序時(shí),應(yīng)設(shè)置ALE禁止位無(wú)效。
PSEN——程序儲(chǔ)存允許(PSEN)輸出是外部程序存儲(chǔ)器的讀選通信號(hào),當(dāng)STC89C52由外部程序存儲(chǔ)器取指令(或數(shù)據(jù))時(shí),每個(gè)機(jī)器周期兩次PSEN有效,即輸出兩個(gè)脈沖,在此期間,當(dāng)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器,將跳過(guò)兩次PSEN信號(hào)。
EA/VPP——外部訪問(wèn)允許,欲使CPU僅訪問(wèn)外部程序存儲(chǔ)器(地址為0000H-FFFFH),EA端必須保持低電平(接地)。需注意的是:如果加密位LB1被編程,復(fù)位時(shí)內(nèi)部會(huì)鎖存EA端狀態(tài)。如EA端為高電平(接Vcc端),CPU則執(zhí)行內(nèi)部程序存儲(chǔ)器的指令。FLASH存儲(chǔ)器編程時(shí),該引腳加上+12V的編程允許電源Vpp,當(dāng)然這必須是該器件是使用12V編程電壓Vpp。
基于單片機(jī)的智能安防報(bào)警系統(tǒng)設(shè)計(jì)方案本設(shè)計(jì)提出了一個(gè)基于STC89C52單片機(jī)控制GSM的智能家用報(bào)警系統(tǒng),對(duì)房屋災(zāi)情進(jìn)行實(shí)時(shí)監(jiān)控和報(bào)警。系統(tǒng)使用溫度傳感器對(duì)室內(nèi)溫度進(jìn)行檢測(cè)并且在數(shù)碼管顯示;使用熱釋電紅外傳感器檢測(cè)屋內(nèi)是否有人非法侵入,檢測(cè)數(shù)據(jù)傳入單片機(jī),單片機(jī)對(duì)數(shù)據(jù)進(jìn)行分析和處理,若有異常,進(jìn)行蜂鳴報(bào)警,并控制GSM系統(tǒng)向主人發(fā)送信息。該智能報(bào)警系統(tǒng)可以根據(jù)環(huán)境變化及時(shí)做出反應(yīng),從而保證家居環(huán)境的安全。
一、系統(tǒng)硬件設(shè)計(jì)
1、系統(tǒng)總體設(shè)計(jì)
系統(tǒng)基于STC89C52單片機(jī),主要的模塊有熱釋電紅外傳感模塊、溫度檢測(cè)模塊、蜂鳴器報(bào)警模塊、數(shù)碼管顯示模塊和GSM短信報(bào)警模塊。系統(tǒng)整體框架如圖1所示。
2、溫度檢測(cè)及顯示模塊設(shè)計(jì)
溫度檢測(cè)及顯示模塊采用數(shù)字溫度傳感器DS18B20,DS18B20數(shù)字溫度計(jì)接線方便,封裝成后可應(yīng)用于多種場(chǎng)合,耐磨耐碰,體積小,使用方便,并且具有超強(qiáng)的穩(wěn)定性和卓越的靈敏性。溫度檢測(cè)電路如圖2所示。
3、熱釋電紅外傳感模塊設(shè)計(jì)
熱釋電紅外傳感模塊主要用來(lái)對(duì)室內(nèi)是否有人體進(jìn)行檢測(cè),主要由熱釋電紅外傳感器RE20HDB和BISS0001處理芯片構(gòu)成。BISS0001是CMOS類(lèi)具有獨(dú)立的高輸入阻抗運(yùn)算放大器,可以與多種傳感器匹配,進(jìn)行信號(hào)處理,能有效的抑制其他信號(hào)的干擾,穩(wěn)定性高,調(diào)節(jié)范圍廣。
若有人進(jìn)入熱釋電紅外傳感器的掃描范圍內(nèi),RE200B產(chǎn)生微弱的電壓變化使得芯片被觸發(fā),經(jīng)過(guò)BISS0001芯片的兩級(jí)放大后,在VO信號(hào)輸出端產(chǎn)生3.3 V左右的電壓;當(dāng)沒(méi)有人經(jīng)過(guò)時(shí),VO端輸出0 V,輸出電壓送入單片機(jī)進(jìn)行判斷和處理,從而實(shí)現(xiàn)了人體檢測(cè)。
4、GSM短信報(bào)警模塊設(shè)計(jì)
GSM模塊主要由TC35i、電源電路、串口電路和GSM保護(hù)電路組成。TC35i新版西門(mén)子工業(yè)GSM模塊是一個(gè)既支持英文短信又支持中文短信息的工業(yè)級(jí)GSM模塊,支持?jǐn)?shù)據(jù)和語(yǔ)音兩種格式的SMS短信發(fā)送形式,且格式的設(shè)置都可通過(guò)AT命令來(lái)實(shí)現(xiàn)。TC35i短信模塊體積小、重量輕、耗能低,具有SIM應(yīng)用工具包和AT命令集控制等優(yōu)點(diǎn)。電源電路為GSM提供合適的電壓。GSM保護(hù)電路用于防止供給電壓過(guò)大。
二、系統(tǒng)軟件設(shè)計(jì)
系統(tǒng)以C和匯編語(yǔ)言為編程語(yǔ)言。該系統(tǒng)通過(guò)傳感器對(duì)室內(nèi)環(huán)境條件進(jìn)行檢測(cè),檢測(cè)數(shù)據(jù)傳送給單片機(jī),由單片機(jī)對(duì)數(shù)據(jù)進(jìn)行處理并采取相應(yīng)措施。系統(tǒng)程序流程如圖3所示。系統(tǒng)啟動(dòng)之后,首先進(jìn)行初始化操作,為了能夠及時(shí)顯示溫度以及對(duì)非法入侵報(bào)警,系統(tǒng)采用中斷技術(shù),使用單片機(jī)定時(shí)中斷TO,每隔500 ms中斷一次。打開(kāi)中斷后,系統(tǒng)開(kāi)始進(jìn)行工作,當(dāng)有人進(jìn)入時(shí),系統(tǒng)調(diào)用GSM短信發(fā)送程序,并進(jìn)行蜂鳴器報(bào)警,為了讓報(bào)警產(chǎn)生效果,將報(bào)警時(shí)間延遲2分鐘。GSM發(fā)送短信程序設(shè)計(jì)的流程圖如圖4所示。
三、系統(tǒng)測(cè)試
系統(tǒng)軟硬件設(shè)計(jì)完成后,對(duì)各模塊進(jìn)行測(cè)試。接通電源后,數(shù)碼管能夠正常顯示當(dāng)前室內(nèi)的溫度,并且隨室內(nèi)溫度的改變而改變,表明溫度檢測(cè)和顯示模塊功能正常;然后,對(duì)是否能夠檢測(cè)到人體進(jìn)行了測(cè)試,當(dāng)有人進(jìn)入熱釋紅外傳感器掃描范圍內(nèi)時(shí),系統(tǒng)報(bào)警并且發(fā)送短信息到指定手機(jī),沒(méi)有人體進(jìn)入時(shí),系統(tǒng)不報(bào)警,表明報(bào)警和短息通知功能正常。因此,該系統(tǒng)的溫度檢測(cè)、顯示、報(bào)警和發(fā)送短信功能均正常。
四、結(jié)論
此家用報(bào)警系統(tǒng),主要以防盜和室內(nèi)溫度檢測(cè)為主,防盜報(bào)警體現(xiàn)于發(fā)送短信報(bào)警和驅(qū)動(dòng)蜂鳴器報(bào)警,室內(nèi)溫度檢測(cè)主要將其顯示于數(shù)碼管。整個(gè)設(shè)計(jì)的創(chuàng)新點(diǎn)在于系統(tǒng)的自動(dòng)化和智能化,實(shí)用性強(qiáng)。使用簡(jiǎn)單實(shí)用的傳感器,融合聲、溫、電、網(wǎng)絡(luò)信息傳輸?shù)燃夹g(shù),系統(tǒng)易于實(shí)現(xiàn)。此外,系統(tǒng)的設(shè)計(jì)思想為智能家居、智能安防等系統(tǒng)的開(kāi)發(fā)提供參考價(jià)值。