单片机中断多优先级的软件扩展方法
ORG 0023H
本文链接地址:http://www.oyaya.net/fanwen/view/166943.html
LJMP SS ;串行口入口地址
MAIN: MOV IE ,#9FH ;开放所有中断
MOV IP,#03H ;设定INT0、T0为高优先级
SJMP $
X0: PUSH DPL
PUSH DPH
MOV DPTR,#X0RL
PUSH DPL
PUSH DPH
RETI ;(PC)=X0RL,清"高优先级生效"
触发器,此时可响应其它中断请求
X0RL:· ;INT0子程序的真实入口地址
·
·
·
POP DPH
POP DPL
RETI
T0: PUSH DPL
PUSH DPH
MOV DPTR,#T0RL
PUSH DPL
PUSH DPH
RETI ;(PC)=T0RL,清"高优先级生效"
触发器,此时可响应其它中断请求
T0RL: · ;T0子程序的真实入口地址
·
·
·
POP DPH
POP DPL
RETI
X1: PUSH DPL
PUSH DPH
MOV DPTR,#X1RL
PUSH DPL
PUSH DPH
RETI ;(PC)=X1RL,清“高优先级生效”
触发器,此时可响应其它中断请求
X1RL: · ;INT1子程序的真实入口地址
·
·
·
POP DPH
POP DPL
RETI
T1: PUSH DPL
《单片机中断多优先级的软件扩展方法(第2页)》