📄 灯.asm
字号:
ORG 0000H
SJMP START
ORG 001BH
LJMP DELAY
ORG 0030H
START: MOV A,#00H
LOOP: RR A ;对灯的操作,右移首位取反
CPL ACC.7
MOV P1,A
;LCALL DELAY
JZ ALLON
LJMP LOOP
ALLON: MOV A,#0FFH ;全亮
MOV P1,A
;LCALL DELAY
ALLOFF: MOV A,#00H ;全灭
MOV P1,A
; LCALL DELAY
LJMP LOOP
;以下为延时
DELAY: MOV B,#0AH ;中断10次,为0.5s
MOV TMOD,#10H ;定时器1工作于模式1
MOV TH1,#3CH ;每次中断50ms
MOV TL1,#0B0H
SETB TR1
SETB ET1
SETB EA
SJMP $
;中断服务程序
SERVE: MOV TH1,#3CH ;重新装入初值
MOV TL1,#0B0H
DJNZ B,LOOP1 ;
CLR TR1 ;0.5s定时到,停止T1工作
LOOP1: RETI ;中断返回
SJMP $
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -