📄 lamp.asm
字号:
ORG 0000H
ajmp start1
org 0030h
SAME EQU 4EH
START1: MOV P1,#00H
START: MOV a,p3
anl a,#1fh
cjne a,#1fh,shiy
ajmp start1
shiy: mov same,a
lcall ys
mov a,p3
anl a,#1fh
cjne a,#1fh,shiy1
ajmp start1
shiy1: cjne a,same,start1
CJNE A,#17H,NEXT1
AJMP LEFT
NEXT1: CJNE A,#0FH,NEXT2
AJMP RIGHT
NEXT2: CJNE A,#1DH,NEXT3
AJMP EARGE
NEXT3: CJNE A,#1EH,NEXT4
AJMP BRAKE
NEXT4: CJNE A,#16H,NEXT5
AJMP LEBR
NEXT5: CJNE A,#0EH,NEXT6
AJMP RIBR
NEXT6: CJNE A,#1CH,NEXT7
AJMP BRER
NEXT7: CJNE A,#14H,NEXT8
AJMP LBE
NEXT8: CJNE A,#0CH,NEXT9
AJMP RBE
NEXT9: CJNE A,#1BH,NEXT10
AJMP STOP
NEXT10:AJMP ERROR
LEFT: MOV P1,#2AH
LCALL Y100MS
MOV P1,#00H
LCALL Y100MS
AJMP START
RIGHT: MOV P1,#54H
LCALL Y100MS
MOV P1,#00H
LCALL Y100MS
AJMP START
EARGE: MOV P1,#7FH
LCALL Y100MS
MOV P1,#00H
LCALL Y100MS
AJMP START
BRAKE: MOV P1,#60H
AJMP START
LEBR: MOV P1,#6AH
LCALL Y100MS
MOV P1,#40H
LCALL Y100MS
AJMP START
RIBR: MOV P1,#74H
LCALL Y100MS
MOV P1,#20H
LCALL Y100MS
AJMP START
BRER: MOV P1,#7EH
LCALL Y100MS
MOV P1,#60H
LCALL Y100MS
AJMP START
LBE: MOV P1,#7EH
LCALL Y100MS
MOV P1,#40H
LCALL Y100MS
AJMP START
RBE: MOV P1,#7EH
LCALL Y100MS
MOV P1,#20H
LCALL Y100MS
AJMP START
STOP:MOV P1,#66H
LCALL Y16MS
MOV P1,#00H
LCALL Y16MS
AJMP START
ERROR: MOV P1,#80H
LCALL Y100MS
MOV P1,#00H
LCALL Y100MS
AJMP START
YS: MOV R7,#20H
YS0:MOV R6,#0FFH
YS1:DJNZ R6,YS1
DJNZ R7,YS0
RET
Y500MS: MOV R5,#05H
Y500MS1:LCALL Y100MS
DJNZ R5,Y500MS1
RET
Y100MS:MOV R7,#64H
Y100MS1:MOV R6,#0FFH
Y100MS2:DJNZ R6,Y100MS2
DJNZ R7,Y100MS1
RET
Y16ms: mov R7,#29h
Y16ms1:mov R6,#0ffh
Y16ms2:djnz R6,Y16ms2
djnz R7,Y16ms1
ret
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -