51单片机资源

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.中断系统

一.中断概述

⒈什么叫中断?

CPU暂时中止其正在执行的程序,转去执行请求中断的那个外设或事件的服务程序,等处理完毕后再返回执行原来中止的程序, 叫做中断。

⒉为什么要设置中断?

⑴提高CPU工作效率

⑵具有实时处理功能

⑶具有故障处理功能

⑷实现分时操作

二. 中断源和中断控制寄存器

⒈中断源

中断源是指能发出中断请求,引起中断的装置或事件。80C51单片机的中断源共有5个,其中2个为外部中断源,3个为内部中断源:

⑴ INT0:外部中断0,中断请求信号由P3.2输入。

⑵ INT1:外部中断1,中断请求信号由P3.3输入。

⑶ T0:定时/计数器0溢出中断,对外部脉冲计数由P3.4输入。

⑷ T1:定时/计数器1溢出中断,对外部脉冲计数由P3.5输入。

⑸串行中断:包括串行接收中断RI和串行发送中断TI。

⒉中断控制寄存器

80C51单片机中涉及中断控制的有3个方面,4个特殊功能寄存器:

①中断请求:定时和外中断控制寄存器TCON;串行控制寄存器SCON;

②中断允许控制寄存器IE;

③中断优先级控制寄存器IP。

⑴中断请求控制寄存器

INT0、INT1、T0、T1中断请求标志放在TCON中,串行中断请求标志放在SCON中。

TCON的结构、位名称、位地址和功能如下:

TCON D7 D6 D5 D4 D3 D2 D1 D0

位名称TF1 —TF0 —IE1 IT1 IE0 IT0

位地址8FH 8EH 8DH 8CH 8BH 8AH 89H 88H

功能T1中断标志—T0中断标

INT1中断

标志

INT1触发

方式

INT0中断

标志

INT0触发

方式

TCON位功能:

① TF1 —— T1溢出中断请求标志,T1计数溢出后,TF1=1

② TF0 —— T0溢出中断请求标志

T0计数溢出后,TF0=1

③ IE1 ——外中断中断请求标志

当P3.3引脚信号有效时,IE1=1

④ IE0 ——外中断中断请求标志

当P3.2引脚信号有效时,IE0=1

⑤ IT1 ——外中断触发方式控制位

IT1=1,边沿触发方式;

IT1=0,电平触发方式。

⑥ IT0 ——外中断触发方式控制位

其意义和功能与IT1相似。

② RI ——串行口接收中断请求标志

⑵中断允许控制寄存器IE

80C51对中断源的开放或关闭由中断允许控制寄存器IE控制。

EA=1,CPU开中;

EA=0,CPU关中,且屏蔽所有5个中断源。

② EX0 ——外中断INT0中断允许控制位

EX0=1,INT0开中;EX0=0,INT0关中。

③ EX1 ——外中断INT1中断允许控制位

EX1=1,INT1开中;EX1=0,INT1关中。

④ ET0 ——定时/计数器T0中断允许控制位

ET0=1,T0开中;ET0=0,T0关中。

⑤ ET1 ——定时/计数器T1中断允许控制位

ET1=1,T1开中;ET1=0,T1关中。

⑥ ES ——串行口中断(包括串发、串收)允许控制位

ES=1,串行口开中;ES=0,串行口关中。

说明: 80C51对中断实行两级控制,总控制位是EA,每一中断源还有各自的控制位。首先要EA=1,其次还要自身的控制位置“1”。

三. 中断处理过程

中断处理过程大致可分为四步:

中断请求、中断响应、中断服务、中断返回

⒈中断请求

中断源发出中断请求信号,相应的中断请求标志位(在中断允许控制寄存器IE中)置

“1”。

⒉中断响应

CPU查询(检测)到某中断标志为“1”,在满足中断响应条件下,响应中断。

⑴中断响应条件:

①该中断已经“开中”;

② CPU此时没有响应同级或更高级的中断;

③当前正处于所执行指令的最后一个机器周期;

④正在执行的指令不是RETI或者是访向IE、IP的指令,

否则必须再另外执行一条指令后才能响应。

⑵中断响应操作

CPU响应中断后,进行下列操作:

①保护断点地址;

②撤除该中断源的中断请求标志;

③关闭同级中断;

④将相应中断的入口地址送入PC;

80C51五个中断入口地址:

INT0:0003H;

T0:000BH;

INT1:0013H

T1:001BH;

串行口:0023H

⒊执行中断服务程序

中断服务程序应包含以下几部分:

⑴保护现场

⑵执行中断服务程序主体,完成相应操作

⑶恢复现场

⒋中断返回

在中断服务程序最后,必须安排一条中断返回指令RETI,当CPU执行RETI指令后,自动完成下列操作:

⑴恢复断点地址。

⑵开放同级中断,以便允许同级中断源请求中断。

四. 中断响应等待时间

若排除CPU正在响应同级或更高级的中断情况,中断响应等待时间为:3~8个机器周期

五. 中断请求的撤除

中断源发出中断请求,相应中断请求标志置“1”。 CPU响应中断后,必须清除中断请求“1”标志。否则中断响应返回后,将再次进入该中断,引起死循环出错。

⑴对定时/计数器T0、T1中断,外中断边沿触发方式,CPU响应中断时就用硬件自动清除了相应的中断请求标志。

⑵对外中断电平触发方式,需要采取软硬结合的方法清除(CPU自动硬件清除,同时用户也要及时将外部中断引脚变成无效电平)。

⑶对串行口中断,用户应在串行中断服务程序中用软件清除TI或RI。

六. 中断优先控制和中断嵌套

⒈中断优先控制

80C51中断优先控制首先根据中断优先级,此外还规定了同一中断优先级之间的中断优先权。其从高到低的顺序为:INT0、INT1、T0、T1、串行口。

中断优先级是可编程的,而中断优先权是固定的,不能设置,仅用于同级中断源同时请求中断时的优先次序。

80C51中断优先控制的基本原则:

①高优先级中断可以中断正在响应的低优先级中断,反之则不能。

②同优先级中断不能互相中断。

③同一中断优先级中,若有多个中断源同时请求中断,CPU将先响应优先权高的中断,

相关文档
最新文档