📄 lxd.asm
字号:
;r3亮灯的延时暂存器,R5灭灯的延时暂存器,
;30H亮灯的延时缓冲地址,32H亮灯的延时缓冲地址
;31H显示码暂存
ORG 0000H
JMP MINE
ORG 40H
MINE:MOV R3,#1;亮灯的延时暂存器初值
MOV R5,#70;灭灯的延时暂存器初值
MOV A,#7FH
MIN:MOV P1,A
MOV 30H,R3
MOV 32H,R5
CALL DL
CPL ACC.7
MOV P1,A
CALL DLL
CPL ACC.7
MOV 31H,A
CALL ADD1
CJNE R3,#70,MI;;;;;;;;;p1.7渐亮
MI:CJNE R5,#1,MIN
MIN1:MOV P1,A
MOV 30H,R3
MOV 32H,R5
CALL DL
CPL ACC.7
MOV P1,A
CALL DLL
CPL ACC.7
MOV 31H,A
CALL SUBB1
CJNE R3,#1,MI1
MI1:CJNE R5,#70,MIN1;;;;;;;;;;;;P1.7渐暗
RR A
MIN2:MOV P1,A
MOV 30H,R3
MOV 32H,R5
CALL DL
CPL ACC.6
MOV P1,A
CALL DLL
CPL ACC.6
MOV 31H,A
ACALL ADD1
CJNE R3,#70,MI2;;;;;;;;;p1.6渐亮
MI2:CJNE R5,#1,MIN2
MIN3:MOV P1,A
MOV 30H,R3
MOV 32H,R5
CALL DL
CPL ACC.6
MOV P1,A
CALL DLL
CPL ACC.6
MOV 31H,A
ACALL SUBB1
CJNE R3,#1,MI3
MI3:CJNE R5,#70,MIN3;;;;;;;P1.6渐暗
RR A
MIN4:MOV P1,A
MOV 30H,R3
MOV 32H,R5
CALL DL
CPL ACC.5
MOV P1,A
CALL DLL
CPL ACC.5
MOV 31H,A
ACALL ADD1
CJNE R3,#70,MI4;;;;;;;;;p1.5渐亮
MI4:CJNE R5,#1,MIN4
MIN5:MOV P1,A
MOV 30H,R3
MOV 32H,R5
CALL DL
CPL ACC.5
MOV P1,A
CALL DLL
CPL ACC.5
MOV 31H,A
ACALL SUBB1
CJNE R3,#1,MI5
MI5:CJNE R5,#70,MIN5;;;;;;;;;;;;P1.5渐暗
RR A
MIN6:MOV P1,A
MOV 30H,R3
MOV 32H,R5
CALL DL
CPL ACC.4
MOV P1,A
CALL DLL
CPL ACC.4
MOV 31H,A
CALL ADD1
CJNE R3,#70,MI6;;;;;;;;;p1.4渐亮
MI6:CJNE R5,#1,MIN6
MIN7:MOV P1,A
MOV 30H,R3
MOV 32H,R5
CALL DL
CPL ACC.4
MOV P1,A
CALL DLL
CPL ACC.4
MOV 31H,A
CALL SUBB1
CJNE R3,#1,MI7
MI7:CJNE R5,#70,MIN7;;;;;;;;;;P1.4渐暗
RR A
MIN8:MOV P1,A
MOV 30H,R3
MOV 32H,R5
CALL DL
CPL ACC.3
MOV P1,A
CALL DLL
CPL ACC.3
MOV 31H,A
CALL ADD1
CJNE R3,#70,MI8;;;;;;;;;p1.3渐亮
MI8:CJNE R5,#1,MIN8
MIN9:MOV P1,A
MOV 30H,R3
MOV 32H,R5
CALL DL
CPL ACC.3
MOV P1,A
CALL DLL
CPL ACC.3
MOV 31H,A
CALL SUBB1
CJNE R3,#1,MI9
MI9:CJNE R5,#70,MIN9;;;;;;;;;;P1.3渐暗
RR A
MIN10:MOV P1,A
MOV 30H,R3
MOV 32H,R5
CALL DL
CPL ACC.2
MOV P1,A
CALL DLL
CPL ACC.2
MOV 31H,A
CALL ADD1
CJNE R3,#70,MI10;;;;;;;;;p1.2渐亮
MI10:CJNE R5,#1,MIN10
MIN11:MOV P1,A
MOV 30H,R3
MOV 32H,R5
CALL DL
CPL ACC.2
MOV P1,A
CALL DLL
CPL ACC.2
MOV 31H,A
CALL SUBB1
CJNE R3,#1,MI11
MI11:CJNE R5,#70,MIN11;;;;;;;;P1.2渐暗
RR A
MIN12:MOV P1,A
MOV 30H,R3
MOV 32H,R5
CALL DL
CPL ACC.1
MOV P1,A
CALL DLL
CPL ACC.1
MOV 31H,A
CALL ADD1
CJNE R3,#70,MI12;;;;;;;;;p1.1渐亮
MI12:CJNE R5,#1,MIN12
MIN13:MOV P1,A
MOV 30H,R3
MOV 32H,R5
CALL DL
CPL ACC.1
MOV P1,A
CALL DLL
CPL ACC.1
MOV 31H,A
CALL SUBB1
CJNE R3,#1,MI13
MI13:CJNE R5,#70,MIN13;;;;;;;;;P1.1渐暗
RR A
MIN14:MOV P1,A
MOV 30H,R3
MOV 32H,R5
CALL DL
CPL ACC.0
MOV P1,A
CALL DLL
CPL ACC.0
MOV 31H,A
CALL ADD1
CJNE R3,#70,MI14;;;;;;;;;p1.0渐亮
MI14:CJNE R5,#1,MIN14
MIN15:MOV P1,A
MOV 30H,R3
MOV 32H,R5
CALL DL
CPL ACC.0
MOV P1,A
CALL DLL
CPL ACC.0
MOV 31H,A
CALL SUBB1
CJNE R3,#1,MI15
MI15:CJNE R5,#70,MIN15;;;;;;;p1.0渐暗
RR A
JMP MIN;;;;;;;;;;;;;重头开始
ADD1:inc 30h;;;;;;;;;;;;开延时加1
dec 32h;;;;;;;;;;;;关延时咸1
MOV R5,32H
MOV A,31H
MOV R3,30H
RET
SUBB1:dec 30h;;;;;;;;;;开延时咸1
inc 32h;;;;;;;;;;;关延时加1
MOV R5,32H
MOV A,31H
MOV R3,30H
RET
DL:MOV R2,#10;;;;;;;;;;;;;开延时
DJNZ R2,$
DJNZ R3,DL
RET
DLL:MOV R4,#10;;;;;;;;;;;关延时
DJNZ R4,$
djnz r5,DLL
RET
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -