在MCS-51单片机中断优先级中由中断优先级寄存器IP来高置的,IP中某位设为1,相应的中断就是高优先级,否则就是低优先级。
PS
PT1
PX1
PT0
PX0
IP优先级别寄存器各位介绍如下:
PS:串行口中断优先级控制位。PS=1设定串行口为高优先级中断;PS=0为低优先级中断。
PT1:T1中断优先级控制位。PT1=1设定定时器T1为高优先级中断;PT1=0为低优先级中断。
PX1:外部中断1优先级控制位。PX1=1设定定时器外部中断1为高优先级中断;PX1=0为低优先级中断。
PT0:T0中断优先级控制位。PT0=1设定定时器T0为高优先级中断;PT0=0为低优先级中断。
PX0:外部中断0优先级控制位。PX0=1设定定时器外部中断0为高优先级中断;PX0=0为低优先级中断。
例:设有如下要求,将T0、外中断1设为高优先级,其它为低优先级,求IP的值。
IP的首3位没用,可任意取值,设为000,后面根据要求写就可以了
-
-
-
PS
PT1
PX1
PT0
PX0
0
0
0
0
0
1
1
0
因此,最终,IP的值就是06H。
例:在上例中,如果5个中断请求同时发生,求中断响应的次序。
响应次序为:定时器0->外中断1->外中断0->实时器1->串行中断。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)