單片機控制紅外線防盜報警器
一、硬件電路
電路原理圖如圖1所示。可將該電路分為以下三個部分。
用當今最流行的AT89C2051單片機控制,體積小,成本低;用紅外線收發管進行檢測,安裝隱蔽,不易被發現;探測信號采用脈沖信號,節能且抗干擾;當有人試圖闖入室內時,能自動進行聲光報警。現將該報警器原理介紹如下,供廣大單片機愛好者參考。
1、單片機系統。U1為AT89C2051單片機。C1,R0,R1和復位按鈕RESET組成手動電平復位和上電自動復位電路;C2,C3以及晶振JT1組成時鐘電路;C4,C5為+5V電源濾波電容。U2為CMOS6反相器CC4069,起驅動作用。VD1~VD6為紅外發射管,其負極端接與P1口,P1口設置為輸出狀態,當P1口為“0”時,VD1~VD6發紅外光。VD7~VD12為紅外接收管,當接收到紅外光時導通,+5V電源通過VD7~VD12加到反相器CC4069的輸入端,經反相為低電平,這時P3.0~P3.5為低電平。發射管和接收管分別安裝在門和窗口的適當位置,當有人闖入時遮擋了紅外線,接收管截止,反相器輸入端為低電平,這時U1的P3.0~P3.5為高電平。當在一定時間內檢測到位于不同位置的光束被遮擋時,則由P3.7口輸出報警信號(高低電平間隔1S的脈沖信號)。驅動聲光報警電路,進行聲光報警,直至按復位按鈕RESET或電源開關S1。由于紅外收發管之間沒有遮擋時為正常,有遮擋時為異常,則當P1口輸出00H時,P3口的正常狀態數據為00H。
2、電源電路。220V交流市電經變壓器T降壓,橋式整流器D1整流,電解電容C7濾波,三端穩壓器78L05穩壓,最后得到整機要求的+5V穩定直流電源。
3、聲光報警電路。555定時器U4,揚聲器BY,普通紅色發光二極管VD13等組成聲光報警電路。其中555定時器接成了一個低頻多諧振蕩器,其控制電壓輸入端5腳與單片機AT89C2051的P3.7腳相連,受P3.7腳輸出的高低電平間隔1S的脈沖信號控制。當P3.7為高電平時控制電壓Uco較高,閾值電壓UT+(=Uco)和UT-(=1/2Uco)也較高;當P3.7為低電平時UT+和UT-也較低。當UT+較高時,電容C9充、放電的電壓幅度較大,因而振蕩頻率較低。反之,當UT+較低時,電容C9充、放電過程中電壓變化幅度較小,充、放電過程完成得較快,故振蕩頻率較高。即當P3.7=1時,555輸出脈沖的振蕩頻率較低;當P3.7=0時,555輸出脈沖的振蕩頻率高。該輸出脈沖經過隔直電容C8加到揚聲器上,揚聲器將交替發出高、低不同的兩種叫聲。同時,P3.7腳輸出的高低電平間隔1S的脈沖信號經電阻R8加到紅色發光二極管VD13上,VD13將閃爍發光。達到聲光同時報警的效果。
二、軟件設計
我們的目標是,當檢測到有人闖入時就由P3.7口輸出高低電平間隔1S的脈沖信號去驅動聲光報警電路,產生聲光報警。這可通過使P3.7口每隔1S取反一次實現。而1S時間可通過讓定時器T0(工作于定時方式1)重復定時100ms十次實現。用工作寄存器R1作循環計數器,初值為10(0AH)。采用中斷方式編程,整個軟件由主程序和中斷服務程序兩部分構成。
YES |
NO |
NO |
YES |
開始 |
系統初始化 |
有人闖入? |
啟動定時 |
時間到嗎? |
轉報警程序 |
圖2 主程序流程圖 |
等待時間到 |
1、主程序。主要功能是對系統進行初始化和對系統進行監視。看是否有人闖入。其程序流程圖如圖2所示。
程序清單如下:
ORG 0000H
AJMP MAIN ;轉向主程序
ORG 000BH ;定時器T0中斷入口
LJMP BJ ;轉向中斷服務程序
ORG 0030H
MAIN:MOV SP,#50H ;設置堆棧棧底
MOV R1,#0AH ;設置循環計數器初值
MOV P3,#00H ;設置P3口為正常狀態
MOV P1,#00H ;使VD1~VD6發紅外光
MOV TMOD,#01H;設T0為定時方式1
MOV TH0,#3CH ;設置定時100ms初值
MOV TL0,#0B0H
SETB EA ;CPU開中斷
SETB ET0 ;定時器0允許中斷
JS:MOV A,P3 ;監視是否有人闖入
CJNE A,#00H,LP
AJMP JS
LP:SETB TR0 ;啟動T0定時100ms
SJMP $ ;等待定時100ms完成
1S到嗎? |
P3.7取反 |
中斷返回 |
保護現場 |
圖3 中斷服務程序流程圖 |
重設定時初值 |
恢復現場 |
YES |
NO |
2、中斷服務程序。主要功能是判斷定時1S是否完成,從而決定是否對P3.7口取反。其程序流程圖如圖3所示。
程序清單如下:
ORG 0060H
BJ:PUSH Acc ;現場保護
PUSH PSW
MOV TH0,#3CH ;重設定時初值
MOV TL0,#0B0H
DJNZ R1,FH ;1S未到返回
MOV R1,#0AH ;重設計數器初值
CPL P3.7 ;P3.7口取反
FH:POP PSW ;恢復現場
POP Acc
RETI ;中斷返回
END
三、系統調試
1、硬件調試(1)檢查線路應焊接無誤。(2)電源電路調試。斷開負載,用萬用表測量78L05的3腳應有+5V電壓。(3)先不裝入AT89C2051單片機,用短路線把U1插座的12腳接地,調整VD1和VD7的安裝位置和角度,測量U1插座的2腳電壓。當VD1和VD7之間無遮擋時2腳電壓為0伏,有遮擋時為+5伏。用相同方法反復調整其他幾對紅外收發管的位置和角度。使U1插座的3、6、7、8、9各腳的電壓符合要求。(4)將固化好程序的AT89C2051插入電路中的U1插座上,接上電源即可工作。
2、軟件調試。先在Keilc51環境中進行軟件調試,再利用編程器將調試好的程序固化到AT89C2051單片機中。
評論
查看更多