📄 fly.asm
字号:
;============================================================================
m3z2: nop
;============================================================================逆转检测
JKM5: MOV A,YG4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
CJNE A,#01,KM4
JB TNZ,M4A
JB P3.3,M4B
DJNZ JSP,M4C
SETB TNZ
SJMP M4B
M4A: JNB P3.3,M4B
DJNZ JSP,M4C
CLR TNZ
M4B: MOV JSP,#250
SJMP M4C
KM4: JB TNZ,KM4A
JNB P3.3,KM4B
DJNZ JSP,M4C
SETB TNZ
SJMP KM4B
KM4A: JB P3.3,KM4B
DJNZ JSP,M4C
CLR TNZ
KM4B: MOV JSP,#250
SJMP M4C
;============================================================================串口数据发送
M4C: JB YXP1.0,M4C1
CLR DA1.0
SJMP KM4D
M4C1: SETB DA1.0
KM4D: MOV A,GZP1
CJNE A,#00,KM4D2
MOV A,GZP2
CJNE A,#00,KM4D2
MOV A,GZP3
CJNE A,#00,KM4D2
CLR GP4
CLR DA1.4
SJMP M4D
KM4D2: SETB GP4
SETB DA1.4
mov r0,#gdbz;;;;;;;;;;;;;定向标志清除
mov @r0,#00
M4D: JB GP3,M4D1
CLR DA1.3
SJMP MM4C
M4D1: SETB DA1.3
mm4c: jb jp0.6,MM4C4;;;;
mov r0,#gdbz
mov a,@r0
cjne a,#01,mm4c2
setb da1.1
clr da1.2
jmp mm3r
mm4c2: mov r0,#gdbz
mov a,@r0
cjne a,#02,mm4c4
setb da1.2
clr da1.1
jmp mm3r
mm4c4: jb yxp1.3,mm4c5
clr da1.1
sjmp mm4c6
mm4c5: setb da1.1
mm4c6: jb yxp1.4,mm4c7
clr da1.2
sjmp mm3r
mm4c7: setb da1.2
MM3R: NOP
MM3U: JB YXP1.3,MM3V
SJMP M5
MM3V: JB TNZ,MM3W
DJNZ JSSM,M5
MOV JSSM,#60;250
mov r0,#lzjs;********
movx a,@r0
mov kk,a
dec a
movx @r0,a
djnz kk,m5
jnb jp2.2,mm3w
MM3W:
MOV JSSM,#60;250
mov r0,#lzjs
mov a,yga
movx @r0,a
;============================================================================设置按键检测程序
M5: JB JPP3.0,M51;;;;;;;;;;;;;;;;;;;;;;;;SHEZHIKAIGUAN
JB P3.5,M52
DJNZ MJSH,M6
SETB JPP3.0
SJMP M52
M51: JNB P3.5,M52
DJNZ MJSH,M6
CLR JPP3.0
M52: MOV MJSH,#20
;============================================================================加号按键检测程序
M6: JB JPP3.1,M61;;;;;;;;;;;;;;;;;;;;;;;;ADD AN XIA
JB P3.4,M62
DJNZ MJSE,M7
SETB JPP3.1
SJMP M62
M61: JNB P3.4,M62
DJNZ MJSE,M7
CLR JPP3.1
M62: MOV MJSE,#20
;============================================================================减号按键检测程序
M7: JB JPP3.2,M71;;;;;;;;;;;;;;;;;;;;;;;;SUB AN XIA
JB P3.6,M72
DJNZ MJSF,M8
SETB JPP3.2
SJMP M72
M71: JNB P3.6,M72
DJNZ MJSF,M8
CLR JPP3.2
M72: MOV MJSF,#20
;============================================================================确认按键检测程序
M8: JB JPP3.3,M81;;;;;;;;;;;;;;;;;;;;;;;;SUREKAIGUAN
JB P3.7,M82
MOV R0,#MJSG
MOV KK,@R0
DEC @R0
DJNZ KK,M9
SETB JPP3.3
SJMP M82
M81: JNB P3.7,M82
MOV R0,#MJSG
MOV KK,@R0
DEC @R0
DJNZ KK,M9
CLR JPP3.3
M82: MOV R0,#MJSG
MOV @R0,#20
;============================================================================
M9: NOP
MA: NOP
MB: NOP
MC: NOP
MD: NOP
MF: NOP
N9: NOP
;============================================================================串口数据传送程序
N9AA: JB GP8,N9AB
SJMP N9AC
N9AB: LJMP A0
N9AC: MOV SCON,#11011000B ;;;SIO=M3 ,SM2=0
MOV R0,#ADRR
MOV ADDR,@R0
MOV SBUF,ADDR
SETB GP8
SETB GP0
MOV R0,#ADDJ
INC @R0
MOV A,@R0
CJNE A,#07,N9BB
SJMP N9B
N9BB: JC N9B
MOV R0,#ADDJ
MOV @R0,#00H
N9B: MOV R0,#ADDJ
MOV A,@R0
LCALL CB1
MOV R0,#ADRR
MOV @R0,A
SJMP A0
;============================================================================设置按键处理程序
A0:
JNB JP0.6,AA0
JB YXP1.0,AA0
SJMP A00
AA0: JB GP3,A00
LJMP C0
A00: JNB JPP3.0,A0A1 ;;;SET
INC JPJP1
MOV A,JPJP1
CJNE A,#10, A0A ;;;;;#20
MOV JPJP0,#01
LJMP A0B
A0A: CJNE A,#255,A0A0;;;;;;;;;;;#115
A0AA0: LJMP A0B
A0A0: JC A0AA0
MOV JPJP0,#01
MOV JPJP1,#240;;;;;;;;;;;;;;;;;;;;;;175
LJMP A0B
A0A1: MOV JPJP1,#00
A0A2: JNB JPP3.1,A0A4 ;;;ADD
INC JPJP2
MOV A,JPJP2
CJNE A,#10,A0A3
MOV JPJP0,#04
LJMP A0B
A0A3: CJNE A,#255,A0A3A
A0AA1: LJMP A0B
A0A3A: JC A0AA1
MOV JPJP0,#04
MOV JPJP2,#240;;;;;;;;;;;;;;;;;;;;;175
LJMP A0B
A0A4: MOV JPJP2,#00
A0A5: JNB JPP3.2,A0A7 ;;;SUB
INC JPJP3
MOV A,JPJP3
CJNE A,#10,A0A6
MOV JPJP0,#02
LJMP A0B
A0A6: MOV A,JPJP3
CJNE A,#255,A0A6A
A0AA2: LJMP A0B
A0A6A: JC A0AA2
MOV JPJP0,#02
MOV JPJP3,#240;;;;;;;;;;;;;;;;;;;;;;175
LJMP A0B
A0A7: MOV JPJP3,#00
A0A8: JNB JPP3.3,A0A9 ;;; SAVE
INC JPJP4
MOV A,JPJP4
CJNE A,#10,KA0A6
MOV JPJP0,#08
LJMP A0B
KA0A6: MOV A,JPJP4
CJNE A,#255,KA0A6A
KA0AA2: LJMP A0B
KA0A6A: JC KA0AA2
MOV JPJP0,#08
MOV JPJP4,#240;;;;;;;;;;;;;;;;;;;;;;;;;;175
LJMP A0B
A0A9: MOV JPJP4,#00
A0B: MOV A,JPJP0
CJNE A,#01,A0B2
LJMP A0C1 ;;;SET
A0B2: CJNE A,#02,A0B3
LJMP A0D1 ;;; SUB
A0B3: CJNE A,#04,A0B4
LJMP A0E1 ;;; ADD
A0B4: CJNE A,#08,A0B5
LJMP A0F1 ;;; SAVE
A0B5: LJMP A0G1
A0C1: MOV JPJP0,#00H ;;; SET KEY
MOV A,GP2
JB GP3,A0C2
LJMP A0S1X
A0C2: CJNE A,#01,A0C3
LJMP A0S1A
A0C3: CJNE A,#02,A0C4
LJMP A0S1B
A0C4: CJNE A,#03,A0C5
LJMP A0S1C
A0C5: CJNE A,#04,A0C6
LJMP A0S1D
A0C6: CJNE A,#05,A0C7
LJMP A0S1E
A0C7: CJNE A,#06,A0C8
LJMP A0S1F
A0C8: CJNE A,#07,A0C9
LJMP A0S1G
A0C9: CJNE A,#08,A0CA
LJMP A0S1H
A0CA: CJNE A,#09,A0CB
LJMP A0S1I
A0CB: CJNE A,#10, A0CC
LJMP A0S1J
A0CC: CJNE A,#11, A0CD
LJMP A0S1K
A0CD: CJNE A,#12, A0CE
LJMP A0S1L
A0CE: CJNE A,#13, A0CO
LJMP A0S1M
A0CO: CLR GP3
LJMP A0G1
A0S1A: MOV GP2,#02
MOV D3,#0BH
MOV D2,#01H
MOV A,YG2
LJMP A0S2
A0S1B: MOV GP2,#03
MOV D3,#0BH
MOV D2,#02H
MOV A,YG3
LJMP A0S2
A0S1C: MOV GP2,#04
MOV D3,#0BH
MOV D2,#03H
MOV A,YG4
LJMP A0S2
A0S1D: MOV GP2,#05
MOV D3,#0BH
MOV D2,#04H
MOV A,YG5
LJMP A0S2
A0S1E: MOV GP2,#06
MOV D3,#0BH
MOV D2,#05H
MOV A,YG6
LJMP A0S2
A0S1F: MOV GP2,#07
MOV D3,#0BH
MOV D2,#06H
MOV A,YG7
LJMP A0S2
A0S1G: MOV GP2,#08
MOV D3,#0BH
MOV D2,#07H
MOV A,YG8
LJMP A0S2
A0S1H: MOV GP2,#09
MOV D3,#0BH
MOV D2,#08H
MOV A,YG9
LJMP A0S2
A0S1I: MOV GP2,#10
MOV D3,#0BH
MOV D2,#09H
MOV A,YGA
LJMP A0S2
A0S1J: MOV GP2,#11
MOV D3,#0BH
MOV D2,#0FH
; MOV A,YGL
MOV R0,#YGL
MOV A,@R0
LJMP A0S2
A0S1K: MOV GP2,#12
MOV D3,#0BH
MOV D2,#0EH
; MOV A,YGH
MOV R0,#YGH
MOV A,@R0
LJMP A0S2
A0S1L: MOV GP2,#13
MOV D3,#0BH
MOV D2,#0AH
; MOV A,YGE
MOV R0,#erro0;YGE
MOV A,@R0
mov r0,#count1;;;;;;;;;;;;;;
mov @r0,#00;;;;;;;;;;;;;;;;;
LJMP A0S2
A0S1M: MOV GP2,#14
MOV D3,#0BH;;;;;;;PPPPPPPP
MOV D2,#0BH;;;;;;;PPPPPPPP
MOV D1,#10H;;;;;;;;;-------
MOV D0,#10H;;;;;;;;;-------
LJMP A0G1
A0S1X: SETB GP3
MOV D3,#0BH
MOV D2,#00H
MOV A,YG1
MOV GP2,#01
A0S2: MOV B,#10
DIV AB
MOV D1,A
MOV D0,B
LJMP A0G1
A0D1: MOV JPJP0,#00H ;;; SUB KEY
JB GP3,A0D1A
LJMP A0G1
A0D1A: MOV A,GP2
CJNE A,#14,A0D1AA
LJMP A0D15
A0D1AA: NOP
A0DD2: CJNE A,#01,A0DD3;;;;;YG1
MOV KK,D0
DEC KK
LJMP A0D2
A0DD3: CJNE A,#02,A0DD4;;;;;;;YG2
MOV KK,D0
DEC KK
LJMP A0D3
A0DD4: CJNE A,#03,A0DD5;;;;;;YG3
MOV KK,D0
DEC KK
LJMP A0D4
A0DD5: CJNE A,#04,A0DD6;;;;;YG4
MOV KK,D0
DEC KK
LJMP A0D5
A0DD6: CJNE A,#05,A0DD7;;;;;;;YG5
MOV KK,D0
DEC KK
LJMP A0D6
A0DD7: CJNE A,#06,A0DD8;;;;;;;;YG6
MOV KK,D0
DEC KK
LJMP A0D7
A0DD8: CJNE A,#07,A0DD9;;;;;;;;;YG7
MOV KK,D0
DEC KK
LJMP A0D8
A0DD9: CJNE A,#08,A0DD10;;;;;;;;YG8
MOV KK,D0
DEC KK
LJMP A0D9
A0DD10: CJNE A,#09,A0DD11;;;;;;;;YG9
MOV KK,D0
;;;;;DEC KK
LJMP A0D10
A0DD11: CJNE A,#010,A0DD12;;;;;;;YGA
MOV KK,D0
DEC KK
LJMP A0D11
A0DD12: CJNE A,#011,A0DD13;;;;;;;YGL
MOV KK,D0
DEC KK
LJMP A0D12
A0DD13: CJNE A,#012,A0DD14;;;;;;;YGH
MOV KK,D0
DEC KK
LJMP A0D13
A0DD14: CJNE A,#013,A0DD15;;;;;;;YGE
; MOV KK,D0
; DEC KK
mov r0,#count1
DEC @r0
MOV KK,@r0
LJMP A0D14
A0DD15: LJMP A0S3
A0D2: MOV A,KK
CJNE A,#02,A00D2 ;4;;;;;;;;;;;YG1
LJMP A0S3
A00D2: JNC A000D2
SJMP KA0D2
A000D2: MOV KK,#01
LJMP A0S3
KA0D2: CJNE A,#01,KA00D2 ;;;;;;;;;;;
LJMP A0S3
KA00D2: JC KA000D2
LJMP A0S3
KA000D2:MOV KK,#01
LJMP A0S3
A0D3: MOV KK,#00
LJMP A0S3
;MOV A,KK
; CJNE A,#09,A00D3 ;;;;;;;;;;;YG2
; LJMP A0S3
;A00D3: JNC A000D3
; LJMP KA0D3
;A000D3: MOV KK,#01
; LJMP A0S3
KA0D3: CJNE A,#01,KA00D3 ;;;;;;;;;;;
LJMP A0S3
KA00D3: JC KA000D3
LJMP A0S3
KA000D3:MOV KK,#01
LJMP A0S3
A0D4: MOV A,KK
CJNE A,#09,A00D4 ;;;;;;;;;;;YG3
LJMP A0S3
A00D4: JNC A000D4
LJMP KA0D4
A000D4: MOV KK,#01
LJMP A0S3
KA0D4: CJNE A,#01,KA00D4 ;;;;;;;;;;;
LJMP A0S3
KA00D4: JC KA000D4
LJMP A0S3
KA000D4:MOV KK,#01
LJMP A0S3
A0D5: MOV KK,#00
LJMP A0S3 ;;;;;;;;;;;YG4
A0D6: MOV a,KK;,#00
CJNE A,#09,A00D6;;;;;;;;;;;;YG5 (1~9)
LJMP A0S3
A00D6: JNC A000D6
LJMP KA0D6
A000D6: MOV KK,#01
LJMP A0S3
KA0D6: CJNE A,#01,KA00D6 ;;;;;;;;;;;
LJMP A0S3
KA00D6: JC KA000D6
LJMP A0S3
KA000D6:MOV KK,#01
LJMP A0S3
A0D7: MOV a,KK;,#00
CJNE A,#09,A00D7;;;;;;;;;;;YG6 (1~9)
LJMP A0S3
A00D7: JNC A000D7
LJMP KA0D7
A000D7: MOV KK,#01
LJMP A0S3
KA0D7: CJNE A,#01,KA00D7 ;;;;;;;;;;;
LJMP A0S3
KA00D7: JC KA000D7
LJMP A0S3
KA000D7:MOV KK,#01
LJMP A0S3
A0D8: MOV KK,#00;;;;;;;;;;;;YG7
LJMP A0S3
A0D9: MOV KK,#00;;;;;;;;;;;;YG8
LJMP A0S3
A0D10: MOV KK,#00 ;;;;;;;;;;YG9
LJMP A0S3
A0D11: ;;;;;MOV KK,#00;;;;;;;;;;;YGA
LJMP A0G1;;;;;;;;;;;;;;;;;;A0S3
A0D12: MOV KK,#00 ;;;;;;;;;;YGL
LJMP A0S3
A0D13: MOV KK,#00 ;;;;;;;;;;YGH
LJMP A0S3
A0D14: MOV A,KK;,#00 ;;;;;;;;;;YGE;;;;;;;;;;;;;;
cjne a,#0,a0d141
mov r0,#erro0
mov a,@r0
LJMP A0S2
a0d141: cjne a,#1,a0d142
mov r0,#erro1
mov a,@r0
LJMP A0S2
a0d142: cjne a,#2,a0d143
mov r0,#erro2
mov a,@r0
LJMP A0S2
a0d143: cjne a,#3,a0d144
mov r0,#erro3
mov a,@r0
LJMP A0S2
a0d144: cjne a,#4,a0d145
mov r0,#erro4
mov a,@r0
LJMP A0S2
a0d145: cjne a,#5,a0d146
mov r0,#erro5
mov a,@r0
LJMP A0S2
a0d146: cjne a,#6,a0d147
mov r0,#erro6
mov a,@r0
LJMP A0S2
a0d147: cjne a,#7,a0d148
mov r0,#erro7
mov a,@r0
LJMP A0S2
a0d148: cjne a,#8,a0d149
mov r0,#erro8
mov a,@r0
LJMP A0S2
a0d149: cjne a,#9,a0d150
mov r0,#erro9
mov a,@r0
LJMP A0S2
a0d150: mov r0,#erro0
mov a,@r0
mov r0,#count1
mov @r0,#00
LJMP A0S2
A0D15: MOV A,YGM
DEC A
CJNE A,#99,A00D15
LJMP A000D15
A00D15: JC A000D15
MOV A,#00
A000D15:MOV YGM,A
MOV B,#10
DIV AB
MOV D1,A
MOV D0,B
LJMP A0G1
A0S3: MOV D0,KK
MOV D1,#00H
LJMP A0G1
A0E1: MOV JPJP0,#00H ;;; ADD KEY
JB GP3,A0E1A
LJMP A0G1
A0E1A: MOV A,GP2
CJNE A,#14,A0E1AA
LJMP A0E15
A0E1AA: NOP
A0EE2: CJNE A,#01,A0EE3;;;;;;;YG1
MOV KK,D0
INC KK
LJMP A0E2
A0EE3: CJNE A,#02,A0EE4;;;;;;;;YG2
MOV KK,D0
INC KK
LJMP A0E3
A0EE4: CJNE A,#03,A0EE5;;;;;;;YG3
MOV KK,D0
INC KK
LJMP A0E4
A0EE5: CJNE A,#04,A0EE6;;;;;;;;YG4
MOV KK,D0
INC KK
LJMP A0E5
A0EE6: CJNE A,#05,A0EE7;;;;;;;;;YG5
MOV KK,D0
INC KK
LJMP A0E6
A0EE7: CJNE A,#06,A0EE8;;;;;;;;;YG6
MOV KK,D0
INC KK
LJMP A0E7
A0EE8: CJNE A,#07,A0EE9;;;;;;;;;;YG7
MOV KK,D0
INC KK
LJMP A0E8
A0EE9: CJNE A,#08,A0EE10;;;;;;;;;YG8
MOV KK,D0
INC KK
LJMP A0E9
A0EE10: CJNE A,#09,A0EE11;;;;;;;;;YG9
MOV KK,D0
INC KK
LJMP A0E10
A0EE11: CJNE A,#010,A0EE12;;;;;;;;YGA
MOV KK,D0
;;;;;;;;INC KK
LJMP A0E11
A0EE12: CJNE A,#11,A0EE13;;;;;;;;;YGL
MOV KK,D0
INC KK
LJMP A0E12
A0EE13: CJNE A,#12,A0EE14;;;;;;;;;YGH
MOV KK,D0
INC KK
LJMP A0E13
A0EE14: CJNE A,#13,A0EE15;;;;;;;;;YGE
mov r0,#count1
INC @r0
MOV KK,@r0
LJMP A0E14
A0EE15: LJMP A0S3
A0E2: MOV A,KK
CJNE A,#02,A00E2 ;4;;;;;;;;;;;YG1
LJMP A0S3
A00E2: JNC A000E2
LJMP A0S3
A000E2: MOV KK,#02;4
LJMP A0S3
A0E3: MOV KK,#01
LJMP A0S3
;MOV A,KK
;CJNE A,#09,A00E3 ;;;;;;;;;;;YG2
;LJMP A0S3
;A00E3: JNC A000E3
; LJMP A0S3
;A000E3: MOV KK,#09
; LJMP A0S3
A0E4: MOV A,KK
CJNE A,#09,A00E4 ;;;;;;;;;;;YG3
LJMP A0S3
A00E4: JNC A000E4
LJMP A0S3
A000E4: MOV KK,#09
LJMP A0S3
A0E5: MOV KK,#01
LJMP A0S3 ;;;;;;;;;;;YG4
A0E6: MOV a,KK;,#01
CJNE A,#09,A00E6 ;;;;;;;;;;;YG5
LJMP A0S3
A00E6: JNC A000E6
LJMP A0S3
A000E6: MOV KK,#09
LJMP A0S3 ;;;;;;;;;;;YG5
A0E7: MOV a,KK;,#01
CJNE A,#09,A00E7 ;;;;;;;;;;;YG6
LJMP A0S3
A00E7: JNC A000E7
LJMP A0S3
A000E7: MOV KK,#09
LJMP A0S3
A0E8: MOV KK,#01 ;;;;;;;;;;;;;;;YG7
LJMP A0S3
A0E9: MOV KK,#01 ;;;;;;;;;;;;;;YG8
LJMP A0S3
A0E10: MOV KK,#01 ;;;;;;;;;;;;;;YG9
LJMP A0S3
A0E11: ;;;;;;;MOV KK,#01 ;;;;;;;;;;;;;;YGA
LJMP A0G1;;;;;;;;;;;;;;;;;;;;;;;A0S3
A0E12: MOV KK,#01 ;;;;;;;;;;;;;;YGL
LJMP A0S3
A0E13: MOV KK,#01 ;;;;;;;;;;;;;;YGH
LJMP A0S3
A0E14: MOV A,KK;,#01 ;;;;;;;;;;;;;;YGE
cjne a,#0,a0d1410
mov r0,#erro0
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -