noname1 (2).asm
来自「我学单片机89C51时编的大部分程序都在里面」· 汇编 代码 · 共 37 行
ASM
37 行
ORG 0000H
LJMP START
ORG 001BH ;T1的中断入口地址
LJMP DELAY
ORG 0030H
START: MOV A,#00H
MOV B,#0AH ;循环次数
MOV TMOD,#10H ;定时器1工作于模式1
MOV TH1,#3CH ;每次中断50ms
MOV TL1,#0B0H
SETB TR1 ;启动定时器1
SETB ET1 ;允许T1中断
SETB EA ;允许CPU中断
MOV P1,A ;输出,对灯初始化
SJMP $ ;等待中断,执行DELAY里的语句
DELAY: MOV TH1,#3CH ;重新装入初值 ;中断服务程序
MOV TL1,#0B0H
DJNZ B,LOOP ;中断10次,为0.5s
MOV B,#0AH ;重设B的值
JZ ONOFF
JB F0,ALLOFF
MOV P1,A
RR A
CPL ACC.7
LJMP LOOP
ONOFF:
MOV P1,#FFH
SETB F0
MOV A,#80H
LJMP LOOP
ALLOFF: MOV P1,#00H
CLR F0
LJMP LOOP
LOOP: RETI
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?