第7章中断
中断的概念
8051单片机的中断系统及其管理
* MSC1211中断系统的增强功能
中断的概念
计算机在执行某一段程序的过程中,由于计算机系统之外的某种原因,有必要中止原程序的执行,而去执行相应的中断处理程序,待处理结束之后,再回来继续执行被中止了的原程序。这种程序在执行过程中由于外界的随机原因而被中间打断的情况称为“中断”。
计算机采用中断技术,大大提高了工作效率和处理问题的灵活性,主要表现在三方面:
,可使CPU和外设并行工作;
;
,提高了机器自身的可靠性。
“中断”类似于程序设计中的调用子程序,但它们又有区别,主要是中断的产生是随机的,而子程序调用是程序中事先安排好的没有随机性,因此中断比子程序调用对现场保护要求更为严格。
8051单片机的中断系统及其管理
8051共有5个中断源,二个优先级,中断处理程序可实现两极嵌套,因而具有较强的中断处理能力。
中断源及其优先级管理
中断源是指能发出中断请求,引起中断的装置或事件。
8051单片机提供5个中断源:
2个外部中断请求()
2个片内定时/计数器T0和T1的溢出中断请求TF0和TF1
1个片内串行口中断请求TI或RI
这些中断请求信号分别锁存在特殊功能寄存器TCON和SCON中。
IT0:选择外部中断请求0为边沿触发方式或电平触发方式的控制位。IT0=0,为电平触发方式,低电平有效;IT0=1,为边沿触发方式,输入脚上电平由高到低的负跳变有效。IT0可由软件置“1”或清“0”。
IE0:外部中断0请求标志。当IT0=0即电平触发方式时,每个机器周期的S5P2采样,若为低电平,将直接触发外部中断。当IT0=1即为边沿触发方式时,当第一个机器周期采样到为高电平,第二个机器周期采样到为低电平时,由硬件置位IE0,并以此来向CPU请求中断。当CPU响应中断,转向中断服务程序时由硬件清“0”IE0。
IT1:外部中断1触发方式控制位,和IT0类似。
IE1:外部中断1请求标志,其意义和IE0相同。
外部中断与IEx之间的关系如下图所示
D7
D6
D5
D4
D3
D2
D1
D0
复位值
TF1
-
TF0
-
IE1
IT1
IE0
IT0
00H
TCON:定时/计数器控制寄存器,字节地址88H。
SCON:串行口控制寄存器,字节地址为98H。
SCON的低二位锁存串行口的接收中断和发送中断标志,其格式如下。
TI:8051串行口的发送中断标志。TI=1表示串行口发送器正在向CPU申请中断。CPU响应发送器中断请求,转向执行中断服务程序时并不清“0”TI,TI必须由用户在中断服务程序中清“0”,即中断服务程序中必须有CLR TI或ANL SCON,#0FDH等清“0”TI的指令。
RI:串行口接收中断标志。RI为1表示串行口接收器正向CPU申请中断,同样RI必须由用户的中断服务程序清“0”。
D7
D6
D5
D4
D3
D2
D1
D0
复位值
-
-
-
-
-
-
TI
RI
00H
TF0:片内定时/计数器0溢出中断申请标志,在启动T0计数后,定时/计数器0从初值开始加1计数,当最高位产生溢出时,由硬件置“1”TF0,向CPU申请中断,CPU响应TF0中断时清“0”该标志位,TF0也可用软件清“0”(查询方式)。
TF1:片内的定时/计数器1的溢出中断申请标志,功能和TF0类似。
、禁止及优先级
对于每个中断源,其开放与禁止由专用寄存器IE中的某一位控制。
中断次序(优先级)可由专用寄存器IP中相应位是置1还是清0决定其为高优先级还是低优先级,这在硬件上有相应的优先级触发器予以保证。
IE:中断允许寄存器
EA:开放或禁止所有中断。如EA=0,则不响应中断。如EA=1,每个中断源分别由各自的允许位的置位或清除确定开放或禁止。
ES:开放或禁止串行通道中断。如ES=0,则禁止串行通道中断。
ET1:开放或禁止定时器1溢出中断。如ET1=0,则禁止定时器1中断。
EXl:开放或禁止外部中断源1。如果EXl=0,则禁止外部中断1。
ET0:开放或禁止定时器0溢出中断。如果ET0=0,则禁止定时器0中断。
EX0:开放或禁止外部中断源0。如果EX0=0,则禁止外部中断0。
用户可据需要置“1”或清“0”IE相应的位,来允许或禁止各中断源的中断申请。欲使某中断源允许中断,必须同时使EA=1,首先使CPU开放中断。所以E
建筑制图与识图10建筑施工图 来自淘豆网m.daumloan.com转载请标明出处.