📄 jqr.asm
字号:
ORG 0000H
LJMP MAIN
ORG 0030H
MAIN: MOV A,#1
LCALL ACTION3
MOV R2,#10H ;转4圈
D0: MOV R1,#10H
LCALL DO2
MOV R1,#50H
LCALL DO0
DJNZ R2,D0 ;动作1.1A-C
MOV R2,#2
D1: MOV R1,#0A0H
LCALL DO0
DJNZ R2,D1 ;动作1.1DE
MOV R1,#0A0H
LCALL DO0 ;动作1.1F
MOV R6,#0
MOV R1,#50H
LCALL DO1
MOV A,#0
LCALL ACTION3 ;动作2.1A
MOV R1,#28H
LCALL DO0 ;动作2.1B
MOV P2,#0FFH
MOV A,#3DH
MV1: DEC A
MOV R3,#0
MV2: MOV R4,#0
MV3: DJNZ R4,MV3
DJNZ R3,MV2
JNZ MV1 ;动作3.1静止4秒
MOV A,#1
LCALL ACTION3
MOV R1,#15H
LCALL DO2
MOV R1,#50H
MOV R6,#1
LCALL DO1 ;动作4.1A
MOV P2,#0FFH
MOV R0,#10H
LCALL DELAY
MOV R1,#10H
LCALL DO2 ;动作4.1B
MOV R3,#2
MR: MOV R2,#2
D2: MOV R1,#0A0H
LCALL DO0
DJNZ R2,D2
MOV R1,#10H
LCALL DO2
DJNZ R3,MR ;动作4.1CD
MOV R2,#5
MOV R1,#28H
LCALL DO0
DJNZ R2,D3 ;动作4.1E
MOV P2,#0FFH
MOV R0,#10H
LCALL DELAY ;动作4.1F
MOV R1,#28H
LCALL DO0 ;动作4.1G
MOV R1,#20H
LCALL DO2 ;动作4.1H
MOV R1,#50HH
LCALL DO0 ;动作4.1T
MOV P2,#01FH
MOV R0,#10H
LCALL DELAY ;动作4.1U
MOV R1,#28H
LCALL DO0 ;动作4.1I
MOV P2,#01FH
MOV R0,#10H
LCALL DELAY ;动作4.1J
MOV R6,#0
MOV R1,#50H
LCALL DO1
MOV A,#0
LCALL ACTION3 ;动作5.1A
MOV R2,#2
D3: MOV R1,#0A0H
LCALL DO0
DJNZ R2,D3 ;动作5.1B
MOV R2,#3
D4: MOV R1,#50H
LCALL DO0
DJNZ R2,D4 ;动作5.1C
MOV A,#1
LCALL ACTION3
MOV R1,#10H
LCALL DO2
MOV R1,#50H
MOV R6,#1
LCALL DO1 ;动作6.1A
MOV R1,#28H
D5: LCALL ACTION0
LCALL ACTION2
DJNZ R1,D5 ;动作6.1B
MOV P2,#0FFH
MOV R0,#5
LCALL DELAY ;动作6.1C
MOV R6,#0
MOV R1,#50H
LCALL DO1 ;动作7.1A
MOV P2,#0FFH
MOV R0,#0AH
LCALL DELAY ;动作7.1BC
MOV R1,#28H
LCALL DO0
MOV R6,#1
MOV R1,#50H
DO3: LCALL ACTION1
LCALL ACTION2
DJNZ R1,DO3 ;动作7.1D
MOV R2,#14H
D6: MOV R1,#0A0H
LCALL DO0
DJNZ R2,D6 ;动作8.1
DO0: LCALL ACTION0
DJNZ R1,DO0
RET
DO1: LCALL ACTION1
DJNZ R1,DO1
RET
DO2: LCALL ACTION2
DJNZ R1,DO2
RET
ACTION0:MOV R0,#50H ;控制转动
SETB P2.3
CLR P2.1
LCALL DELAY
MOV R0,#0A0H
SETB P2.1
LCALL DELAY
RET
ACTION1:MOV R0,#50H ;控制升降 JB R6,OPPOSITE1
SETB P2.2
SJMP DONE1
OPPOSITE2:CLR 2.2
DONE1: CLR P2.0
LCALL DELAY
MOV R0,#0A0H
SETB P2.0
LCALL DELAY
RET
ACTION2 MOV R0,#50H ;控制翅膀拍动
SETB P2.7
CLR P2.5
LCALL DELAY
MOV R0,#0A0H
SETB P2.5
LCALL DELAY
RET
ACTION3:MOV R7,#5 ;控制翅膀升缩
AC: MOV R0,#50H
JZ OPPOSITE3
SETB P2.6
SJMP DONE3
OPPOSITE3:CLR P2.6
DONE3: CLR P2.4
LCALL DELAY
MOV R0,#0A0H
SETB P2.4
LCALL DELAY
DJNZ R7,AC
RET
DELAY: MOV A,#100D
D1: DEC A
JNZ D1
CJNE R0,#0,NEXT
RET
NEXT: DEC R0
SJMP DELAY
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -