📄 pwmall.asm
字号:
ORG 00H
MOV R0,#0
JMP START
ORG 50H
START:
SETB P1.5
SETB P1.6
CLR P1.7
MOV R1,#10001000B
MOV R2,#1
JNB P0.0,DO1
JNB P0.1,DO2
JNB P0.2,DO3
JNB P0.3,DO4
JNB P0.4,GO11
JNB P0.5,GO22
JNB P0.6,GO33
JNB P0.7,GO44
JMP START
DO1:
SETB P1.5
CLR P1.6
CLR P1.7
JB P0.0,START
JMP DO1
DO2:
CLR P1.5
SETB P1.6
CLR P1.7
JB P0.1,START
JMP DO2
DO3:
SETB P1.5
CLR P1.6
CLR P1.7
CALL DELAY
INC R0
MOV A,R0
CJNE A,01,DO3
JB P0.2,START
DO31:
CLR P1.5
SETB P1.6
CLR P1.7
CALL DELAY
INC R0
CJNE R0,#00,DO31
JB P0.2,START
JMP DO3
DO4:
SETB P1.5
SETB P1.6
CLR P1.7
CALL DELAY
INC R0
MOV A,R0
CJNE A,01,DO4
JB P0.3,START
DO41:
CLR P1.5
SETB P1.6
CLR P1.7
CALL DELAY
INC R0
CJNE R0,#00,DO41
JB P0.3,START
JMP DO4
GO11:
JMP GO1
GO22:
JMP GO2
GO33:
JMP GO3
GO44:
JMP GO4
START1:
JMP START
GO1:
MOV A,R1
MOV P2,A
RR A
MOV R2,#1
CALL DELAY1
MOV R1,A
JB P0.4,START1
JMP GO1
GO2:
MOV A,R1
MOV P2,A
RL A
MOV R2,#1
CALL DELAY1
MOV R1,A
JB P0.5,START1
JMP GO2
GO3:
CLR A
MOV A,R1
MOV P2,A
RR A
MOV R1,A
CLR A
MOV A,R2
CALL DELAY1
INC A
MOV R2,A
JB P0.6,START1
JMP GO3
GO4:
MOV R2,#30
GO444:
CLR A
MOV A,R1
MOV P2,A
RL A
MOV R1,A
MOV A,R2
CALL DELAY1
DEC A
MOV R2,A
JB P0.7,START1
JZ GO4
JMP GO444
DELAY:
MOV R3,#10H
D2:
MOV R4,#0
DJNZ R4,$
DJNZ R3,D2
RET
DELAY1:
MOV R6,#40
D1:
MOV R7,#249
DJNZ R7,$
DJNZ R6,D1
DJNZ R2,DELAY1
RET
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -