專注電子技術(shù)學(xué)習(xí)與研究
當(dāng)前位置:單片機(jī)教程網(wǎng) >> MCU設(shè)計(jì)實(shí)例 >> 瀏覽文章

單片機(jī)的家庭,汽車防盜報(bào)警系統(tǒng)設(shè)計(jì)

作者:佚名   來(lái)源:本站原創(chuàng)   點(diǎn)擊數(shù):  更新時(shí)間:2007年07月03日   【字體:

    從實(shí)際出發(fā),設(shè)計(jì)一種家庭用、與電話線連接、操作簡(jiǎn)單、工作穩(wěn)定可靠的遠(yuǎn)程智能防盜報(bào)警裝置。當(dāng)人們外出時(shí),往往希望實(shí)施自動(dòng)監(jiān)測(cè)報(bào)警以使家庭財(cái)產(chǎn)免受損失。針對(duì)這一需求,研制出了一系列自動(dòng)報(bào)警系統(tǒng),如門磁式、觸摸式和紅外線監(jiān)測(cè)自動(dòng)報(bào)警系統(tǒng)等。本文將介紹的遠(yuǎn)程智能防盜報(bào)警裝置,可同時(shí)監(jiān)視多個(gè)重要點(diǎn)(如門、窗等),發(fā)現(xiàn)盜情及時(shí)撥叫號(hào)碼,并能利用普通電話線進(jìn)行告警信號(hào)呼叫,其性能穩(wěn)定可靠,實(shí)用性、適用性強(qiáng),且具有較高的靈活性。

基于單片機(jī)汽車防盜器報(bào)警聲的源程序

;ST套件產(chǎn)生汽車防盜器報(bào)警聲
;本實(shí)例的目的是讓大家學(xué)會(huì)用單片機(jī)產(chǎn)生聲音的方法,學(xué)會(huì)計(jì)算程序所用時(shí)間
;本實(shí)例的功能是能PIC16F84產(chǎn)生汽車防盜器的報(bào)警聲,頻率分兩個(gè)0.1s第一個(gè)
;0.1S頻率從1.8K-3.5K勻速增加第二個(gè)0.1S頻率從3.5K-1.8K勻速減少,
;程序復(fù)位后,按S2喇叭叫兩聲,按S3喇叭叫15秒,中途可按S5停止.
;PIC單片機(jī)學(xué)習(xí)網(wǎng)
;燒寫(xiě)時(shí)應(yīng)注意:配置位已經(jīng)在程序中寫(xiě)明,加載HEX文件時(shí)會(huì)自動(dòng)加載,燒寫(xiě)時(shí)不用再手動(dòng)設(shè)置配置位。
;實(shí)驗(yàn)時(shí)請(qǐng)注意套件跳線選擇;
;*****************************************************
  LIST P=16F84A,R=DEC         ;定義器件,默認(rèn)為十進(jìn)制
;-----------------------------------------------------
  __CONFIG B'11111111110001';_CP_OFF&_WDT_OFF&_PWRITE_ON&_XT_OSC
                                              ;沒(méi)有代碼保護(hù)
                                              ;看門狗關(guān)閉
                                              ;上電廷時(shí)器開(kāi)啟
                                              ;振蕩器模式為XT
;-----------------------------------------------------
RTCC EQU 01H                ;定義各寄存器
PC EQU 02H
STATUS EQU 03H
C EQU 0
RP0 EQU 5
;----------------------
PORTA EQU 05H
PORTB EQU 06H

TRISA EQU 5H
TRISB EQU 6H
;-----------------------
SOUNDDELAY1 EQU 10H    ;聲音頻率變化計(jì)數(shù)器,從1.8~3.55KHZ
FRE_COUNT EQU 11H      ;同一頻率的重復(fù)次數(shù)保存地址
FRE_REPEAT EQU 12H    
SOUND_TEMP EQU 13H
TEMP EQU 14H           ;暫存寄存器
S_LOOP EQU 46          ;93-47=46
S_MAX EQU 93           ;最低頻率1.8K  93*3=280US*2
S_MIN EQU 47           ;最高頻率3.55K  47*3=140*2
S_REPEAT EQU 4         ;同一頻率重復(fù)次數(shù)
;----------------------RA
KEY1 EQU 3
KEY2 EQU 4
;----------------------RB
KEY3 EQU 0
KEY4 EQU 1
;--------------------
    ORG 0000H
MAIN
    CLRF PORTA
    CLRF PORTB          ;初始化IO口

    BSF STATUS,RP0     ;設(shè)置數(shù)據(jù)寄存器體1
    MOVLW 0011000B
    MOVWF TRISA        ;設(shè)置各開(kāi)關(guān)端口為輸入其它為輸出
    MOVLW 00000011B
    MOVWF TRISB
    BCF STATUS,RP0     ;恢復(fù)數(shù)據(jù)寄存器體0
LOOP
    BTFSS PORTA,KEY1   ;掃描按鍵
    GOTO SET_1
    BTFSS PORTA,KEY2
    GOTO SET_2
    GOTO LOOP
;--------------------------------------------
SET_1
    BTFSC PORTA,KEY1    ;去抖動(dòng)
    GOTO LOOP
    CALL SOUNDDELAY
    BTFSC PORTA,KEY1    ;按S2叫兩聲
    GOTO LOOP
    CALL SOUND200MS
    CALL SOUND200MS
    GOTO LOOP
;--------------------------------------------
SET_2
    BTFSC PORTA,KEY2    ;去抖動(dòng)
    GOTO LOOP
    CALL SOUNDDELAY
    BTFSC PORTA,KEY2    ;按S3叫15秒
    GOTO LOOP
    CALL SOUND15S
    GOTO LOOP
;- - ----------------------------------------
SOUND200MS
    MOVLW S_LOOP
    MOVWF FRE_COUNT     ;46=93-47
SOUND_LH_LP
    MOVLW S_REPEAT      ;同一頻率重復(fù)次數(shù)送FRE_REPEAT
    MOVWF FRE_REPEAT
    MOVFW FRE_COUNT
    ADDLW S_MIN        ;計(jì)數(shù)值加最小值
    MOVWF TEMP
REPEAT0_LP
    MOVFW TEMP
    BSF PORTA,0      
    CALL SOUNDDELAY0   ;廷時(shí)W*3US
    BCF PORTA,0
    MOVFW TEMP
    CALL SOUNDDELAY0
    DECFSZ FRE_REPEAT,1 ;每四次減頻率計(jì)數(shù)一次
    GOTO REPEAT0_LP
    DECFSZ FRE_COUNT,1
    GOTO SOUND_LH_LP
SOUND_HL
    MOVLW S_LOOP
    MOVWF FRE_COUNT   ;46=93-47
SOUND_HL_LP
    MOVLW S_REPEAT    ;同一頻率重復(fù)次數(shù)送FRE_REPEAT
    MOVWF FRE_REPEAT
    MOVFW FRE_COUNT
    SUBLW S_MAX       ;最大值減計(jì)數(shù)值
    MOVWF TEMP
REPEAT1_LP
    MOVFW TEMP
    BSF PORTA,0
    CALL SOUNDDELAY0    ;廷時(shí)W*3US
    BCF PORTA,0
    MOVFW TEMP
    CALL SOUNDDELAY0
    DECFSZ FRE_REPEAT,1;四次減頻率計(jì)數(shù)一次
    GOTO REPEAT1_LP
    DECFSZ FRE_COUNT,1
    GOTO SOUND_HL_LP
SOUND_END
    RETLW 0
;------------------------------
SOUNDDELAY:        ;廷時(shí)255*3US+2US
    MOVLW 255
SOUNDDELAY0
    MOVWF SOUNDDELAY1     ;廷時(shí)W*3US+1US
SOUNDDELAYUS_1
    DECFSZ SOUNDDELAY1,1
    GOTO SOUNDDELAYUS_1
    RETLW 0
;---------------------
SOUND15S                    ;報(bào)警15秒
    MOVLW 73
    MOVWF SOUND_TEMP
SOUND1S_LP
    CALL SOUND200MS
    BTFSS PORTB,KEY4       ;按S5退出
    RETLW 0
    DECFSZ SOUND_TEMP,1
    GOTO SOUND1S_LP
    RETLW 0
;------------------------
    END
 


基本工作原理


    如圖1所示,遠(yuǎn)程智能防盜報(bào)警裝置由信號(hào)檢測(cè)電路、復(fù)位電路、電話號(hào)碼輸入電路、89C51單片機(jī)、語(yǔ)音電路、模擬摘機(jī)掛機(jī)電路、DTMF編碼發(fā)送電路、鈴流信號(hào)檢測(cè)電路和忙音信號(hào)檢測(cè)電路等構(gòu)成。


圖1

    DTMF編碼發(fā)送電路送出的是由用戶經(jīng)電話號(hào)碼輸入電路預(yù)先設(shè)定好并存儲(chǔ)在CPU中的電話號(hào)碼,該號(hào)碼可隨意設(shè)置,可以是市內(nèi)程控電話(如單位電話或110等)、手機(jī)或?qū)ず魴C(jī)等。


    當(dāng)信號(hào)檢測(cè)電路測(cè)到有人闖入時(shí),即發(fā)出觸發(fā)信號(hào)作為報(bào)警信號(hào),經(jīng)放大送入CPU。CPU延時(shí)10s,若是主人進(jìn)入,則可在這10s內(nèi)利用復(fù)位電路使CPU初始化,否則準(zhǔn)備報(bào)警。CPU首先檢察鈴流信號(hào)檢測(cè)電路的輸出情況,若輸出為一高電平,則說(shuō)明用戶電話機(jī)振鈴,不能摘機(jī)撥號(hào),需進(jìn)行延時(shí)處理,只有當(dāng)輸出為低電平時(shí),CPU指示模擬摘機(jī)電路摘機(jī),發(fā)送DTMF電話號(hào)碼,呼叫預(yù)設(shè)的受話方。這時(shí)就會(huì)有兩種情況出現(xiàn):受話方占線和受話方振鈴。若出現(xiàn)第一種情況,系統(tǒng)進(jìn)行模擬掛機(jī)、延時(shí)后再摘機(jī)撥號(hào);如果受話方振鈴、摘機(jī),即開(kāi)始發(fā)送錄制在APR9600中的信號(hào)音或語(yǔ)音信號(hào),最后掛機(jī)。


電路構(gòu)成及工作原理


1 信號(hào)檢測(cè)電路


    圖2中傳感器為P2288被動(dòng)式熱釋電人體紅外傳感器。它采用平衡檢差方式工作,只感應(yīng)7~14μm波長(zhǎng)的活動(dòng)人體紅外輻射線,不會(huì)受環(huán)境溫度及可見(jiàn)光的影響,傳感器加裝菲涅爾透鏡可感應(yīng)10m以內(nèi)的人體輻射紅外線;顒(dòng)人體輻射的紅外線被傳感器檢測(cè)到后,傳感器將產(chǎn)生微弱的電信號(hào),經(jīng)濾波、放大,送給雙向比較器。為防誤動(dòng)作,信號(hào)將與門限電平進(jìn)行比較,產(chǎn)生脈沖信號(hào)輸出,將高電平作為告警信號(hào),送入CPU。


圖2

2 電話號(hào)碼輸入電路

    圖3中DTMF編碼器為CSC5087,它可根據(jù)不同的按鍵產(chǎn)生一組雙音頻信號(hào),CCITT(國(guó)際電報(bào)電話咨詢委員會(huì))規(guī)定了按鍵與高、低頻組的組合。例如,按下“8”鍵,發(fā)出DTMF信號(hào)頻率為fL=852Hz、fH=1336Hz。

 
圖3

    DTMF譯碼器為SC8870,它將每一個(gè)DTMF信號(hào)譯成一個(gè)4位二進(jìn)制代碼輸出,16個(gè)DTMF信號(hào)分別對(duì)應(yīng)0000~1111共16個(gè)二進(jìn)制代碼。例如,對(duì)CSC5087送出的fL=852Hz、fH=1336Hz的DTMF信號(hào),SC8870譯碼后輸出“1000”代碼,對(duì)應(yīng)按鍵“8”。


3 語(yǔ)音電路


    語(yǔ)音電路用于錄制和播放用戶所要報(bào)警的語(yǔ)音信號(hào)或其他報(bào)警信息,相應(yīng)信息可由用戶預(yù)先設(shè)定并可隨時(shí)修改。


    本系統(tǒng)中的語(yǔ)音電路選用語(yǔ)音錄放芯片APR9600,該芯片是采用模擬存儲(chǔ)技術(shù)的一款音質(zhì)好、噪聲低、不怕斷電、可反復(fù)錄放的新型語(yǔ)音電路,單片電路可錄放32~60s。APR9600具有多種手動(dòng)控制方式,多段控制時(shí)電路簡(jiǎn)單,采樣速度及錄放音時(shí)間可調(diào),每個(gè)單鍵均有開(kāi)始、停止和循環(huán)多種功能。


4 鈴流信號(hào)檢測(cè)電路


    鈴流信號(hào)檢測(cè)電路用來(lái)檢測(cè)電話線路上有無(wú)25Hz/90V鈴流信號(hào)。如圖4所示,極性保護(hù)電路由整流、濾波和穩(wěn)壓等電路組成。鈴流信號(hào)經(jīng)該電路后輸出的高電平信號(hào)并不是規(guī)則的矩形波,還需經(jīng)過(guò)由G1、G2兩級(jí)施密特反相器構(gòu)成的整形電路。這時(shí),輸出的高電平送入CPU,進(jìn)行延時(shí)處理,等待鈴流信號(hào)消失。


圖4

5 忙音信號(hào)檢測(cè)電路


    如前所述,撥叫DTMF電話號(hào)碼后,受話方若正在接聽(tīng)電話,線路上送回忙音信號(hào)(周期為0.7s,占空比為50%的450Hz音頻信號(hào)),CPU根據(jù)這一信號(hào)發(fā)出模擬掛機(jī)和延時(shí)指令。


    如圖5所示,忙音檢測(cè)由極性保護(hù)電路和NE567鎖相環(huán)構(gòu)成。NE567(Ⅰ)的檢振頻率為450Hz,用來(lái)確定線路中有無(wú)450Hz音頻信號(hào)。因?yàn)槊σ粜盘?hào)不是連續(xù)的音頻信號(hào),NE567(Ⅰ)的輸出也不為連續(xù)的低電平,而是高低相間、頻率為1.429Hz的振蕩信號(hào)。NE567(Ⅱ)用來(lái)完成忙音識(shí)別,檢振頻率為1.429Hz,若前一級(jí)鎖相環(huán)的輸出信號(hào)頻率剛好為1.429Hz,輸出為一低電平,作為忙音存在的指示信號(hào),送入CPU中,完成相關(guān)動(dòng)作。


圖5

關(guān)閉窗口