基于單片機的電話(huà)報警系統的設計與實(shí)現
1.簡(jiǎn)介
隨著(zhù)人們生活水平的不斷提高,家庭安全正在逐漸引起重視。在家庭住宅處安裝防盜及險情報警系統,使主人能及時(shí)掌握住宅發(fā)生的警情,正是人們所期盼的。智能電話(huà)報警系統就是適應這種需求而研制的。智能電話(huà)報警系統是以單片機AT89C51-p.htm" target="_blank" title="AT89C51貨源和PDF資料">AT89C51 為核心,結合DTMF(雙音多頻)數據傳輸技術(shù),語(yǔ)音芯片ISD1420,AT24C01 存儲芯片,熱釋電紅外線(xiàn)傳感器等技術(shù)來(lái)實(shí)現火災、盜竊等的監測,利用公共通訊網(wǎng)為傳輸媒介進(jìn)行自動(dòng)撥號報警和實(shí)現播放事先錄好的語(yǔ)音信號。它具有可靠性高、成本低、易普及等優(yōu)點(diǎn)。
2.系統組成及基本原理
自動(dòng)報警系統具有以下單元功能模塊: 前端探測器、自動(dòng)摘掛機、雙音頻信號解碼、語(yǔ)音錄放、主控制器。為了使系統的結構、性能、體積以及成本達到最優(yōu)化的組合,必須對各種功能進(jìn)行軟、硬件劃分。探測器、自動(dòng)摘掛機、電話(huà)接口、DTMF 撥號以及錄放音等用硬件電路實(shí)現;而振鈴音計數、忙音計數、輸入信息的分析處理等由軟件編程完成。由單片機構成主控部分。系統結構框圖如圖2. 1 所示。
機器完成對人體熱釋電紅外信號的監測。它將完成數據采集、A\D 轉換、比較判斷等。當實(shí)際參數達到用戶(hù)設定的報警值時(shí),輸出報警開(kāi)關(guān)信號給自動(dòng)報警器主機。自動(dòng)報警的核心器件是單片機,它是整個(gè)系統的“心臟”,由它來(lái)接收報警信號并控制、協(xié)調各功能模塊的正常工作,本系統采用的是AT89c51 單片機。鍵盤(pán)用于用戶(hù)預存電話(huà)號碼的輸入等,EEPROM 中存儲系統的一些原始參數、重要數據。撥號電路主要采用MITEL 公司的編/譯碼集成芯片MT8888 來(lái)完成電話(huà)號碼的發(fā)送,并配合單片機完成電話(huà)線(xiàn)上各種信號音的監測等工作。
語(yǔ)音電路采用美國ISD 公司的高保真錄放一體化語(yǔ)音芯片ISD1420 來(lái)完成報警時(shí)進(jìn)行語(yǔ)音提示的預存工作,根據警情進(jìn)行相應的提示語(yǔ)音錄放。報警探測器安裝在用戶(hù)家里需要防范的部位。在通常情況下,監控器是處于休眠狀態(tài)。當用戶(hù)出門(mén)時(shí),用戶(hù)可以通過(guò)鍵盤(pán)啟動(dòng)監控器,監控器啟動(dòng)探頭,此時(shí)監控器處于真正的布防狀態(tài)。只要有人在探頭檢測范圍內經(jīng)過(guò),報警探測器立即向自動(dòng)報警主機發(fā)出報警(中斷)信號。接到警情事件后,自動(dòng)報警主機立即進(jìn)行確認(多次巡檢中斷信號),確認無(wú)誤后,從EEPROM 中讀出相應的報警電話(huà)號碼,通過(guò)雙音多頻撥號芯片自動(dòng)撥打用戶(hù)預先設置好的報警電話(huà)號碼(如手機號碼,辦公室號碼)進(jìn)行遠程撥號報警。待對方摘機后,啟動(dòng)語(yǔ)音電路,將預先錄制好的語(yǔ)音信息通過(guò)電話(huà)線(xiàn)傳給對方。
3.系統硬件電路的設計
系統由熱釋電紅外線(xiàn)探測器、報警主機、撥號電路、語(yǔ)音電路、電話(huà)接口電路、按鍵接 口電路等組成。
3.1 熱釋電紅外線(xiàn)探測器
熱釋電紅外傳感器接收移動(dòng)人體輻射出的紅外線(xiàn),將其轉化為與人體運動(dòng)速度、距離、方向等有關(guān)的低頻電信號。選擇熱釋電紅外傳感信號處理器BIS0001 可檢測盜情信號。
3.2 報警主機
報警器的主機由一片 AT89c51 單片機和一片IO 擴展芯片8255A 組成。PO 口為數據總線(xiàn),分別和8255A 的數據總線(xiàn)、MT8888 的數據線(xiàn)連接。P1.4 連接撥號語(yǔ)音電路,用于DTMF 音頻信號和語(yǔ)音信號的切換;P1.6 接ISD1420 語(yǔ)音芯片的放音腳PLAYL/,低電平有效;Pl.7 用于模擬摘掛機控制,實(shí)現系統和用戶(hù)話(huà)機的工作切換;P2.0 與MT8888的RSO 相連,控制MT8888 內部寄存器的選擇;P2.1, P2.2 接8255A 的A0, A1 地址線(xiàn);P2.5連接系統的現場(chǎng)報警警鈴;P2.6 連接8255A 芯片的選通端CS,用于控制8255A 的選通;P2.7與MT8888 的CS 相連,控制MT8888 的選通。TI 口連接MT8888 的IRQ/CP 端,用于計數監測電話(huà)音方波信號的個(gè)數,INTO 口經(jīng)非門(mén)與紅外探測器輸出端相連,用于接收報警信號,引發(fā)中斷;WR、RD 分別與MT8888、8255A 的WR 和RD 相連,控制MT8888 及8255A 的讀。
3.3 撥號電路
MT8888 是一種具有Intel 微處理器接口的功能較強的雙音多頻(DTMF)發(fā)送和接收器件?捎糜趯ず粝到y、交換機系統和移動(dòng)通信、轉帳卡系統、互接撥號器、數字通信和計算機等領(lǐng)域。其主要功能有:(1)完整的DTMF 發(fā)送和接收功能;(2)高速I(mǎi)ntel 微處理器接口;(3)可工作于自動(dòng)音頻突發(fā)模式;(4)可調整保護時(shí)間;(5)呼叫音檢測到-30dBm。在電話(huà)自動(dòng)報警系統中,MT8888 與微處理器AT89c51 的接口電路見(jiàn)圖3.1。它的接收部分采用單端輸入,由R1, R2 和C1 組成,其輸入電壓增益為R2/R1=1,通過(guò)改變R2 可調節輸入信號的增益;它的發(fā)送部分由C5, R3,C2 和X1 構成;它的控制部分由R4, C3 構成。DTMF IN和DTMF OUT 與電話(huà)接口電路相連。/wR,/RD 引腳分別與單片機的同名引腳相連,以對該芯片的讀寫(xiě)進(jìn)行控制。RSO 引腳完成對該芯片內部寄存器的選擇,與P2.0 相連。
3.4 語(yǔ)音電路
系統選擇了美國 ISD 公司的ISD1420 語(yǔ)音芯片。ISD1420 為優(yōu)質(zhì)單片語(yǔ)音錄放電路,由振蕩器、語(yǔ)音存儲單元、前置放大器、自動(dòng)增益控制電路、抗干擾濾波器、輸出放大器組成。語(yǔ)音電路應完成預錄信息及存儲。同時(shí),在電話(huà)接通后,可以將語(yǔ)音播放。
3.5 電話(huà)接口電路
自動(dòng)報警系統電話(huà)接口電路原理圖如圖 3.2 所示。為了確保撥號電路的DTMF 信號正常發(fā)送和語(yǔ)音電路語(yǔ)音信號的正常播出,接口電路中須增加極性保護電路,它由二極管橋路構成。根據郵電部關(guān)于電話(huà)入網(wǎng)的標準,摘機狀態(tài)下的直流電阻應該小于等于300R,因此,在極性保護電路后直接接一個(gè)200R 的大功率電阻,以模擬摘機掛機操作。語(yǔ)音電路的接通由繼電器J2 吸合配合實(shí)現。為了降低系統功耗,繼電器選擇了高靈敏型,工作電壓為+5V。為提高音頻信號的抗干擾性,撥號電路、語(yǔ)音電路可通過(guò)1:1 隔離變壓器與電話(huà)接口電路相連。
3.6 按鍵接口電路的設計
鍵盤(pán)在單片機應用系統中是一個(gè)關(guān)鍵部件,它能實(shí)現向單片機輸入數據、傳送命令等功能,是人機對話(huà)不可缺少的輸入方式之一。鍵盤(pán)利用機械觸點(diǎn)的合、斷作用實(shí)現信息輸入。一個(gè)鍵實(shí)際上就是一個(gè)開(kāi)關(guān),系統用兩根1/0 線(xiàn)的組合判斷一個(gè)按鍵的開(kāi)關(guān)狀態(tài)。本報警器一共設了12 個(gè)鍵,其中包括10 個(gè)數字鍵及#和*2 個(gè)鍵。在此我們采用3X4 鍵盤(pán),需要7 根1/0 線(xiàn)。因為89c51 自身的輸入/輸出端口有限,所以系統擴展了輸入/輸出口8255A。在該電路中,3X4 鍵盤(pán)與8255A 的PC 口相連,8255A 的C 口低四位PCO-PC3 作為行掃描輸出,C 口高四位PC4-PC6 作為列輸入,均為低電平有效。
4.軟件設計
自動(dòng)報警器軟件部分采用模塊化設計,分為主控模塊、報警處理模塊、中斷處理模塊、撥號模塊、語(yǔ)音模塊、鍵盤(pán)輸入模塊等。編程采用MCS-51 匯編語(yǔ)言。
4.1 主程序設計
單片機接上電源后,首先延時(shí)100ms,讓單片機的各個(gè)管腳有充分的時(shí)間復位。在初始化中,將外部中斷0 打開(kāi),將各個(gè)標志位復位。然后,一直掃描鍵盤(pán)是否按下,如有按下則運行相應的鍵處理子程序,處理完后再掃描鍵盤(pán)。同時(shí),等待險情引起的中斷產(chǎn)生。一旦險情發(fā)生,將轉入中斷服務(wù)子程序。
4.2 中斷處理子程序設計
單片機的INTO 腳和防盜紅外傳感器相連。中斷處理子程序首先確認是否外界對紅外探測器的干擾。是外界干擾,則返回;不是外界干擾,則運行報警處理子程序。
4.3 報警處理子程序設計
報警處理子程序控制整個(gè)系統完成摘機,信號音判斷,撥號,發(fā)出語(yǔ)音求救信號,最后掛機。首先,調用摘機子程序模擬摘機,延時(shí)使系統穩定,再調用檢測和判斷子程序判別是否有撥號音。若沒(méi)有,則調用掛機子程序,延時(shí)后重新調用摘機子程序;若檢測到撥號音,則接下來(lái)調用撥號子程序。在撥號子程序里,撥打戶(hù)主電話(huà)。撥號完畢后,重新調用檢測和判斷子程序,判別此時(shí)是忙音還是回鈴音。若是忙音,則調用掛機子程序,延時(shí)后重新調用摘機子程序;若是回鈴音,則重新調用檢測和判斷子程序,判別此時(shí)對方是否摘機。如果48s時(shí)間到,仍是回鈴音,則調用掛機子程序,延時(shí)后,再重新調用摘機子程序;若不是回鈴音,則調用語(yǔ)音程序,將事先錄制好的報警語(yǔ)音回放出來(lái),最后調用掛機子程序。接著(zhù)撥打存儲的下一個(gè)電話(huà)號碼,直到把存儲的電話(huà)撥打完。此過(guò)程重復3 次后,則返回調用程序。
4 .4 信號檢測與判斷模塊程序設計
為了檢測信號音,應將MT8880 設置為呼叫處理模式,即CP 模式。該模式下MT8880可檢測各種信號音,如撥號音、忙音、回鈴音。只要位于中心頻率450Hz,帶寬250Hz 左右的信號音就可以經(jīng)濾波器選擇、高增益比較器限幅、從施密特觸發(fā)器得到代表信號音的方波信號,并從IRQ/CP 端輸出,微處理器可通過(guò)IRQ/CP 端分析呼叫過(guò)程。根據程控交換機的標準,撥號音為450Hz 的連續正弦波,正負誤差25Hz;忙音為450Hz 的正弦波,0.35s 通,0.35s 斷;回鈴音為450Hz 的正弦波,1s 通,4s 斷。因此,依據MT8880 的CP 檢測模式,可對IRQ/CP 腳輸出的方波計數5s,根據結果判斷是哪種信號音。
4.5 語(yǔ)音模塊程序設計
ISD1512 為美國ISD 公司出品的優(yōu)質(zhì)單片語(yǔ)音錄放電路,借助直接模擬存儲技術(shù)(美國ISD 公司的專(zhuān)利)實(shí)現錄音內容存入永久存儲單元,提供零功率信息存儲,并能完成其原本語(yǔ)
5音的再現。單片機P2.3 控制放音,P2.3 由高電平變?yōu)榈碗娖,觸動(dòng)ISD1512 的放音腳,放音
開(kāi)始,延時(shí)5 秒后,單片機P2.3 腳由低電平變?yōu)楦唠娖,放音結束,然后進(jìn)入下一次放音狀態(tài),直至三次放音結束,清除警情標志位后,程序返回.
4.6 撥號模塊程序設計
首先初試化MT8880,置MT8880 為BURST 模式;然后一位一位地撥號,直到撥完。
4.7 鍵盤(pán)模塊程序設計
鍵盤(pán)在單片機應用系統中是一個(gè)關(guān)鍵部件,它能實(shí)現向單片機輸入數據、傳送命令等功能,是人機對話(huà)不可缺少的輸入方式之一。本報警器一共設了12 個(gè)鍵,其中包括10 個(gè)數字鍵和兩個(gè)功能鍵。其中,*鍵是布防和撤防命令(即取反EX0),#鍵是更改AT24C01 中存儲的電話(huà)號碼。鍵盤(pán)模塊程序主要完成按鍵的確認與處理。
基于單片機的電話(huà)報警系統的設計與實(shí)現