📄 engine.asm
字号:
MOVLW 0x02
XORWF JYMK_FLAG_ADDRB,0
BTFSC STATUS,Z
GOTO JUDGE_FLAG2
MOVLW 0x03
XORWF JYMK_FLAG_ADDRB,0
BTFSC STATUS,Z
GOTO JUDGE_FLAG3
MOVLW 0x04
XORWF JYMK_FLAG_ADDRB,0
BTFSC STATUS,Z
GOTO JUDGE_FLAG4
MOVLW 0x05
XORWF JYMK_FLAG_ADDRB,0
BTFSC STATUS,Z
GOTO JUDGE_FLAG5
MOVLW 0x06
XORWF JYMK_FLAG_ADDRB,0
BTFSC STATUS,Z
GOTO JUDGE_FLAG6
MOVLW 0x07
XORWF JYMK_FLAG_ADDRB,0
BTFSC STATUS,Z
GOTO JUDGE_FLAG7
JUDGE_FLAG0:
BTFSC INDF,0x00
GOTO JYMK_FLAG_EXIT
BSF INDF,0x00
GOTO JYMK_FLAG_SET
JUDGE_FLAG1:
BTFSC INDF,0x01
GOTO JYMK_FLAG_EXIT
BSF INDF,0x01
GOTO JYMK_FLAG_SET
JUDGE_FLAG2:
BTFSC INDF,0x02
GOTO JYMK_FLAG_EXIT
BSF INDF,0x02
GOTO JYMK_FLAG_SET
JUDGE_FLAG3:
BTFSC INDF,0x03
GOTO JYMK_FLAG_EXIT
BSF INDF,0x03
GOTO JYMK_FLAG_SET
JUDGE_FLAG4:
BTFSC INDF,0x04
GOTO JYMK_FLAG_EXIT
BSF INDF,0x04
GOTO JYMK_FLAG_SET
JUDGE_FLAG5:
BTFSC INDF,0x05
GOTO JYMK_FLAG_EXIT
BSF INDF,0x05
GOTO JYMK_FLAG_SET
JUDGE_FLAG6:
BTFSC INDF,0x06
GOTO JYMK_FLAG_EXIT
BSF INDF,0x06
GOTO JYMK_FLAG_SET
JUDGE_FLAG7:
BTFSC INDF,0x07
GOTO JYMK_FLAG_EXIT
BSF INDF,0x07
GOTO JYMK_FLAG_SET
JYMK_FLAG_EXIT:
CALL PAGE0
BCF REC_FLAG,REC_EN
GOTO GET_JYMK_FLAG_OVER
JYMK_FLAG_SET:
CALL PAGE0
BSF REC_FLAG,REC_EN
GOTO GET_JYMK_FLAG_OVER
;=========================================
GET_REC_JYMK_VALUE:
MOVLW 0x6
MOVWF PCLATH
MOVF SPEED_LEVEL,W
MOVWF TMP_LEVEL
RLF TMP_LEVEL,0x1
RLF TMP_LEVEL,0x0
ANDLW 0xFC
;CLRF STATUS
;RRF SPEED_LEVEL,0x1
GOTO GET_REC_PYMK_VLAUE0
ORG H'680'
GET_REC_PYMK_VLAUE0:
ADDWF PCL,0x1
GET_REC_PYMK_SPEED0_JYMK:
MOVLW 0x8
MOVWF PCLATH
CALL 0x800
RETURN
GET_REC_PYMK_SPEED1_JYMK:
MOVLW 0x8
MOVWF PCLATH
CALL 0x810
RETURN
GET_REC_PYMK_SPEED2_JYMK:
MOVLW 0x8
MOVWF PCLATH
CALL 0x820
RETURN
GET_REC_PYMK_SPEED3_JYMK:
MOVLW 0x8
MOVWF PCLATH
CALL 0x830
RETURN
GET_REC_PYMK_SPEED4_JYMK:
MOVLW 0x8
MOVWF PCLATH
CALL 0x840
RETURN
GET_REC_PYMK_SPEED5_JYMK:
MOVLW 0x8
MOVWF PCLATH
CALL 0x850
RETURN
GET_REC_PYMK_SPEED6_JYMK:
MOVLW 0x8
MOVWF PCLATH
CALL 0x860
RETURN
GET_REC_PYMK_SPEED7_JYMK:
MOVLW 0x8
MOVWF PCLATH
CALL 0x870
RETURN
GET_REC_PYMK_SPEED8_JYMK:
MOVLW 0x8
MOVWF PCLATH
CALL 0x880
RETURN
GET_REC_PYMK_SPEED9_JYMK:
MOVLW 0x8
MOVWF PCLATH
CALL 0x890
RETURN
GET_REC_PYMK_SPEEDA_JYMK: MOVLW 0x8
MOVWF PCLATH
CALL 0x8A0
RETURN
GET_REC_PYMK_SPEEDB_JYMK:
MOVLW 0x8
MOVWF PCLATH
CALL 0x8B0
RETURN
GET_REC_PYMK_SPEEDC_JYMK:
MOVLW 0x8
MOVWF PCLATH
CALL 0x8C0
RETURN
GET_REC_PYMK_SPEEDD_JYMK:
MOVLW 0x8
MOVWF PCLATH
CALL 0x8D0
RETURN
GET_REC_PYMK_SPEEDE_JYMK:
MOVLW 0x8
MOVWF PCLATH
CALL 0x8E0
RETURN
GET_REC_PYMK_SPEEDF_JYMK:
MOVLW 0x8
MOVWF PCLATH
CALL 0x8F0
RETURN
GET_REC_PYMK_SPEED10_JYMK:
MOVLW 0x9
MOVWF PCLATH
CALL 0x900
RETURN
GET_REC_PYMK_SPEED11_JYMK:
MOVLW 0x9
MOVWF PCLATH
CALL 0x910
RETURN
GET_REC_PYMK_SPEED12_JYMK:
MOVLW 0x9
MOVWF PCLATH
CALL 0x920
RETURN
GET_REC_PYMK_SPEED13_JYMK:
MOVLW 0x9
MOVWF PCLATH
CALL 0x930
RETURN
GET_REC_PYMK_SPEED14_JYMK:
MOVLW 0x9
MOVWF PCLATH
CALL 0x940
RETURN
GET_REC_PYMK_SPEED15_JYMK:
MOVLW 0x9
MOVWF PCLATH
CALL 0x950
RETURN
GET_REC_PYMK_SPEED16_JYMK:
MOVLW 0x9
MOVWF PCLATH
CALL 0x960
RETURN
GET_REC_PYMK_SPEED17_JYMK:
MOVLW 0x9
MOVWF PCLATH
CALL 0x970
RETURN
GET_REC_PYMK_SPEED18_JYMK:
MOVLW 0x9
MOVWF PCLATH
CALL 0x970
RETURN
GET_REC_PYMK_VAL_OVER: CLRF PCLATH
RETURN
GET_PZ_PQYC:
MOVLW 0x7
MOVWF PCLATH
MOVF SPEED_LEVEL,W
MOVWF TMP_LEVEL
RLF TMP_LEVEL,0x1
RLF TMP_LEVEL,0x0
ANDLW 0xFC
GOTO GET_PQYC0
ORG H'780'
GET_PQYC0:
ADDWF PCL,0x1
GET_PZ0_SPEED0_PQYC: MOVLW 0xC
MOVWF PCLATH
CALL 0xC00
RETURN
GET_PZ0_SPEED1_PQYC: MOVLW 0xC
MOVWF PCLATH
CALL 0xC20
RETURN
GET_PZ0_SPEED2_PQYC: MOVLW 0xC
MOVWF PCLATH
CALL 0xC40
RETURN
GET_PZ0_SPEED3_PQYC: MOVLW 0xC
MOVWF PCLATH
CALL 0xC60
RETURN
GET_PZ0_SPEED4_PQYC: MOVLW 0xC
MOVWF PCLATH
CALL 0xC80
RETURN
GET_PZ0_SPEED5_PQYC: MOVLW 0xC
MOVWF PCLATH
CALL 0xCA0
RETURN
GET_PZ0_SPEED6_PQYC: MOVLW 0xC
MOVWF PCLATH
CALL 0xCC0
RETURN
GET_PZ0_SPEED7_PQYC: MOVLW 0xC
MOVWF PCLATH
CALL 0xCE0
RETURN
GET_PZ0_SPEED8_PQYC: MOVLW 0xD
MOVWF PCLATH
CALL 0xD00
RETURN
GET_PZ0_SPEED9_PQYC: MOVLW 0xD
MOVWF PCLATH
CALL 0xD20
RETURN
GET_PZ0_SPEEDA_PQYC: MOVLW 0xD
MOVWF PCLATH
CALL 0xD40
RETURN
GET_PZ0_SPEEDB_PQYC: MOVLW 0xD
MOVWF PCLATH
CALL 0xD60
RETURN
GET_PZ0_SPEEDC_PQYC: MOVLW 0xD
MOVWF PCLATH
CALL 0xD80
RETURN
GET_PZ0_SPEEDD_PQYC: MOVLW 0xD
MOVWF PCLATH
CALL 0xDA0
RETURN
GET_PZ0_SPEEDE_PQYC: MOVLW 0xD
MOVWF PCLATH
CALL 0xDC0
RETURN
GET_PZ0_SPEEDF_PQYC: MOVLW 0xD
MOVWF PCLATH
CALL 0xDE0
RETURN
GET_PZ0_SPEED10_PQYC: MOVLW 0xE
MOVWF PCLATH
CALL 0xE00
RETURN
GET_PZ0_SPEED11_PQYC: MOVLW 0xE
MOVWF PCLATH
CALL 0xE20
RETURN
GET_PZ0_SPEED12_PQYC: MOVLW 0xE
MOVWF PCLATH
CALL 0xE40
RETURN
GET_PZ0_SPEED13_PQYC: MOVLW 0xE
MOVWF PCLATH
CALL 0xE60
RETURN
GET_PZ0_SPEED14_PQYC: MOVLW 0xE
MOVWF PCLATH
CALL 0xE80
RETURN
GET_PZ0_SPEED15_PQYC: MOVLW 0xE
MOVWF PCLATH
CALL 0xEA0
RETURN
GET_PZ0_SPEED16_PQYC: MOVLW 0xE
MOVWF PCLATH
CALL 0xEC0
RETURN
GET_PZ0_SPEED17PQYC: MOVLW 0xE
MOVWF PCLATH
CALL 0xEE0
RETURN
GET_PZ0_PQYC_OVER: CLRF PCLATH
MOVWF PQYC
MOVWF PZ0_PQYC
RETURN
;=====================================================================================================
;============================================压力-转速-喷油脉宽记忆表================================================
;====================================================================================================
ZKYL_SPEED00:
ORG H'0800'
MOVF ZKYL_LEVEL,W
ADDWF PCL,0x01
RETLW 0x00 ;00
RETLW 0x00 ;01
RETLW 0x00 ;02
RETLW 0x00 ;03
RETLW 0x00 ;04
RETLW 0x00 ;05
RETLW 0x00 ;06
RETLW 0x00 ;07
RETLW 0x00 ;08
RETLW 0x00 ;09
RETLW 0x00 ;0a
RETLW 0x00 ;0b
RETLW 0x00 ;0c
RETLW 0x00 ;0d
ZKYL_SPEED01:
ORG H'0810'
MOVF ZKYL_LEVEL,W
ADDWF PCL,0x01
RETLW 0x01 ;00
RETLW 0x01 ;01
RETLW 0x01 ;02
RETLW 0x01 ;03
RETLW 0x01 ;04
RETLW 0x01 ;05
RETLW 0x01 ;06
RETLW 0x01 ;07
RETLW 0x01 ;08
RETLW 0x01 ;09
RETLW 0x01 ;0a
RETLW 0x01 ;0b
RETLW 0x01 ;0c
RETLW 0x01 ;0d
ZKYL_SPEED02:
ORG H'0820'
MOVF ZKYL_LEVEL,W
ADDWF PCL,0x01
RETLW 0x02 ;00
RETLW 0x02 ;01
RETLW 0x02 ;02
RETLW 0x02 ;03
RETLW 0x02 ;04
RETLW 0x02 ;05
RETLW 0x02 ;06
RETLW 0x02 ;07
RETLW 0x02 ;08
RETLW 0x02 ;09
RETLW 0x02 ;0a
RETLW 0x02 ;0b
RETLW 0x02 ;0c
RETLW 0x02 ;0d
ZKYL_SPEED03:
ORG H'0830'
MOVF ZKYL_LEVEL,W
ADDWF PCL,0x01
RETLW 0x03 ;00
RETLW 0x03 ;01
RETLW 0x03 ;02
RETLW 0x03 ;03
RETLW 0x03 ;04
RETLW 0x03 ;05
RETLW 0x03 ;06
RETLW 0x03 ;07
RETLW 0x03 ;08
RETLW 0x03 ;09
RETLW 0x03 ;0a
RETLW 0x03 ;0b
RETLW 0x03 ;0c
RETLW 0x03 ;0d
ZKYL_SPEED04:
ORG H'0840'
MOVF ZKYL_LEVEL,W
ADDWF PCL,0x01
RETLW 0x04 ;00
RETLW 0x04 ;01
RETLW 0x04 ;02
RETLW 0x04 ;03
RETLW 0x04 ;04
RETLW 0x04 ;05
RETLW 0x04 ;06
RETLW 0x04 ;07
RETLW 0x04 ;08
RETLW 0x04 ;09
RETLW 0x04 ;0a
RETLW 0x04 ;0b
RETLW 0x04 ;0c
RETLW 0x04 ;0d
ZKYL_SPEED05:
ORG H'0850'
MOVF ZKYL_LEVEL,W
ADDWF PCL,0x01
RETLW 0x05 ;00
RETLW 0x05 ;01
RETLW 0x05 ;02
RETLW 0x05 ;03
RETLW 0x05 ;04
RETLW 0x05 ;05
RETLW 0x05 ;06
RETLW 0x05 ;07
RETLW 0x05 ;08
RETLW 0x05 ;09
RETLW 0x05 ;0a
RETLW 0x05 ;0b
RETLW 0x05 ;0c
RETLW 0x05 ;0d
ZKYL_SPEED06:
ORG H'0860'
MOVF ZKYL_LEVEL,W
ADDWF PCL,0x01
RETLW 0x06 ;00
RETLW 0x06 ;01
RETLW 0x06 ;02
RETLW 0x06 ;03
RETLW 0x06 ;04
RETLW 0x06 ;05
RETLW 0x06 ;06
RETLW 0x06 ;07
RETLW 0x06 ;08
RETLW 0x06 ;09
RETLW 0x06 ;0a
RETLW 0x06 ;0b
RETLW 0x06 ;0c
RETLW 0x06 ;0d
ZKYL_SPEED07:
ORG H'0870'
MOVF ZKYL_LEVEL,W
ADDWF PCL,0x01
RETLW 0x07 ;00
RETLW 0x07 ;01
RETLW 0x07 ;02
RETLW 0x07 ;03
RETLW 0x07 ;04
RETLW 0x07 ;05
RETLW 0x07 ;06
RETLW 0x07 ;07
RETLW 0x07 ;08
RETLW 0x07 ;09
RETLW 0x07 ;0a
RETLW 0x07 ;0b
RETLW 0x07 ;0c
RETLW 0x07 ;0d
ZKYL_SPEED08:
ORG H'0880'
MOVF ZKYL_LEVEL,W
ADDWF PCL,0x01
RETLW 0x08 ;00
RETLW 0x08 ;01
RETLW 0x08 ;02
RETLW 0x08 ;03
RETLW 0x08 ;04
RETLW 0x08 ;05
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -