⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 hst1l.asm

📁 能实现对三相电流的实时检测功能,并具有长延时 短延时 瞬时 接地四断保护功能.
💻 ASM
📖 第 1 页 / 共 5 页
字号:
		BSF		PORTF,3
		BSF		PORTF,6
  		BSF		INTCON3,3
		RETURN
GZFH    BSF		AA3,0
		MOVLW	64H
		MOVWF	ERRCOUNT0
		MOVLW	0AH
		MOVWF	ERRCOUNT1
    	BSF		INTCON3,3
		RETURN


;******************** TEST SUBROUTINE ****************************
CESHI	
	BCF		INTCON,1
	BCF		INTCON,4
	BCF		PIE1,2
	BSF		SIGN1,3
	BSF		PORTE,0
	BSF		PORTE,1
	BSF		PORTE,2
	MOVFF	PORTE,ERR
	MOVLW	0F0H
	ANDWF	ERR,1
	SWAPF	ERR
	MOVLW	04H
	CPFSEQ	ERR
	BRA		SHIYAN
FANHUI	
;	BCF	SIGN1,3
;	BCF		INTCON3,0
	NOP
	BSF	INTCON,4
	BCF	INTCON,1
	BSF	PIE1,2
	RETURN
SHIYAN
	MOVLW	01H
	CPFSEQ	ERR
	BRA		SY1
	MOVLW	0AH
	MOVWF	ERR2
	BRA		TESTIR3
SY1	MOVLW	02H
	CPFSEQ	ERR
	BRA		SY2
	MOVLW	0EH
	MOVWF	ERR2
	BRA		TESTIR3
SY2	MOVLW	03H
	CPFSEQ	ERR
	BRA		SY3
	MOVLW	14H
	MOVWF	ERR2
	BRA		TESTIR3
SY3	MOVLW	05H
	CPFSEQ	ERR
	BRA		SY4
	MOVLW	01H
	MOVWF	ERR2
	BRA		TESTIR3
SY4	MOVLW	06H
	CPFSEQ	ERR
	BRA		SY5
	MOVLW	03H
	MOVWF	ERR2
	BRA		TESTIR3
SY5	MOVLW	07H
	CPFSEQ	ERR
	BRA		SY6
	MOVLW	05H
	MOVWF	ERR2
	BRA		TESTIR3
SY6	MOVLW	00H
	CPFSEQ	ERR
	BRA		TESTIR3
	MOVLW	07H
	MOVWF	ERR2


;*******************TESTIR3 SUBROUTINE***************************
TESTIR3 
	BCF		PORTE,0		;IS Ir3 OFF?
	BSF		PORTE,1
	BCF		PORTE,2
	MOVFF	PORTE,ERR	
	MOVLW	0F0H
	ANDWF	ERR,1
	SWAPF	ERR
	MOVLW	05H
	CPFSEQ	ERR
	BRA		TESTIR31
	BRA		TESTIR2
TESTIR31
	MOVLW	11H
	MOVWF	IR200
	MOVLW	01H
	CPFSEQ	ERR
	BRA		TS11
	MOVLW	0AH
	MOVWF	ERR1
	BRA		BIJIAO
TS11
	MOVLW	02H
	CPFSEQ	ERR
	BRA		TS21
	MOVLW	0CH
	MOVWF	ERR1
	BRA		BIJIAO
TS21
	MOVLW	03H
	CPFSEQ	ERR
	BRA		TS31
	MOVLW	10H
	MOVWF	ERR1
	BRA		BIJIAO
TS31
	MOVLW	04H
	CPFSEQ	ERR
	BRA		TS41
	MOVLW	14H
	MOVWF	ERR1
	BRA		BIJIAO
TS41
	MOVLW	06H
	CPFSEQ	ERR
	BRA		TS51
	MOVLW	03H
	MOVWF	ERR1
	BRA		BIJIAO
TS51
	MOVLW	07H
	CPFSEQ	ERR
	BRA		TS61
	MOVLW	04H
	MOVWF	ERR1
	BRA		BIJIAO
TS61	
	MOVLW	08H
	CPFSEQ	ERR
	BRA		TS71
	MOVLW	05H
	MOVWF	ERR1
	BRA		BIJIAO
TS71
	MOVLW	09H
	CPFSEQ	ERR
	BRA		TS81
	MOVLW	06H
	MOVWF	ERR1
	BRA		BIJIAO
TS81
	MOVLW	08H
	MOVWF	ERR1
;	BRA		FANHUI
	BRA		BIJIAO
	

	
TEST1

	INCF	JSQ			;THE TIME OF IG IS OVER?
	MOVF	TT20,0
	CPFSEQ	JSQ
	BRA		QXJS
	BCF		PORTB,4
	BCF		PORTB,5		;SHUT OFF
	CALL  	 DELAY10
	BSF		PORTB,4
	BSF		PORTB,5
	BCF		PORTF,6
	BCF		PORTF,1
	BSF		PIE1,2
	BSF		INTCON,4
;	BCF		SIGN2,0	
YANSHI2
	INCF    JSQ1	
	CALL	DELAY10
	MOVLW	0FFH
	MOVWF	YANSHI
	CPFSEQ	JSQ1
	BRA		QXJS0	
	NOP
	NOP
	BCF		INTCON,1
   ; BSF     PORTF,6
;	BSF		PORTF,1
	CLRF	IR200
	CLRF	ERR1
	CLRF	ERR2
	CLRF	JSQ
    CLRF	JSQ1
	CLRF	SHIYAN
;	BSF		INTCON,6
;	BSF     INTCON,7
	BRA		YANSHI2
	
QXJS0   CALL	DELAY10
		BRA     YANSHI2 
QXJS	CALL	DELAY10
		BRA		TEST1
IR3TK  

	BCF	PORTB,4
	BCF	PORTB,5
	CALL	DELAY10
	BSF	PORTB,4
	BSF	PORTB,5
	BCF	PORTF,6
	BCF	PORTF,2

	BSF	PIE1,2
	BSF	INTCON,4

;	BCF	SIGN2,0
IR3TK2
   	INCF    JSQ1	
	CALL	DELAY10
	MOVLW	0FFH
	MOVWF	YANSHI
	CPFSEQ	JSQ1
	BRA		QXJS1	
	NOP
	NOP
   ; BSF     PORTF,6
	NOP
  ;	BSF		PORTF,2
	BCF		INTCON,1
	CLRF	IR200
	CLRF	ERR1
	CLRF	ERR2
	CLRF	JSQ
    CLRF	JSQ1
	CLRF	SHIYAN
	BRA		IR3TK2
QXJS1    CALL  DELAY10
		BRA    IR3TK2

	
;******************** TESTIR2 SUBTOUTINE***************************
TESTIR2	
    BSF	PORTE,0		;IS Ir2 OFF?
	BCF	PORTE,1
	BCF	PORTE,2
	MOVFF	PORTE,ERR	
	MOVLW	0F0H
	ANDWF	ERR,1
	SWAPF	ERR
	MOVLW	05H
	CPFSEQ	ERR
	BRA	    $+4
	BRA	   TESTIR1
	MOVLW	10H
	MOVWF	IR200	
	MOVLW	01H
	CPFSEQ	ERR
	BRA		TS1
	MOVLW	07H
	MOVWF	ERR1
	BRA	BIJIAO
TS1	MOVLW	02H
	CPFSEQ	ERR
	BRA	TS2
	MOVLW	08H
	MOVWF	ERR1
	BRA	BIJIAO
TS2	MOVLW	03H
	CPFSEQ	ERR
	BRA	TS3
	MOVLW	09H
	MOVWF	ERR1
	BRA	BIJIAO
TS3	MOVLW	04H
	CPFSEQ	ERR
	BRA	TS4
	MOVLW	0AH
	MOVWF	ERR1
	BRA	BIJIAO
TS4	MOVLW	06H
	CPFSEQ	ERR
	BRA	TS5
	MOVLW	02H
	MOVWF	ERR1
	BRA	BIJIAO
TS5	MOVLW	07H
	CPFSEQ	ERR
	BRA	TS6
	MOVLW	03H
	MOVWF	ERR1
	BRA	BIJIAO
TS6	MOVLW	08H
	CPFSEQ	ERR
	BRA	TS7
	MOVLW	04H
	MOVWF	ERR1
	BRA	BIJIAO
TS7	MOVLW	09H
	CPFSEQ	ERR
	BRA	TS8
	MOVLW	05H
	MOVWF	ERR1
	BRA	BIJIAO
TS8	MOVLW	06H
	MOVWF	ERR1
BIJIAO	MOVF	ERR2,0
	CPFSLT 	ERR1
	BRA	    BIJIA1
	BTFSS	IR200,0
	BRA		TEST1
	BRA		IR3TK

BIJIA1	CPFSEQ	ERR1
	BRA		BIJIA2
	BTFSS   IR200,0
	BRA		TEST1
	BRA		IR3TK
	
BIJIA2	 BRA	FANHUI

TESTIR1	
		BCF	PORTE,0
		BCF	PORTE,1
		BCF	PORTE,2
		MOVFF	PORTE,ERR
		MOVLW	0F0H
		ANDWF	ERR,1
		SWAPF	ERR
		MOVLW	04H
		CPFSEQ	ERR
		BRA		$+4
		BRA		FANHUI
		BSF		PORTE,0
		BSF		PORTE,1
		BSF		PORTE,2
		MOVFF	PORTE,ERR
		MOVLW	0F0H
		ANDWF	ERR,1
		SWAPF	ERR
		MOVLW	04H
		CPFSEQ	ERR
		BRA		$+4
		BRA		FANHUI
		MOVLW	13H
		MOVWF	IeH
		MOVLW	88H
		MOVWF	IeL
		BCF	SIGN1,3
		BSF	BZW,1
		BSF	INTCON,4
		BCF	INTCON,1
		BSF	PIE1,2
		;GOTO	I2CIR10
		GOTO	FANHUI
		
TESTZD	CLRF	TMP0
		MOVFF	PORTG,TMP0
		MOVLW	0FH
		ANDWF	TMP0,1
		MOVLW	00H
		CPFSEQ	TMP0
		BRA		TSZD4001
		BRA		TEST4000
TSZD4001
		MOVLW	01H
		CPFSEQ	TMP0
		BRA		TSZD5000
		BRA		TEST4000
TSZD5000
		MOVLW	02H
		CPFSEQ	TMP0
		BRA		TEST6300
		BRA		TEST5000

TEST6300	
		BSF		PORTE,0
		BSF		PORTE,1
		BSF		PORTE,2
		MOVFF	PORTE,ERR
		MOVLW	0F0H
		ANDWF	ERR,1
		SWAPF	ERR
		MOVLW	00H
		CPFSEQ	ERR
		BRA		ZD10
		MOVLW	56H
		MOVWF	IeH
		MOVLW	22H
		MOVWF	IeL
		RETURN
ZD10	MOVLW	01H
		CPFSEQ	ERR
		BRA		ZD14
		MOVLW	7BH
		MOVWF	IeH
		MOVLW	0CH
		MOVWF	IeL
		RETURN
ZD14	MOVLW	02H
		CPFSEQ	ERR
		BRA		ZD20
		MOVLW	0ACH
		MOVWF	IeH
		MOVLW	044H
		MOVWF	IeL
		RETURN
ZD20	MOVLW	03H
		CPFSEQ	ERR
		BRA		ZD01
		MOVLW	0F6H
		MOVWF	IeH
		MOVLW	18H
		MOVWF	IeL
		RETURN
ZD01	MOVLW	05H
		CPFSEQ	ERR
		BRA		ZD03
		MOVLW	0CH
		MOVWF	IeH
		MOVLW	4EH
		MOVWF	IeL
		BCF		BZW,1
		RETURN
ZD03	MOVLW	06H
		CPFSEQ	ERR
		BRA		ZD05
		MOVLW	24H
		MOVWF	IeH
		MOVLW	0EAH
		MOVWF	IeL
		RETURN
ZD05	MOVLW	56H
		MOVWF	IeH
		MOVLW 	022H
		MOVLW	IeL
		RETURN



TEST4000
		BSF		PORTE,0
		BSF		PORTE,1
		BSF		PORTE,2
		MOVFF	PORTE,ERR
		MOVLW	0F0H
		ANDWF	ERR,1
		SWAPF	ERR
		MOVLW	00H
		CPFSEQ	ERR
		BRA		ZD1040
		MOVLW	36H
		MOVWF	IeH
		MOVLW	0B0H
		MOVWF	IeL
		RETURN
ZD1040	MOVLW	01H
		CPFSEQ	ERR
		BRA		ZD1440
		MOVLW	4EH
		MOVWF	IeH
		MOVLW	20H
		MOVWF	IeL
		RETURN
ZD1440	MOVLW	02H
		CPFSEQ	ERR
		BRA		ZD2040
		MOVLW	6DH
		MOVWF	IeH
		MOVLW	60H
		MOVWF	IeL
		RETURN
ZD2040	MOVLW	03H
		CPFSEQ	ERR
		BRA		ZD0140
		MOVLW	9CH
		MOVWF	IeH
		MOVLW	40H
		MOVWF	IeL
		RETURN
ZD0140	MOVLW	05H
		CPFSEQ	ERR
		BRA		ZD0340
		MOVLW	00H
		MOVWF	IeH
		MOVLW	00H
		MOVWF	IeL
		BCF		BZW,1
		RETURN
