📄 txsend.asm
字号:
MOVWF 0x25
CLRF 0x26
CLRF 0x27
Label_0031 MOVLW 0x80
MOVWF ADCON0;;;;;;;;;FOSC/32,RA0
CALL Label_0023;;;;;;;;;;AD测量8次求平均
ADDWF 0x27,1
BTFSC STATUS,C
INCF 0x26,1
DECFSZ 0x25,1
GOTO Label_0031;;;;;;;;;;AD测量8次后平均再测8次求平均
RRF 0x26,1
RRF 0x27,1
RRF 0x26,1
RRF 0x27,1
RRF 0x26,1
RRF 0x27,0
;*************
;MOVLW 0X20;***
;*************
MOVWF 0x4A;;;;;;;;;AD测量结果放入4AH寄存器
ADDLW 0x06
MOVWF 0x48;;;;;;;;;;AD测量结果+6放入48H寄存器
ADDLW 0x10
MOVWF 0x49;;;;;;;;;;AD测量结果+16放入49寄存器
MOVLW 0x5C
SUBWF 0x4A,0
BTFSC STATUS,C
GOTO Label_0032;;;;;;;;;;AD结果大于1。8V设置标志38H的0位=1
MOVLW 0x3D
SUBWF 0x4A,0
BTFSC STATUS,C
GOTO Label_0033;;;;;;;;;;;;AD结果大于1。19V设置标志37H的4位=1
MOVLW 0x0C
SUBWF 0x4A,0
BTFSC STATUS,C
GOTO Label_0032;;;;;;;;;;;;
RETURN
;;****************************************************设置标志位38H的0位为1
Label_0032 BSF 0x38,0
RETURN
;;************************************************************************************
Label_0033 BSF 0x37,4
GOTO Label_0034
Label_0035 CLRF 0x2E
BCF 0x36,5
CLRF 0x3C
BCF 0x36,1
CLRF 0x5A
RETURN
Label_00CC BTFSS 0x36,0
GOTO Label_0035
BTFSC 0x38,7
GOTO Label_0035
BTFSC 0x36,1
GOTO Label_0035
MOVLW 0x08
SUBWF 0x60,0
BTFSS STATUS,C
GOTO Label_0035
BTFSC 0x36,1
GOTO Label_0035
MOVF 0x3C,0
SUBLW 0x04
BTFSS STATUS,C
GOTO Label_0035
MOVF 0x3C,0
CLRF 0x3C
ADDWF 0x5A,1
MOVLW 0x0F
SUBWF 0x5A,0
BTFSC STATUS,C
GOTO Label_0035
MOVLW 0x04
SUBWF 0x2E,0
BTFSC STATUS,C
GOTO Label_0036
MOVLW 0x02
SUBWF 0x2E,0
BTFSC STATUS,C
GOTO Label_0037
RETURN
Label_0037 BSF 0x36,5
RETURN
Label_0036 BSF 0x36,6
BCF 0x38,4
RETURN
;------------自检灯输出设置-------------------
;Label_0012 BTFSC 0x38,2
; GOTO Label_0038
; BTFSC 0x38,0
; GOTO Label_0039
; BTFSS PORTB,0
; GOTO Label_0039
; BTFSC 0x38,5
; GOTO Label_003A
; BTFSC 0x38,7
; GOTO Label_003B
; BTFSC 0x39,5
; GOTO Label_003C
; BTFSC 0x39,4
; GOTO Label_003D
; BTFSS 0x36,0
; GOTO Label_003E
; BSF STATUS,RP0
; MOVF TRISB,0
; BCF STATUS,RP0
; MOVWF 0x22
; BTFSC 0x22,1
; GOTO Label_003F
;Label_0040 ;BCF PORTC,7
; CLRF 0x5D
; CLRF 0x5F
; RETURN
;Label_003F BTFSC PORTB,1
; GOTO Label_0040
; ;BSF PORTC,7
; CLRF 0x5D
; CLRF 0x5F
; RETURN
;Label_003A MOVLW 0x0E
; MOVWF 0x5D
; GOTO Label_0041
;Label_003C MOVLW 0x0C
; MOVWF 0x5D
; GOTO Label_0041
;Label_0038 BTFSC 0x36,2
; GOTO Label_0042
; MOVLW 0x0A
; MOVWF 0x5D
; GOTO Label_0041
;Label_0042 MOVLW 0x08
; MOVWF 0x5D
; GOTO Label_0041
;Label_0039 MOVLW 0x06
; MOVWF 0x5D
; GOTO Label_0041
;Label_003B MOVLW 0x04
; MOVWF 0x5D
; GOTO Label_0041
;Label_003E MOVLW 0x02
; MOVWF 0x5D
; GOTO Label_0041
;Label_003D MOVLW 0x10
; MOVWF 0x5D
;Label_0041 MOVF 0x5D,0
; SUBWF 0x5E,0
; BTFSC STATUS,C
; GOTO Label_0043
; MOVF 0x5F,1
; BTFSS STATUS,Z
; GOTO Label_0044
; ;BTFSS PORTC,7
; ;GOTO Label_0045
; ;NOP;BCF PORTC,7
; GOTO Label_0044
;Label_0045 NOP;BSF PORTC,7
;Label_0044 INCF 0x5F,1
; MOVF 0x5F,0
; SUBLW 0x06
; BTFSC STATUS,C
; GOTO Label_0046
; INCF 0x5E,1
; CLRF 0x5F
;Label_0046 RETURN
;Label_0043 NOP;BCF PORTC,7
; INCF 0x5F,1
; MOVF 0x5F,0
; SUBLW 0x0A
; BTFSC STATUS,C
; GOTO Label_0046
; CLRF 0x5F
; CLRF 0x5E
; RETURN
;-------------电池电压测量--------------
Label_0010 MOVF 0x66,0
SUBLW 0xAB
BTFSC STATUS,C
GOTO Label_0047;;;;;;;;;;;;;;电池电压大于45V(ABH)
CLRF 0x56
Label_004E INCF 0x54,1
BTFSC STATUS,Z
DECF 0x54,1
MOVF 0x54,0
SUBLW 0x3D
BTFSS STATUS,C
GOTO Label_0048
RETURN
Label_0048 DECF 0x54,1
CLRF 0x53
;NOP; BCF 0X7D,0;PORTC,0
BCF 0x39,4
RETURN
Label_004D INCF 0x53,1
MOVF 0x60,0
SUBLW 0x0B
BTFSC STATUS,C
GOTO Label_0049
MOVLW 0x30
SUBWF 0x53,0
BTFSC STATUS,C
GOTO Label_004A
RETURN
Label_0049 MOVLW 0x0F
SUBWF 0x53,0
BTFSC STATUS,C
GOTO Label_004A
RETURN
Label_004A CLRF 0x54
CLRF 0x53
;NOP;BSF PORTC,0
BSF 0x39,4;vol<42v
RETURN
Label_0047 MOVWF 0x56
SUBLW 0x15
BTFSC STATUS,C
GOTO Label_004B
MOVLW 0x1E
MOVWF 0x56
GOTO Label_004C
Label_004B BCF STATUS,C
RRF 0x56,0
ADDWF 0x56,1
Label_004C MOVF 0x66,0
SUBLW 0X9C;;;;0x9D;;;;;;;;;;;电池保护电压(由于稳压电源的变化,电阻的变化引起波动)
BTFSC STATUS,C
GOTO Label_004D;;;;;;;;电池电压〈9D GOTO
BTFSS 0x39,4
RETURN
ADDLW 0x08
BTFSS STATUS,C
GOTO Label_004E
RETURN
;-----------------------------------------
Label_000C
;------------------------------------
BTFSS PORTC,7
GOTO SDLJL
;-----------------------------------
BCF STATUS,C
RRF 0X23,1
BCF STATUS,C
RRF 0X23,1
BCF STATUS,C
RRF 0X23,0 ;;;;;;0.125
ADDWF 0X23,1
ADDWF 0X23,1
ADDWF 0X23,1
ADDWF 0X23,1
ADDWF 0X23,1 ;;;;;;0.875
SDLJL MOVF 0x56,0
SUBWF 0x23,0
BTFSS STATUS,C
GOTO Label_004F
MOVWF 0x24
SUBWF 0x48,0
BTFSC STATUS,C
GOTO Label_004F
MOVF 0x24,0
MOVWF 0x45
RETURN
Label_004F MOVF 0x48,0
MOVWF 0x45
RETURN
;----------------------------------------------------
Label_000B GOTO Label_0050
Label_0050 BTFSC 0x36,5
GOTO Label_0054
MOVLW 0x60
SUBWF 0x30,0
BTFSS STATUS,C
GOTO Label_0055
MOVLW 0x58
BTFSC 0x3B,0
MOVLW 0x74
SUBWF 0x30,0
BTFSC STATUS,C
GOTO Label_0056
Label_0055 MOVLW 0x38
MOVWF 0x24
GOTO Label_0057
Label_0054 MOVLW 0x28
MOVWF 0x24
GOTO Label_0057
Label_0056 MOVWF 0x24
BCF STATUS,C
RRF 0x24,1
BCF STATUS,C
RRF 0x24,1
BCF STATUS,C
RRF 0x24,0
BTFSC 0x3B,1
GOTO Label_0058
BTFSC 0x3B,0
GOTO Label_0059
COMF 0x30,0
BTFSC STATUS,Z
GOTO Label_005A
MOVLW 0xE1
SUBWF 0x30,0
BTFSC STATUS,C
GOTO Label_005B
MOVLW 0xA9
SUBWF 0x30,0
BTFSC STATUS,C
GOTO Label_005C
MOVLW 0x7D
SUBWF 0x30,0
BTFSC STATUS,C
GOTO Label_005D
MOVLW 0x61
SUBWF 0x30,0
BTFSC STATUS,C
GOTO Label_005E
MOVLW 0x38
GOTO Label_0057
Label_005E MOVWF 0x24
BCF STATUS,C
RRF 0x24,0
SUBLW 0x0D
ADDLW 0X2B;;;;;;;;;;;;;;;;;0x2A
GOTO Label_0057
Label_005D MOVWF 0x24
BCF STATUS,C
RRF 0x24,1
BCF STATUS,C
RRF 0x24,0
SUBLW 0x0A
ADDLW 0X20;;;;;;;;;;;;;;;;;;0x1F
GOTO Label_0057
Label_005C MOVWF 0x24
BCF STATUS,C
RRF 0x24,1
BCF STATUS,C
RRF 0x24,1
BCF STATUS,C
RRF 0x24,0
SUBLW 0x06
ADDLW 0X19;;;;;;;;;;;;;;0x18
GOTO Label_0057
Label_005B MOVLW 0x19;;;;;;;;;;;;0x17
GOTO Label_0057
Label_005A MOVLW 0X19;;;;;;;;;;;;;;;;0x1C
GOTO Label_0057
Label_0059 COMF 0x30,0
BTFSC STATUS,Z
GOTO Label_005F
MOVLW 0xC9
SUBWF 0x30,0
BTFSC STATUS,C
GOTO Label_0060
MOVLW 0xA9
SUBWF 0x30,0
BTFSC STATUS,C
GOTO Label_0061
MOVLW 0x7D
SUBWF 0x30,0
BTFSC STATUS,0
GOTO Label_0062
MOVLW 0x61
SUBWF 0x30,0
BTFSC STATUS,C
GOTO Label_0063
MOVLW 0x38
GOTO Label_0057
Label_0063 MOVWF 0x24
BCF STATUS,C
RRF 0x24,0
SUBLW 0x0D
ADDLW 0x2A
GOTO Label_0057
Label_0062 MOVWF 0x24
BCF STATUS,C
RRF 0x24,1
BCF STATUS,C
RRF 0x24,0
SUBLW 0x0A
ADDLW 0x1F
GOTO Label_0057
Label_0061 MOVLW 0x1F
GOTO Label_0057
Label_0060 MOVLW 0x1D
GOTO Label_0057
Label_005F MOVLW 0x22
GOTO Label_0057
Label_0064 MOVLW 0x03;;;;;;;;;;;;;;;;0x07
ADDWF 0x24,0
GOTO Label_0057
Label_0058 SUBLW 0x33
MOVWF 0x24
COMF 0x30,0
BTFSC STATUS,Z
GOTO Label_0064
MOVF 0x24,0
Label_0057 BTFSS 0x37,4
GOTO Label_0065
ADDWF 0x4A,0
MOVWF 0x23
RETURN
Label_0065 MOVWF 0x23
RETURN
Label_0034 MOVLW 0x28
SUBWF 0x48,0
MOVWF 0x46
MOVLW 0x10
SUBWF 0x48,0
MOVWF 0x47
RETURN
Label_0067 MOVF PORTB,0
ANDLW 0x03
MOVWF PORTB
BSF STATUS,RP0
BSF TRISB,1
BCF STATUS,RP0
BSF 0x38,6
RETURN
Label_0068 MOVLW 0x80
MOVWF ADCON0;;;;FOSC/32, AN0
BSF 0x3A,3
CALL Label_0066
MOVWF 0x24
SUBWF 0x49,0
BTFSS STATUS,C
BSF 0x38,2
RETURN
Label_0008 CLRF CCP1CON;;;;;;;;关上下桥
CALL Label_0067
MOVF PORTB,0
IORLW 0xE0
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -