预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共42页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第5章 机械工业出版社同名教材 配套电子教案中断的基本概念 80C51中断源 中断控制寄存器 中断处理过程 中断优先控制和中断嵌套 中断系统的应用 80C51定时/计数器 定时/计数器控制寄存器 定时/计数器工作方式 定时/计数器的应用§5-180C51中断系统⑴ INT0:外部中断0,中断请求信号由P3.2输入。 ⑵ INT1:外部中断1,中断请求信号由P3.3输入。 ⑶T0:定时/计数器0溢出中断,对外部脉冲计数由P3.4输入。 ⑷T1:定时/计数器1溢出中断,对外部脉冲计数由P3.5输入。 ⑸串行中断:包括串行接收中断RI和串行发送中断TI。①中断请求:定时和外中断控制寄存器TCON; 串行控制寄存器SCON; ②中断允许控制寄存器IE; ③中断优先级控制寄存器IP。INT0、INT1、T0、T1中断请求标志放在TCON中 串行中断请求标志放在SCON中。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相似。串行控制寄存器SCON80C51对中断源的开放或关闭由中断允许控制寄存器IE控制。①EA——CPU中断允许控制位 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,串行口关中。①PX0:INT0中断优先级控制位。PX0=1,为高优先级; PX0=0,为低优先级; ②PX1:INT1中断优先级控制位。控制方法同上。 ③PT0:T0中断优先级控制位。控制方法同上。 ④PT1:T1中断优先级控制位。控制方法同上。 ⑤PS:串行口中断优先级控制位。控制方法同上。三.中断处理过程 中断处理过程大致可分为四步: 中断请求、中断响应、中断服务、中断返回 ⒈中断请求 中断源发出中断请求信号,相应的中断请求标志位(在中断允许控制寄存器IE中)置“1”。 ⒉中断响应 CPU查询(检测)到某中断标志为“1”,在满足中断响应条件下,响应中断。 ⑴中断响应条件: ①该中断已经“开中”; ②CPU此时没有响应同级或更高级的中断; ③当前正处于所执行指令的最后一个机器周期; ④正在执行的指令不是RETI或者是访向IE、IP的指令, 否则必须再另外执行一条指令后才能响应。 ⑵中断响应操作 CPU响应中断后,进行下列操作: ①保护断点地址; ②撤除该中断源的中断请求标志; ③关闭同级中断; ④将相应中断的入口地址送入PC; 80C51五个中断入口地址:INT0:0003H; T0:000BH;INT1:0013H T1:001BH;串行口:0023H ⒊执行中断服务程序 中断服务程序应包含以下几部分: ⑴保护现场 ⑵执行中断服务程序主体,完成相应操作 ⑶恢复现场 ⒋中断返回 在中断服务程序最后,必须安排一条中断返回指令RETI,当CPU执行RETI指令后,自动完成下列操作: ⑴恢复断点地址。 ⑵开放同级中断,以便允许同级中断源请求中断。 六.中断优先控制和中断嵌套 ⒈中断优先控制 80C51中断优先控制首先根据中断优先级,此外还规定了同一中断优先级之间的中断优先权。其从高到低的顺序为: INT0、INT1、T0、T1、串行口。 中断优先级是可编程的,而中断优先权是固定的,不能设置,仅用于同级中断源同时请求中断时的优先次序。 80C51中断优先控制的基本原则: ①高优先级中断可以中断正在响应的低优先级中断,反之则不能。 ②同优先级中断不能互相中断。 ③同一中断优先级中,若有多个中断源同时请求中断,CPU将先响应优先权高的中断,后响应优先权低的中断。 ⒉中断嵌套七.中断系统的应用 ⒈中断初始化 ⑴设置堆栈指针SP ⑵定义中断优先级 ⑶定义外中断触发方式 ⑷开放中断 ⑸安排好等待中断或中断发生前主程序应完成的操作内容。 ⒉中断服务主程序 中断服务子程序内容要求: ⑴在中断服务入口地址设置一条跳转指令,转移到中断