AT89S51单片机中断系统和定时/计数器
本章主要内容
1、中断概述
3、定时/计数器
4、键盘接口
2、外部中断的应用
一、中断的概述
1、中断概念
单片机的CPU正在处理某个任务时,遇到其它事件请求(如定时器溢出),暂时停止目前的任务,转去处理请求的事件,处理完后再回到原来的地方,继续原来的工作,这一过程称为“中断”,我们把请求的事件称为中断源。
2、MCS-51系列单片机的中断系统
3、与中断系统有关的SFR
(1)TCON——中断控制寄存器
TCON
D7
D6
D5
D4
D3
D2
D1
D0
位地址
8FH
8DH
8BH
8AH
89H
88H
位定义
TF1
TF0
IE1
IT1
IE0
IT0
IT0——外部中断INT0的触发方式选择位。 IT0=0,低电平触发方式;IT0=1,下降沿触发方式。
IE0——外部中断INT0的中断请求标志。
IT1——外部中断INT1的触发方式选择位。功能与IT0类似。
IE1——外部中断INT1的中断请求标志。功能与IE0类似。
TF0——定时/计数器T0的中断请求标志。
TF1——定时/计数器T1的中断请求标志。
(2)IE——中断允许控制寄存器
IE
D7
D6
D5
D4
D3
D2
D1
D0
位地址
AFH
—
—
ACH
ABH
AAH
A9H
A8H
位定义
EA
—
—
ES
ET1
EX1
ET0
EX0
EX0——外部中断0中断允许控制位。EX0=1, INT0被允许(开中断),EX0=0,外部中断0被禁止(关中断)。
ET0——定时/计数器T0中断允许控制位。
EX1——外部中断INT1中断允许控制位。
ET1——定时/计数器T1中断允许控制位。
ES——串行口中断允许控制位。
EA——中断系统总允许控制位。
(3)中断优先级控制寄存器
IP
D7
D6
D5
D4
D3
D2
D1
D0
位地址
—
—
—
BCH
BBH
BAH
B9H
B8H
位定义
—
—
—
PS
PT1
PX1
PT0
PX0
PX0——外部中断INT0中断优先级控制位。
PT0——定时/计数器T0优先级控制位。
PX1——外部中断INT1中断优先级控制位。
PT1——定时/计数器T1优先级控制位。
PS——串行口优先级控制位。
4、中断源向量地址
INT0: 0003H
T0: 000BH
INT1: 0013H
T1: 001BH
串行口:0023H
二、中断处理过程
中断处理过程:中断请求、中断响应、中断服务和中断返回。
1、中断请求
中断源只有在有请求时,CPU才可能响应它,不同的中断源产生中断请求的方式是不同的。外部中断产生请求是在外中断的引脚上加低电平或下降沿信号,而定时/计数器中断请求是在内部的计数单元计满溢出时产生,串行口中断请求是在完成一次发送或接收时产生。
2、中断响应
(1)条件
中断源的中断已经被允许,中断允许标志和总的中断允许标志EA都被设置为“1”。
CPU此时没有响应同级或高级中断。
CPU正处于执行某一条指令的最后一个机器周期。(并且不是对IE、IP进行访问的指令或者是中断返回指令RETI )
(2)响应中断时的操作
保护断点地址。
撤除该中断源的请求标志。
关闭同级中断。
将该中断源的入口地址送给PC,程序将转到该程序的入口地址处运行。
3、中断服务
中断服务就是中断源请求CPU做的任务,需要编程者用指令来实现。
4、中断返回
中断返回和子程序的返回类似,需要执行一条返回指令RETI
RETI ;①(SP)→PC15~8,SP-1→SP。
;②(SP)→PC7~0,SP-1→SP。
中断返回时完成的操作:
(1)恢复断点地址。
(2)开放同级中断。
AT89S51单片机中断系统和定时计数器 来自淘豆网m.daumloan.com转载请标明出处.