ZD0340	MOVLW	06H
		CPFSEQ	ERR
		BRA		ZD0540
		MOVLW	17H
		MOVWF	IeH
		MOVLW	70H
		MOVWF	IeL
		RETURN
ZD0540	MOVLW	27H
		MOVWF	IeH
		MOVLW 	10H
		MOVLW	IeL
		RETURN
TEST5000
		BSF		PORTE,0
		BSF		PORTE,1
		BSF		PORTE,2
		MOVFF	PORTE,ERR
		MOVLW	0F0H
		ANDWF	ERR,1
		SWAPF	ERR
		MOVLW	00H
		CPFSEQ	ERR
		BRA		ZD1050
		MOVLW	44H
		MOVWF	IeH
		MOVLW	05CH
		MOVWF	IeL
		RETURN
ZD1050	MOVLW	01H
		CPFSEQ	ERR
		BRA		ZD1450
		MOVLW	61H
		MOVWF	IeH
		MOVLW	0A8H
		MOVWF	IeL
		RETURN
ZD1450	MOVLW	02H
		CPFSEQ	ERR
		BRA		ZD2050
		MOVLW	88H
		MOVWF	IeH
		MOVLW	0B8H
		MOVWF	IeL
		RETURN
ZD2050	MOVLW	03H
		CPFSEQ	ERR
		BRA		ZD0150
		MOVLW	0C3H
		MOVWF	IeH
		MOVLW	50H
		MOVWF	IeL
		RETURN
ZD0150	MOVLW	05H
		CPFSEQ	ERR
		BRA		ZD0350
		MOVLW	09H
		MOVWF	IeH
		MOVLW	0C4H
		MOVWF	IeL
		BCF		BZW,1
		RETURN
ZD0350	MOVLW	06H
		CPFSEQ	ERR
		BRA		ZD0550
		MOVLW	1DH
		MOVWF	IeH
		MOVLW	4CH
		MOVWF	IeL
		RETURN
ZD0550	MOVLW	30H
		MOVWF	IeH
		MOVLW 	0D4H
		MOVLW	IeL
		RETURN
	



		
;******************** OMSINT SUBROUTINE ***************************
OMSINT	BCF	PIE1,2
	BCF	PIR1,2
	CLRF	TMR1H
	CLRF	TMR1L
OMS11	BSF	T1CON,0
	BSF	T2CON,2
	BSF	PIE1,2
	BSF	PIE1,1		
	CLRF	TMR2
	RETURN
;***************************
ACTION2	BTFSC	NOTM,3		
	BRA	OMS10		;HAVE BEEN SHUTTEN OFF
	BTFSC	FLAG1,2		;IF IR3 DISABLE?
	BRA	OMS0		;NOT DISABLE
	CLRF	NOTM		;CLEAR THE SIGN OF OFF OF NO DELAY			
	BRA	OMS12		;EXIT
OMS0	BTFSS	SIGN2,1		;JUDGE IA IS BIG CHANEL,OR NOT?
	BRA	OMS13		;IA IS LITTEL CHANEL
	CLRF	WREG
	CPFSEQ	IAMAXH		;JUDGE IA IS BIGGER THAN NOTIME?
	BRA	OMS2
	MOVF	IAMAXL,0
	CPFSLT	NOTIME
	BRA	OMS3
OMS2	BTFSC	NOTM,0
	BRA	OMS9		;SEND THE ORDER OF SHUT OFF
	BSF	NOTM,0
	BRA	OMS1
OMS13	MOVFF	IAMINH,COM1H	
	MOVFF	IAMINL,COM1L
	MOVFF	II31,COM0H
	MOVFF	II30,COM0L
	CALL	FIBJ
	BTFSC	FLAG1,1
	BRA	OMS2
OMS3	BCF	NOTM,0

OMS1	BTFSS	SIGN2,2		;JUDGE THE IB IS BIG CHANEL?
	BRA	OMS14		;TURN TO IC
	CLRF	WREG
	CPFSEQ	IBMAXH		;JUDGE IB IS BIGGER THAN NOTIME?
	BRA	OMS6
	MOVF	IBMAXL,0
	CPFSLT	NOTIME
	BRA	OMS4
OMS6	BTFSC	NOTM,1		;JUDGE THE SIGN BIT OF OFF?
	BRA	OMS9		;SHUT OFF
	BSF	NOTM,1
	BRA	OMS5
OMS14	MOVFF	IBMINH,COM1H	
	MOVFF	IBMINL,COM1L
	MOVFF	II31,COM0H
	MOVFF	II30,COM0L
	CALL	FIBJ
	BTFSC	FLAG1,1
	BRA	OMS6

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -