📄 实验四(2).asm
字号:
;功能:验证中断优先级
ORG 0000H
LJMP MAIN
ORG 0003H ;外中断INT0入口地址
LJMP INT0
ORG 0013H ;外中断INT1入口地址
LJMP INT1
ORG 0050H
PROC MAIN
MAIN:
MOV SP, #5FH ;初始化堆栈指针SP
;初始化外中断INT0
SETB IT0 ;边沿触发
;初始化外中断INT1
SETB IT1 ;边沿触发
SETB EX0 ;允许INT0中断
SETB EX1 ;允许INT1中断
SETB EA ;开中断
; CLR PX0 ;修改中断优先级
; SETB PX1
ORL P1, #09H ;P1口与立即数09H相或,使P1.3、P1.0同时为1。
ANL P1, #0F6H ;P1口与立即数F6H相与,使P1.3、P1.0同时为0。
ORL P1, #09H ;P1口与立即数09H相或,再使P1.3、P1.0同时为1。
SJMP $ ;模拟主程序
END
;INT0中断服务程序
ORG 0300H ;一般并不需要指定中断服务程序存放位置
;但为直观了解PC指针,这里还是指定中断
;服务程序的存放位置。
PROC INT0
INT0:
PUSH PSW
PUSH ACC
MOV P0, #80H ;在LED200上显示数码“8”
NOP ;断点1
POP ACC
POP PSW
RETI
END
ORG 0400H
PROC INT1
INT1:
PUSH PSW
PUSH ACC
MOV P0, #0C0H ;在LED200上显示数码“0”
NOP ;断点2
POP ACC
POP PSW
RETI
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -