实验内容及步骤:
在实验之前,我们先来复习下前面学过的中断的相关知识。
MCS-51是一个多中断源的
单片机,以8051为例,有三类共五个中断源,分别是外部中断两个,定时器中断两个和串行中断一个(其中断
控制字在后面实验中详细讲到)。外部中断是由外部原因引起的,共有两个中断源,既外部中断0和外部中断1。它们的中断请求信号分别
由引脚 -(P3.2)和 (P3.3)引入;外部中断请求信号有两种,既低电平有效方式和脉冲后沿负跳有效方式。
中断开放和屏蔽-IE寄存器
其作用是用来对各中断源进行开放或屏蔽的控制,各位定义如下:
位地址 AF AE AD AC AB AA A9 A8
位符号 EA / / ES ET1 EX1 ET0 EX0
EA—中断允许总控制位
EA=0 中断总禁止,禁止所有中断。
EA=1 中断总允许。
EX0(EX1)-- 外部中断允许控制位
EX0(EX1)=0 禁止外中断。
EX0(EX1)=1 允许外中断。
ET0(ET1)-- 定时/计数中断允许控制位
ET0(ET1)=0 禁止定时/计数中断。
ET0(ET1)=1 允许定时/计数中断。
ES – 串行中断允许控制位
ES=0 禁止串行中断。
ES=1允许串行中断。
中断优先级控制寄存器(IP)
地址为B8H,位地址为BFH-B8H,各位定义如下:
位地址 BF BE BD BC BB BA B9 B8
位符号 / / / PS PT1 PX1 PT0 PX0
PX0—外部中断0优先级设定位
PT0—定时中断0优先级设定位
PX1--外部中断1优先级设定位
PT1—定时中断1优先级设定位
PS—串行中断优先级设定位
为0的位优先级为低;为1的位优先级为高;
中断优先级是为中断嵌套服务的,MCS-51中断优先级的控制原则是:
(1)低优先级中断请求不能打断高优先级的中断服务;但高优先级中断请求可以打断低优先级的中断服务,从而实现中断嵌套。
(2)如果一个中断请求已被响应,则同级的其它中断响应将被禁止。
(3)如果同级的多个中断请求同时出现,则按CPU查询次序确定哪个中断请求被响应。其查询次序为:外部中断0—定时中断
0—外部中断1—定时中断1—串行中断。
实验电路如下图,本实验为每次响应外部中断0时,P1口依次输出高电平,使8个发光二极管依次循环熄灭闪烁。