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 ;判断是否为布防信号 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 ;关闭报警信号 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 ;
这款无线报警主机对任何发射频率为315M,编码采用PT2262的无线探头都可适用,如无线人体探测器,无线门磁传感器、无线微波探测器等,由于实际使用的环境不同,所需主机与之相配套的设置也不同,网友可以根据自己的发辉,通过编写不同的软件,从而实现不同的功能,这里不再详述。 |