📄 zsy.asm
字号:
BCF PORTB,LED1
BCF PORTB,LED2
BCF PORTB,LED3
BCF PORTB,LED4
BCF PORTB,LED5
BCF PORTB,LED6
NOP
BSF PORTB,KEY
NOP
NOP
BTFSS PORTB,KEY
GOTO WAIT_LOW
NOP
GOTO MAIN1
AD_CHG1
NOP
CALL DELAY
MOVLW 0xC1
MOVWF ADCON0
CALL DELAY
BSF ADCON0,GO
AD_WAIT1
CALL DELAY
BTFSC ADCON0,GO
GOTO AD_WAIT1
MOVFW ADRES
ADDWF AD1TEMP,1
MOVFW STATUS
MOVWF TEMP
RRF AD1TEMP,1
BTFSS TEMP,C
GOTO AD_SET1
BSF AD1TEMP,7
GOTO AD_CHG2
AD_SET1
BCF AD1TEMP,7
GOTO AD_CHG2
AD_CHG2
NOP
CALL DELAY
MOVLW 0xC9
MOVWF ADCON0
CALL DELAY
BSF ADCON0,GO
AD_WAIT2
CALL DELAY
BTFSC ADCON0,GO
GOTO AD_WAIT2
MOVFW ADRES
ADDWF AD2TEMP,1
MOVFW STATUS
MOVWF TEMP
RRF AD2TEMP,1
BTFSS TEMP,C
GOTO AD_SET2
BSF AD2TEMP,7
GOTO AD_CHG3
AD_SET2
BCF AD2TEMP,7
GOTO AD_CHG3
AD_CHG3
NOP
MOVLW 0xD1
MOVWF ADCON0
CALL DELAY
BSF ADCON0,GO
AD_WAIT3
BTFSC ADCON0,GO
GOTO AD_WAIT3
MOVFW ADRES
ADDWF AD3TEMP,1
MOVFW STATUS
MOVWF TEMP
RRF AD3TEMP,1
BTFSS TEMP,C
GOTO AD_SET3
BSF AD3TEMP,7
GOTO AD_CHG4
AD_SET3
BCF AD3TEMP,7
GOTO AD_CHG4
AD_CHG4
NOP
MOVLW 0xD9
MOVWF ADCON0
CALL DELAY
BSF ADCON0,GO
AD_WAIT4
BTFSC ADCON0,GO
GOTO AD_WAIT4
MOVFW ADRES
ADDWF AD4TEMP,1
MOVFW STATUS
MOVWF TEMP
RRF AD4TEMP,1
BTFSS TEMP,C
GOTO AD_SET4
BSF AD4TEMP,7
GOTO AD_CHG5
AD_SET4
BCF AD4TEMP,7
GOTO AD_CHG5
AD_CHG5
NOP
MOVLW 0xE1
MOVWF ADCON0
CALL DELAY
BSF ADCON0,GO
AD_WAIT5
BTFSC ADCON0,GO
GOTO AD_WAIT5
MOVFW ADRES
ADDWF AD5TEMP,1
MOVFW STATUS
MOVWF TEMP
RRF AD5TEMP,1
BTFSS TEMP,C
GOTO AD_SET5
BSF AD5TEMP,7
GOTO AD_CHG6
AD_SET5
BCF AD5TEMP,7
GOTO AD_CHG6
AD_CHG6
NOP
BTFSC XT_MAP,0
GOTO NB_ZT
NOP
SD_ZT
BCF PORTB,LED1
BSF PORTB,LED2
BCF PORTB,LED5
BCF PORTB,LED6
BTFSS KEY_MAP,SD
GOTO SD_ERR
NOP
BTFSC SD_MAP,0
GOTO SD_JIDAN1
NOP
MOVLW 0xA6
SUBWF AD2TEMP,0
BTFSC STATUS,C
GOTO SD_LOWA
MOVLW 0x69
SUBWF AD2TEMP,0
BTFSS STATUS,C
GOTO SD_LOWA
MOVLW 0xFF
MOVWF YS_SDERR
GOTO SD_ZT2
SD_LOWA
DECFSZ YS_SDERR,1
GOTO SD_ZT2
NOP
GOTO SD_ERR
SD_ZT2
NOP
BTFSC SD_MAP,1
GOTO SD_JIDAN2
NOP
GOTO SD_JIDAN3
NB_ZT
BSF PORTB,LED1
BCF PORTB,LED2
BCF PORTB,LED3
BCF PORTB,LED4
BTFSS KEY_MAP,SD
GOTO SD_LOWB
MOVLW 0xA0
SUBWF AD2TEMP,0
BTFSC STATUS,C
GOTO SD_LOWB
MOVLW 0x73
SUBWF AD2TEMP,0
BTFSS STATUS,C
GOTO SD_LOWB
NOP
DECFSZ YS_SDERR,1
GOTO NB_ZT2
MOVLW 0xFF
MOVWF YS_SDERR
DECFSZ YS_TOSD,1
GOTO NB_ZT2
NOP
GOTO NB_TOSD
SD_LOWB
MOVLW 0xFF
MOVWF YS_SDERR
MOVLW 0x80
MOVWF YS_TOSD
NB_ZT2
NOP
BTFSC NB_MAP,0
GOTO NB_JIDAN1
NOP
GOTO NB_JIDAN2
NOP
NB_TOSD
NOP
BSF STATUS,RP0
BCF PIE1,TMR1IE
BCF INTCON,PEIE
BCF INTCON,GIE
BCF STATUS,RP0
BSF PORTC,JDQ
BSF PORTC,CD
BSF PORTC,PWM
BCF PORTC,PWM1
BCF PORTC,PWM2
BCF XT_MAP,0
BSF SD_MAP,0
GOTO LOOP_END
SD_JIDAN1
NOP
BCF PORTC,JDQ
BSF PORTC,CD
BSF PORTC,PWM
BCF PORTC,PWM1
BCF PORTC,PWM2
DECFSZ CDYS_TIM,1
GOTO LOOP_END
MOVLW 0x46
SUBWF AD2TEMP,0
BTFSS STATUS,C
GOTO SD_ERR
MOVLW 0x04
MOVWF CDYS_TIM
BCF XT_MAP,0
BCF SD_MAP,0
BSF SD_MAP,1
MOVLW 0x00
MOVWF YZ_TM1L
MOVLW 0x80
MOVWF YZ_TM1H
MOVLW 0x00
MOVWF SF_CDMP
MOVLW 0x05
MOVWF SF_CDYS
JD_AA1
BSF PORTA,SDTB1
NOP
BTFSC PORTA,SDTB1
GOTO JD_AA1
NOP
JD_AA2
BSF PORTA,SDTB1
NOP
BTFSS PORTA,SDTB1
GOTO JD_AA2
NOP
JD_AA3
BSF PORTA,SDTB1
NOP
BTFSC PORTA,SDTB1
GOTO JD_AA3
NOP
JD_AA4
BSF PORTA,SDTB1
NOP
BTFSS PORTA,SDTB1
GOTO JD_AA4
NOP
JD_AA5
BSF PORTA,SDTB1
NOP
BTFSC PORTA,SDTB1
GOTO JD_AA5
BCF CD_MAP,0
BSF CD_MAP,1
BCF PORTB,LED3
BSF PORTB,LED4
GOTO LOOP_END
SD_ERR
NOP
BSF PORTC,JDQ
BSF PORTC,CD
BSF PORTC,PWM
BCF PORTC,PWM1
BCF PORTC,PWM2
BSF XT_MAP,0
BSF NB_MAP,0
BSF OUT_MAP,MPZF
BCF OUT_MAP,MP01
BCF OUT_MAP,MPQH
MOVLW 0x01
MOVWF T1CON
MOVLW 0xFE
MOVWF TMR1H
MOVLW 0x0B
MOVWF TMR1L
MOVLW 0x01
MOVWF DOT_COUNT
MOVLW 0x28
MOVWF JS_COUNT
BCF PD_MAP,0
BCF PD_MAP,1
BCF PORTC,0
MOVLW 0xFF
MOVWF YS_SCLOW
MOVLW 0x00
MOVWF OUT_LINE
MOVLW 0x28
MOVWF LS_COUNT
MOVLW 0x00
MOVWF LS_DOT
CLEAR_DATA
MOVLW 0xA0
ADDWF LS_DOT,0
MOVWF FSR
MOVLW 0x00
MOVWF INDF
MOVLW 0xD0
ADDWF LS_DOT,0
MOVWF FSR
MOVLW 0x2C
MOVWF INDF
INCF LS_DOT,1
DECFSZ LS_COUNT,1
GOTO CLEAR_DATA
BSF STATUS,RP0
BSF PIE1,TMR1IE
BSF INTCON,PEIE
BSF INTCON,GIE
BCF STATUS,RP0
NOP
MOVLW 0x3C
MOVWF CCP1CON
MOVLW 0x00
MOVWF CCPR1L
MOVLW 0x3C
MOVWF CCP2CON
MOVLW 0x00
MOVWF CCPR2L
GOTO LOOP_END
SD_JIDAN2
MOVLW 0xA8 ;3.3V
SUBWF AD3TEMP,0
BTFSS STATUS,C
GOTO CHG_BAT1
NOP
DECFSZ YS_BATH,1
GOTO CHG_BAT
BCF PORTC,JDQ
BSF PORTC,CD
BSF PORTC,PWM
BCF PORTC,PWM1
BCF PORTC,PWM2
BCF XT_MAP,0
BCF SD_MAP,0
BCF SD_MAP,1
GOTO LOOP_END
CHG_BAT1
MOVLW 0xFF
MOVWF YS_BATH
CHG_BAT
NOP
BCF PORTC,JDQ
BSF PORTC,PWM
BCF PORTC,PWM1
BCF PORTC,PWM2
NOP
DECFSZ CDYS_TIM,1
GOTO CD_WRIT
MOVLW 0x04
MOVWF CDYS_TIM
PAN_DCDY
MOVLW 0xA3 ;3.2V
SUBWF AD3TEMP,0
BTFSS STATUS,C
GOTO PAN_DCDL
NOP
BSF PORTB,LED3
BCF PORTB,LED4
GOTO OUT_SUB1
PAN_DCDL
MOVLW 0x33 ;1V
SUBWF AD4TEMP,0
BTFSS STATUS,C
GOTO DCDY_LOW
NOP
BCF PORTB,LED3
BSF PORTB,LED4
GOTO OUT_SUB1
DCDY_LOW
NOP
GOTO OUT_ADD1
OUT_SUB1
BSF PORTC,LED
MOVLW 0x01
SUBWF YZ_TM1L,1
BTFSC STATUS,C
GOTO CD_WRIT
MOVLW 0xFF
MOVWF YZ_TM1L
MOVLW 0x01
SUBWF YZ_TM1H,1
MOVLW 0x8B
SUBWF YZ_TM1H,0
BTFSC STATUS,C
GOTO CD_WRIT
MOVLW 0x00
MOVWF YZ_TM1L
MOVLW 0x8B
MOVWF YZ_TM1H
GOTO CD_WRIT
OUT_ADD1
BCF PORTC,LED
MOVLW 0x01
ADDWF YZ_TM1L,1
BTFSS STATUS,C
GOTO CD_WRIT
MOVLW 0x01
ADDWF YZ_TM1H,1
MOVLW 0xC5
SUBWF YZ_TM1H,0
BTFSS STATUS,C
GOTO CD_WRIT
NOP
MOVLW 0xFF
MOVWF YZ_TM1L
MOVLW 0xC4
MOVWF YZ_TM1H
GOTO CD_WRIT
CD_WRIT
BTFSS CD_MAP,0
GOTO CD_FUBZ
NOP
CD_ZBZ
NOP
BTFSC CD_MAP,1
GOTO CD_ZBZA
NOP ;10
BTFSS SF_CDMP,5
GOTO LOOP_END
CALL DELAY
NOP
CALL DELAY
NOP
CALL DELAY
NOP
CALL DELAY
NOP
CALL DELAY
NOP
CALL DELAY
NOP
CALL DELAY
NOP
CALL DELAY
NOP
BSF PORTC,CD
BCF SF_CDMP,5
BSF CD_MAP,0
BSF CD_MAP,1
GOTO LOOP_END
CD_ZBZA ;11
BSF PORTA,SDTB1
NOP
NOP
BTFSC PORTA,SDTB1
GOTO LOOP_END
MOVLW 0x01
MOVWF T1CON
MOVFW YZ_TM1H
MOVWF TMR1H
MOVFW YZ_TM1L
MOVWF TMR1L
NOP
BSF STATUS,RP0
BSF PIE1,TMR1IE
BSF INTCON,PEIE
BSF INTCON,GIE
BCF STATUS,RP0
BCF CD_MAP,0
BCF CD_MAP,1
GOTO LOOP_END
CD_FUBZ
NOP
BTFSC CD_MAP,1
GOTO CD_FUBZA
NOP ;00
BTFSS SF_CDMP,5
GOTO LOOP_END
CALL DELAY
NOP
CALL DELAY
NOP
CALL DELAY
NOP
CALL DELAY
NOP
CALL DELAY
NOP
CALL DELAY
NOP
CALL DELAY
NOP
CALL DELAY
NOP
BSF PORTC,CD
BCF SF_CDMP,5
BCF CD_MAP,0
BSF CD_MAP,1
GOTO LOOP_END
CD_FUBZA ;01
BSF PORTA,SDTB1
NOP
NOP
BTFSS PORTA,SDTB1
GOTO LOOP_END
MOVLW 0x01
MOVWF T1CON
MOVFW YZ_TM1H
MOVWF TMR1H
MOVFW YZ_TM1L
MOVWF TMR1L
NOP
BSF STATUS,RP0
BSF PIE1,TMR1IE
BSF INTCON,PEIE
BSF INTCON,GIE
BCF STATUS,RP0
BSF CD_MAP,0
BCF CD_MAP,1
GOTO LOOP_END
SD_JIDAN3
BCF PORTB,LED3
BCF PORTB,LED4
MOVLW 0xB3 ;3.5V
SUBWF AD3TEMP,0
BTFSS STATUS,C
GOTO CHG_STOP1
NOP
DECFSZ KKG_BAD,1
GOTO CHG_STOP
NOP
KKG_JICUAN
BSF PORTB,LED1
BCF PORTB,LED2
BCF PORTB,LED3
BSF PORTB,LED4
BCF PORTB,LED5
BSF PORTB,LED6
BSF STATUS,RP0
BCF PIE1,TMR1IE
BCF INTCON,PEIE
BCF INTCON,GIE
BCF STATUS,RP0
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -