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

📄 pic16f684carbo.asm

📁 This program is Automobile CNG Conversion Electronic Change over switch source `code
💻 ASM
📖 第 1 页 / 共 2 页
字号:
    MOVF LRAM_0x29,F
    BTFSC STATUS,Z
    GOTO LADR_0x01A9
    DECF FSR,F
    MOVF INDF,W
    SUBWF LRAM_0x2A,W
    BTFSS STATUS,C
    GOTO LADR_0x019F
LADR_0x01A9
    RETURN
LADR_0x01AA
    MOVF LRAM_0x2D,F
    BTFSC STATUS,Z
    RETURN
    MOVLW 0x01
    BTFSS LRAM_0x2D,7
    MOVLW 0xFF
    ADDWF LRAM_0x2D,F
    RETURN
LADR_0x01B2
    BTFSS LRAM_0x2C,3
    DECFSZ LRAM_0x2B,F
    GOTO LADR_0x016A
    BSF LRAM_0x2C,3
    GOTO LADR_0x016A
LADR_0x01B7
    MOVLW 0xFF
    MOVWF LRAM_0x2B
    BCF LRAM_0x2C,3
    RETURN
LADR_0x01BB
    BSF LRAM_0x2C,1
    RETURN
LADR_0x01BD
    BCF LRAM_0x2C,1
    RETURN
LADR_0x01BF
    MOVLW 0xC9
    MOVWF LRAM_0x23
    MOVLW 0x01
    MOVWF LRAM_0x24
    CLRF LRAM_0x25
LADR_0x01C4
    MOVLW 0x11
    CALL LADR_0x0257
    MOVWF LRAM_0x28
    MOVLW 0x4C
    BTFSS LRAM_0x4E,1
    MOVLW 0xB2
    SUBWF LRAM_0x28,W
    BTFSS STATUS,C
    GOTO LADR_0x01D2
    MOVLW 0x01
    BTFSC LRAM_0x4E,1
    INCF LRAM_0x26,W
    BSF LRAM_0x4E,1
    GOTO LADR_0x01D6
LADR_0x01D2
    MOVLW 0x01
    BTFSS LRAM_0x4E,1
    INCF LRAM_0x26,W
    BCF LRAM_0x4E,1
LADR_0x01D6
    MOVWF LRAM_0x26
    SUBLW 0x07
    BTFSC STATUS,Z
    INCF LRAM_0x25,F
    MOVLW 0xC1
LADR_0x01DB
    CLRWDT
    ADDLW 0xFF
    BTFSS STATUS,Z
    GOTO LADR_0x01DB
    DECFSZ LRAM_0x23,F
    GOTO LADR_0x01C4
    DECFSZ LRAM_0x24,F
    GOTO LADR_0x01C4
    MOVLW 0x0B
    SUBWF LRAM_0x25,W
    BTFSC STATUS,C
    BSF LRAM_0x4E,2
    CLRF LRAM_0x25
    CLRF LRAM_0x26
    RETURN
LADR_0x01EA
    CALL LADR_0x0295
    CALL LADR_0x0311
    MOVF LRAM_0x45,F
    BTFSC STATUS,Z
    CALL LADR_0x0050
    BTFSC LRAM_0x4D,0
    GOTO LADR_0x01F9
    BTFSS LRAM_0x55,1
    BTFSS LRAM_0x55,0
    GOTO LADR_0x01F9
    MOVF LRAM_0x52,W
    BTFSC STATUS,Z
    GOTO LADR_0x01F9
    MOVWF LRAM_0x48
    BSF PORTC,3          ; !!Bank!! PORTC - TRISC
LADR_0x01F9
    CALL LADR_0x0144
    CLRF TMR0            ; !!Bank!! TMR0 - OPTION_REG
    BCF INTCON,T0IF
LADR_0x01FC
    CLRWDT
    BSF STATUS,RP0       ; !!Bank Register-Bank(0/1)-Select
    BSF PIR1,5           ; !!Bank!! PIR1 - PIE1
    BCF STATUS,RP0       ; !!Bank Register-Bank(0/1)-Select
    CALL LADR_0x02D8
    CALL LADR_0x0024
    CALL LADR_0x0047
    BTFSS LRAM_0x4D,0
    GOTO LADR_0x0207
    CALL LADR_0x005F
    GOTO LADR_0x0210
LADR_0x0207
    BTFSS LRAM_0x55,0
    GOTO LADR_0x0210
    BTFSS LRAM_0x4D,4
    BTFSS LRAM_0x4D,2
    GOTO LADR_0x0210
    BSF PORTC,3          ; !!Bank!! PORTC - TRISC
    BSF LRAM_0x4D,4
    CALL LADR_0x01BD
    CALL LADR_0x01B7
LADR_0x0210
    BTFSS INTCON,T0IF
    GOTO LADR_0x01FC
    BCF INTCON,T0IF
    MOVF LRAM_0x56,F
    BTFSS STATUS,Z
    DECF LRAM_0x56,F
    MOVF LRAM_0x48,F
    BTFSS STATUS,Z
    DECFSZ LRAM_0x48,F
    GOTO LADR_0x021C
    BTFSS LRAM_0x4D,2
    BCF PORTC,3          ; !!Bank!! PORTC - TRISC
LADR_0x021C
    CALL LADR_0x01B2
    BTFSS LRAM_0x4D,0
    CALL LADR_0x0266
    MOVF LRAM_0x4B,W
    BTFSS STATUS,Z
    DECFSZ LRAM_0x4B,F
    GOTO LADR_0x0229
    MOVF LRAM_0x4C,W
    MOVWF LRAM_0x4B
    MOVF LRAM_0x49,W
    XORWF PORTC,F        ; !!Bank!! PORTC - TRISC
    MOVF LRAM_0x4A,W
    XORWF PORTA,F        ; !!Bank!! PORTA - TRISA
LADR_0x0229
    CALL LADR_0x02E2
    BTFSS LRAM_0x4F,5
    GOTO LADR_0x0232
    BCF LRAM_0x4F,5
    BCF LRAM_0x4F,7
    BTFSS LRAM_0x4D,0
    GOTO LADR_0x0232
    CALL LADR_0x00FF
    GOTO LADR_0x0232
LADR_0x0232
    BTFSS LRAM_0x4F,4
    GOTO LADR_0x01FC
    BCF LRAM_0x4F,4
    BTFSS LRAM_0x4D,0
    CALL LADR_0x023B
    BTFSC LRAM_0x4D,0
    CALL LADR_0x00A8
    BCF LRAM_0x4F,7
    GOTO LADR_0x01FC
LADR_0x023B
    BTFSS LRAM_0x55,1
    GOTO LADR_0x0249
    BTFSC LRAM_0x55,0
    GOTO LADR_0x0243
    BCF PORTC,2          ; !!Bank!! PORTC - TRISC
    BCF LRAM_0x4D,4
    BSF LRAM_0x55,0
    GOTO LADR_0x0247
LADR_0x0243
    CLRF LRAM_0x48
    BCF PORTC,3          ; !!Bank!! PORTC - TRISC
    BSF PORTC,2          ; !!Bank!! PORTC - TRISC
    BCF LRAM_0x55,0
LADR_0x0247
    BCF LRAM_0x55,1
    GOTO LADR_0x0253
LADR_0x0249
    BTFSS LRAM_0x55,0
    GOTO LADR_0x0250
    BTFSS LRAM_0x53,0
    GOTO LADR_0x0243
    BSF PORTC,2          ; !!Bank!! PORTC - TRISC
    BSF LRAM_0x55,0
    GOTO LADR_0x0252
LADR_0x0250
    BCF PORTC,2          ; !!Bank!! PORTC - TRISC
    BCF LRAM_0x55,0
LADR_0x0252
    BSF LRAM_0x55,1
LADR_0x0253
    MOVF LRAM_0x55,W
    MOVWF LRAM_0x27
    MOVLW 0x09
    GOTO LADR_0x0376
LADR_0x0257
    MOVWF ADCON0         ; !!Bank!! ADCON0 - ADCON1
    GOTO LADR_0x0259
LADR_0x0259
    GOTO LADR_0x025A
LADR_0x025A
    GOTO LADR_0x025B
LADR_0x025B
    GOTO LADR_0x025C
LADR_0x025C
    GOTO LADR_0x025D
LADR_0x025D
    GOTO LADR_0x025E
LADR_0x025E
    GOTO LADR_0x025F
LADR_0x025F
    GOTO LADR_0x0260
LADR_0x0260
    BSF ADCON0,1         ; !!Bank!! ADCON0 - ADCON1
LADR_0x0261
    BTFSC ADCON0,1       ; !!Bank!! ADCON0 - ADCON1
    GOTO LADR_0x0261
    BCF ADCON0,0         ; !!Bank!! ADCON0 - ADCON1
    MOVF ADRESH,W        ; !!Bank!! ADRESH - ADRESL
    RETURN
LADR_0x0266
    BCF LRAM_0x4A,4
    BTFSS LRAM_0x55,1
    GOTO LADR_0x0274
    BTFSC LRAM_0x55,0
    GOTO LADR_0x026D
    BCF PORTC,1          ; !!Bank!! PORTC - TRISC
    GOTO LADR_0x0292
LADR_0x026D
    BSF PORTC,1          ; !!Bank!! PORTC - TRISC
    BTFSC LRAM_0x4D,2
    BSF PORTA,4          ; !!Bank!! PORTA - TRISA
    BTFSS LRAM_0x4D,2
    BSF LRAM_0x4A,4
    MOVLW 0xD8
    GOTO LADR_0x0293
LADR_0x0274
    BTFSS LRAM_0x55,0
    GOTO LADR_0x0291
    BCF PORTC,1          ; !!Bank!! PORTC - TRISC
    MOVLW 0x37
    MOVF LRAM_0x48,F
    BTFSC STATUS,Z
    GOTO LADR_0x027D
    BSF PORTA,4          ; !!Bank!! PORTA - TRISA
    GOTO LADR_0x0280
LADR_0x027D
    BTFSC LRAM_0x4D,2
    GOTO LADR_0x0281
    BSF LRAM_0x4A,4
LADR_0x0280
    MOVLW 0x27
LADR_0x0281
    MOVWF LRAM_0x26
    MOVF LRAM_0x29,W
    BTFSS LRAM_0x2C,2
    GOTO LADR_0x0288
    BTFSS STATUS,Z
    MOVLW 0x20
    GOTO LADR_0x0289
LADR_0x0288
    CALL LADR_0x001D
LADR_0x0289
    IORLW 0x10
    ANDWF LRAM_0x26,W
    MOVWF LRAM_0x23
    COMF LRAM_0x26,W
    ANDWF PORTA,F        ; !!Bank!! PORTA - TRISA
    MOVF LRAM_0x23,W
    IORWF PORTA,F        ; !!Bank!! PORTA - TRISA
    RETURN
LADR_0x0291
    BSF PORTC,1          ; !!Bank!! PORTC - TRISC
LADR_0x0292
    MOVLW 0xC8
LADR_0x0293
    ANDWF PORTA,F        ; !!Bank!! PORTA - TRISA
    RETURN
LADR_0x0295
    CLRF PORTA           ; !!Bank!! PORTA - TRISA
    CLRF PORTC           ; !!Bank!! PORTC - TRISC
    MOVLW 0x20
    MOVWF FSR
LADR_0x0299
    CLRWDT
    CLRF INDF
    INCF FSR,F
    BTFSS FSR,7
    GOTO LADR_0x0299
    BSF STATUS,RP0       ; !!Bank Register-Bank(0/1)-Select
    MOVLW 0x08
    MOVWF PORTA          ; !!Bank!! PORTA - TRISA
    MOVLW 0x31
    MOVWF PORTC          ; !!Bank!! PORTC - TRISC
    MOVLW 0x86
    MOVWF TMR0           ; !!Bank!! TMR0 - OPTION_REG
    MOVLW 0x10
    MOVWF ADCON0         ; !!Bank!! ADCON0 - ADCON1
    MOVLW 0x10
    MOVWF TMR2           ; !!Bank!! TRM2 - ANSEL
    CLRF CCP1CON         ; !!Bank!! CCP1CON - WPUA
    MOVLW 0x60
    MOVWF TMR1H          ; !!Bank!! TMR1H - OSCCON
    BSF PIR1,0           ; !!Bank!! PIR1 - PIE1
    BSF PIR1,5           ; !!Bank!! PIR1 - PIE1
    BCF STATUS,RP0       ; !!Bank Register-Bank(0/1)-Select
    MOVLW 0x07
    MOVWF CMCON0         ; !!Bank!! CMCON0 - VRCON
    MOVLW 0x05
    MOVWF CCP1CON        ; !!Bank!! CCP1CON - WPUA
    MOVLW 0x21
    MOVWF T1CON          ; !!Bank!! T1CON - OSCTUNE
    MOVLW 0x06
    MOVWF LRAM_0x23
    ADDLW 0x4F
    MOVWF FSR
LADR_0x02B9
    CLRWDT
    MOVLW 0x03
    ADDWF LRAM_0x23,W
    CALL LADR_0x0370
    MOVWF INDF
    DECF FSR,F
    DECFSZ LRAM_0x23,F
    GOTO LADR_0x02B9
    BTFSS LRAM_0x55,1
    GOTO LADR_0x02C6
    BTFSC LRAM_0x55,0
    BSF PORTC,2          ; !!Bank!! PORTC - TRISC
    GOTO LADR_0x02C8
LADR_0x02C6
    BTFSS LRAM_0x55,0
    BSF PORTC,2          ; !!Bank!! PORTC - TRISC
LADR_0x02C8
    CALL LADR_0x0041
    CALL LADR_0x01BF
    BTFSS LRAM_0x4E,2
    GOTO LADR_0x02CF
    CALL LADR_0x01BB
    CLRF LRAM_0x55
    BSF PORTC,2          ; !!Bank!! PORTC - TRISC
LADR_0x02CF
    MOVLW 0x5C
    MOVWF LRAM_0x47
    MOVLW 0x06
    MOVWF LRAM_0x4B
    MOVWF LRAM_0x4C
    CALL LADR_0x036B
    BSF INTCON,PEIE
    BSF INTCON,GIE
    RETURN
LADR_0x02D8
    MOVF LRAM_0x45,W
    BTFSS PORTA,3        ; !!Bank!! PORTA - TRISA
    GOTO LADR_0x02DF
    SUBLW 0x13
    BTFSC STATUS,C
    INCF LRAM_0x45,F
    RETURN
LADR_0x02DF
    BTFSS STATUS,Z
    DECF LRAM_0x45,F
    RETURN
LADR_0x02E2
    MOVLW 0x0D
    BTFSS LRAM_0x4F,3
    MOVLW 0x06
    SUBWF LRAM_0x45,W
    BTFSS STATUS,C
    GOTO LADR_0x02FD
    MOVF LRAM_0x46,W
    BTFSS LRAM_0x4F,3
    GOTO LADR_0x02F6
    SUBLW 0x02
    MOVLW 0x00
    BTFSC STATUS,C
    GOTO LADR_0x02F3
    MOVLW 0x0E
    BTFSC LRAM_0x4F,0
    BTFSC LRAM_0x4F,7
    MOVLW 0x03
LADR_0x02F3
    MOVWF LRAM_0x46
    BCF LRAM_0x4F,3
    RETURN
LADR_0x02F6
    BTFSS STATUS,Z
    DECFSZ LRAM_0x46,F
    RETURN
    BTFSS LRAM_0x4F,6
    BSF LRAM_0x4F,4
    BCF LRAM_0x4F,6
    RETURN
LADR_0x02FD
    BTFSC LRAM_0x4F,3
    GOTO LADR_0x0307
    BSF LRAM_0x4F,3
    MOVF LRAM_0x46,F
    BTFSC STATUS,Z
    GOTO LADR_0x0307
    MOVLW 0x03
    MOVWF LRAM_0x46
    BTFSC LRAM_0x4F,0
    BSF LRAM_0x4F,7
LADR_0x0307
    INCF LRAM_0x46,W
    BTFSC STATUS,Z
    MOVLW 0xFF
    MOVWF LRAM_0x46
    SUBWF LRAM_0x47,W
    BTFSS STATUS,Z
    RETURN
    BSF LRAM_0x4F,5
    BSF LRAM_0x4F,6
    RETURN
LADR_0x0311
    MOVLW 0x14
    MOVWF LRAM_0x23
    CLRF LRAM_0x45
LADR_0x0314
    BTFSC PORTA,3        ; !!Bank!! PORTA - TRISA
    INCF LRAM_0x45,F
    DECFSZ LRAM_0x23,F
    GOTO LADR_0x0314
    MOVLW 0x0A
    SUBWF LRAM_0x45,W
    MOVLW 0x00
    BTFSC STATUS,C
    MOVLW 0x14
    MOVWF LRAM_0x45
    RETURN
    BTFSS LRAM_0x4E,5
    BTFSC LRAM_0x4D,3
    GOTO LADR_0x0361
    BTFSS LRAM_0x4E,0
    GOTO LADR_0x034C
    MOVF LRAM_0x43,W
    SUBWF LRAM_0x34,W
    BTFSS STATUS,Z
    GOTO LADR_0x032A
    MOVF LRAM_0x42,W
    SUBWF LRAM_0x33,W
LADR_0x032A
    BTFSS STATUS,C
    GOTO LADR_0x035A
    RRF LRAM_0x43,W
    MOVWF LRAM_0x24
    RRF LRAM_0x42,W
    MOVWF LRAM_0x23
    RRF LRAM_0x24,F
    RRF LRAM_0x23,F
    RRF LRAM_0x24,F
    RRF LRAM_0x23,F
    MOVLW 0x1F
    ANDWF LRAM_0x24,F
    MOVF LRAM_0x42,W
    ADDWF LRAM_0x23,F
    MOVF LRAM_0x43,W
    BTFSC STATUS,C
    INCFSZ LRAM_0x43,W
    ADDWF LRAM_0x24,F
    BTFSS STATUS,C
    GOTO LADR_0x0341
    MOVLW 0xFF
    MOVWF LRAM_0x24
    MOVWF LRAM_0x23
LADR_0x0341
    MOVF LRAM_0x24,W
    SUBWF LRAM_0x34,W
    BTFSS STATUS,Z
    GOTO LADR_0x0347
    MOVF LRAM_0x23,W
    SUBWF LRAM_0x33,W
LADR_0x0347
    BTFSS STATUS,C
    GOTO LADR_0x035E
    DECFSZ LRAM_0x44,F
    RETURN
    GOTO LADR_0x0361
LADR_0x034C
    MOVF LRAM_0x51,W
    SUBWF LRAM_0x34,W
    BTFSS STATUS,Z
    GOTO LADR_0x0352
    MOVF LRAM_0x50,W
    SUBWF LRAM_0x33,W
LADR_0x0352
    MOVLW 0x03
    BTFSC STATUS,C
    GOTO LADR_0x035F
    DECFSZ LRAM_0x44,F
    RETURN
    BSF LRAM_0x4E,0
    BTFSC LRAM_0x53,0
    GOTO LADR_0x0361
LADR_0x035A
    MOVF LRAM_0x34,W
    MOVWF LRAM_0x43
    MOVF LRAM_0x33,W
    MOVWF LRAM_0x42
LADR_0x035E
    MOVLW 0x02
LADR_0x035F
    MOVWF LRAM_0x44
    RETURN
LADR_0x0361
    BSF PORTC,3          ; !!Bank!! PORTC - TRISC
    BSF LRAM_0x4D,4
    BCF LRAM_0x4E,5
    BCF LRAM_0x4D,3
    CALL LADR_0x01BD
    GOTO LADR_0x01B7
LADR_0x0367
    BCF PORTC,3          ; !!Bank!! PORTC - TRISC
    BSF LRAM_0x4E,4
    BCF LRAM_0x4D,4
    RETURN
LADR_0x036B
    BCF LRAM_0x4E,0
    BCF LRAM_0x4D,4
    MOVLW 0x03
    MOVWF LRAM_0x44
    RETURN
LADR_0x0370
    BSF STATUS,RP0       ; !!Bank Register-Bank(0/1)-Select
    MOVWF EEADR          ; !!Bank!! Unimplemented - EEADR
    BSF EECON1,0         ; !!Bank!! Unimplemented - EECON1
    MOVF CMCON1,W        ; !!Bank!! CMCON1 - EEDAT
    BCF STATUS,RP0       ; !!Bank Register-Bank(0/1)-Select
    RETURN
LADR_0x0376
    BSF STATUS,RP0       ; !!Bank Register-Bank(0/1)-Select
    MOVWF EEADR          ; !!Bank!! Unimplemented - EEADR
    BCF STATUS,RP0       ; !!Bank Register-Bank(0/1)-Select
    MOVF LRAM_0x27,W
    BSF STATUS,RP0       ; !!Bank Register-Bank(0/1)-Select
    MOVWF CMCON1         ; !!Bank!! CMCON1 - EEDAT
    BSF EECON1,2         ; !!Bank!! Unimplemented - EECON1
    BCF STATUS,C
    BTFSC INTCON,GIE
    BSF STATUS,C
    BCF INTCON,GIE
    MOVLW 0x55
    MOVWF EECON2         ; !!Bank!! Unimplemented - EECON2
    MOVLW 0xAA
    MOVWF EECON2         ; !!Bank!! Unimplemented - EECON2
    BSF EECON1,1         ; !!Bank!! Unimplemented - EECON1
    BTFSC STATUS,C
    BSF INTCON,GIE
LADR_0x0388
    CLRWDT
    BTFSC EECON1,1       ; !!Bank!! Unimplemented - EECON1
    GOTO LADR_0x0388
    BCF EECON1,2         ; !!Bank!! Unimplemented - EECON1
    BCF STATUS,RP0       ; !!Bank Register-Bank(0/1)-Select
    RETURN

    End

⌨️ 快捷键说明

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