ORG 0000H ;
CLR P1.6 ; CLR P1.2 ; ACALL DYS ; SETB P1.6 ACALL YS ; SETB P1.2 ; CLR P1.3 ; CLR P1.6 ; ACALL DYS ; SETB P1.6 ; ACALL YS ; SETB P1.3 ; CLR P1.4 ; CLR P1.6 ; ACALL DYS ; SETB P1.6 ; ACALL YS ; SETB P1.4 ; CLR P1.5 ; CLR P1.6 ; ACALL DYS ; SETB P1.6 ; ACALL YS ; ; MOV P1, #0FFH ; MOV P3, #0FFH ; AGARN: MOV R6, #34H ; JB P3.6, TINDIAN ;檢查是否停電 JNB P3.0, AGARN ;是否有有效無線信號輸入 ACALL DYS ; JNB P3.0, AGARN ; MOV A, P3 ;讀入無線信號值 ANL A, #3CH ;0011,1100 CJNE A,#20H, XH ;20H=00(10,00)00 B ;撤防程序 CLR P3.1 ; CLR P1.6 ;撤防成功響應 CLR P1.4 ;指示燈 CLR P1.5 ; SETB P3.7 ; ACALL YS ; SETB P1.6 ; AJMP AGARN ;
XH: CJNE A,#30H, ONE ;判斷是否為(wei) 布防信號 SETB P3.1 ; CLR P1.6 ;布防成功響應 SETB P1.4 ;指示燈 SETB P1.5 ; SETB P3.7 ; ACALL YS ; SETB P1.6 ; AJMP AGARN ; ONE: JNB P3.1, AGARN ; CJNE A,#4H, TWO ;1H=00(00,01)00B MOV P1, #0FBH ; AJMP BJ ; TW CJNE A,#8H, THREE ;2H= 00(00,10)00B MOV P1, #0F7H ; AJMP BJ ; THREE: CJNE A,#0CH, FOUR ;3H=00(00,11)00B MOV P1, #0EFH ; AJMP BJ ; FOUR: CJNE A,#10H, FIVE ;00(01,00)00B MOV P1, #0DFH ; AJMP BJ ; FIVE: NOP ; NOP ; NOP ; AJMP AGARN ; BJ: CLR P3.7 ;啟動報警信號 ACALL YS ;延時34秒 JB P3.0, AGARN ; DJNZ R6, BJ ; SETB P3.7 ;關(guan) 閉報警信號 AJMP AGARN ;
TINDIAN: MOV P1, #0FFH ;停電程序 CLR P1.6 ; CLR P1.5 ; ACALL YS ; SETB P1.6 ; SETB P1.5 ; ACALL YS ; CLR P1.6 ; CLR P1.5 ; ACALL YS ; SETB P1.6 ; SETB P1.5 ; ACALL YS ; AJMP AGARN ; DYS: MOV R0, #14H ; L1: MOV R1, #0F1H ; L2: NOP ; NOP ; NOP ; DJNZ R1, L2 ; DJNZ R0, L1 ; RET YS: MOV R0, 0FFH ; L3: MOV R1, 0F1H ; L4: NOP ; NOP ; NOP ; DJNZ R1, L4 ; DJNZ R0, L3 ; RET ; END ;
這款無線報警主機對任何發射頻率為(wei) 315M,編碼采用PT2262的無線探頭都可適用,如無線人體(ti) 探測器,無線門磁傳(chuan) 感器、無線微波探測器等,由於(yu) 實際使用的環境不同,所需主機與(yu) 之相配套的設置也不同,網友可以根據自己的發輝,通過編寫(xie) 不同的軟件,從(cong) 而實現不同的功能,這裏不再詳述。 |