遠(yuǎn)程自動報(bào)警系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
(作者未知) 2010/2/2
(接上頁)式,當(dāng)接收或發(fā)送了有效的音頻信號后,irq/cp引腳輸出低電平,產(chǎn)生中斷信號供給cpu,在延遲控制電壓的跳變緣將數(shù)據(jù)鎖存至輸出端;在call模式,只能接收250 hz~550 hz的信號音,在拒收或無輸入時(shí),irq/cp引腳輸出低電平。
電話線開關(guān)接口電路必須滿足電話入網(wǎng)的條件,為此采用了電話線匹配變壓器與電話線交流耦合,這樣可以大大地減少電話線上的支流成分對后面電路產(chǎn)生的影響。同時(shí),為了能夠達(dá)到模擬摘機(jī)掛機(jī)的功能,在變壓器與電話線之間接入了電磁繼電器作為控制開關(guān)。
2.4語音電路
為了便于通信,系統(tǒng)在呼叫用戶成功時(shí)需啟動播放事先錄制好的報(bào)警話音電路,也就是說,整個(gè)電路還需采用語音芯片來實(shí)現(xiàn)語音提示和報(bào)警功能。本系統(tǒng)中的語音電路采用美國isd公司的優(yōu)質(zhì)集成語音芯片isd1420來實(shí)現(xiàn)。
isd1420芯片為單片語音記錄、回放一體化芯片,記錄時(shí)長為20 s,可劃分為160小段,每段125 ms。可進(jìn)行連續(xù)錄音,也可進(jìn)行分段錄音。通過分段錄音和放音,可以發(fā)出不同的警報(bào)聲。當(dāng)rec引腳為低電平時(shí),實(shí)現(xiàn)錄音功能;playe引腳或playl引腳為低時(shí)可實(shí)現(xiàn)放音。
具體電路如圖4所示。語音電路的具體設(shè)置主要包括分段錄音和分段放音。
3系統(tǒng)的軟件設(shè)計(jì)與實(shí)現(xiàn)
3.1主程序
本程序初始地址為0000h,因此開機(jī)后自動運(yùn)行,大部分工作都是在中斷后完成的,所以主程序比較短,僅對mt8888進(jìn)行初始化,同時(shí)寫ie使得中斷可以進(jìn)行,然后就處于等待狀態(tài),直至int0收到信號。
3.2中斷子程序
系統(tǒng)功能的實(shí)現(xiàn)全部在中斷子程序中,因此中斷子程序是最重要的,它主要由撥號子程序、撥號音判斷子程序、語音播放子程序、延時(shí)子程序以及電話號碼表組成。
3.2.1撥號音檢測子程序
信號音的判斷方法是:對t0引腳信號計(jì)數(shù)5 s,若計(jì)數(shù)值位于2175~2357范圍內(nèi),則為撥號音;若計(jì)數(shù)值位于1041~1212范圍內(nèi),則為忙音;若計(jì)數(shù)值位于425~475范圍內(nèi),則為回鈴音。在實(shí)際編程中,考慮到計(jì)數(shù)的誤差以及程序的簡化,可將范圍適當(dāng)放寬,但不能重疊。
3.2.2撥號子程序
撥號子程序是實(shí)現(xiàn)功能最主要的程序。在程序的執(zhí)行中,80c51通過mt8888將dtmf信號發(fā)送出去,即完成撥號功能,同時(shí)又應(yīng)用mt8888的dtmf接收功能判斷電話是否被接通。在撥號子程序中要用到其他幾個(gè)子程序,其總的結(jié)構(gòu)是兩個(gè)循環(huán),同一號碼不同位的選擇循環(huán)嵌在不同號碼的選擇中,整個(gè)循環(huán)只有一個(gè)出口,就是接通電話播送了警報(bào),否則就不停地循環(huán)撥號,這與系統(tǒng)的功能也是相適應(yīng)的。
3.2.3其他程序
其他程序包括語音播放子程序、延時(shí)子程序以及電話號碼表,都較為簡單。其中語音播放程序先向isd1420的地址引腳寫入在中斷開始時(shí)收到的報(bào)警數(shù)據(jù),以此數(shù)據(jù)對應(yīng)相應(yīng)的報(bào)警錄音段(其對應(yīng)的形成應(yīng)該在錄音時(shí)人為設(shè)定,非本部分內(nèi)容),然后向playl引腳先后寫入高、低電平,并維持低電平狀態(tài),isd1420就自動將音頻信號向電話接口播放。
4結(jié)束語
運(yùn)用單片機(jī)控制技術(shù)和雙向dtmf數(shù)據(jù)通信技術(shù),設(shè)計(jì)出基于公共電話網(wǎng)的遠(yuǎn)程自動報(bào)警系統(tǒng),與其他一些自動報(bào)警系統(tǒng)相比,具有多功能、低成本、易普及、高可靠性等突出優(yōu)點(diǎn),具有廣泛的市場發(fā)展前景。
|