📄 b01.asm
字号:
; “模仿式” 实验一 工业顺序控制(INT0.INT1综合实验)
;文件名:B01.ASM
;掌握工业顺序控制的简单编程,中断的使用
ORG 0000H
SJMP MAIN
ORG 0013H
LJMP INT1
MAIN: MOV P1,#00H
ORL P3,#00H
PO11: JNB P3.4,PO11 ;开工吗?
ORL IE,#84H
ORL IP,#04H
MOV PSW,#00H ;初始化
MOV SP,#53H
PO12: MOV P1,#01H ;第一道工序
ACALL PO1BH
MOV P1,#02H ;第二道工序
ACALL PO1BH
MOV P1,#04H ;第三道工序
ACALL PO1BH
MOV P1,#08H ;第四道工序
ACALL PO1BH
MOV P1,#11H ;第五道工序
ACALL PO1BH
MOV P1,#22H ;第六道工序
ACALL PO1BH
MOV P1,#44H ;第七道工序
ACALL PO1BH
SJMP PO12
INT1: MOV B,R2 ;保护现场
PO17: MOV P1,#00H ;关输出
MOV 20H,#0A0H ;振荡次数
PO18: SETB P1.7 ;振荡
ACALL PO1A ;延时
CLR P1.7 ;停止
ACALL PO1A ;延时
DJNZ 20H,PO18 ;不为零转
CLR P1.7
ACALL PO1A
JNB P3.3,PO17 ;故障消除吗?
MOV R2,B ;恢复现场
RETI
PO1A: MOV R2,#06H ;延时2
ACALL DELY
RET
PO1BH: MOV R2,#30H ;延时3
ACALL DELY
RET
DELY: PUSH 02H ;延时子程序
DEL2: PUSH 02H
DEL3: PUSH 02H
DEL4: DJNZ R2,DEL4
POP 02H
DJNZ R2,DEL3
POP 02H
DJNZ R2,DEL2
POP 02H
DJNZ R2,DELY
RET
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -