文档介绍:第5章中断系统
中断的概念
MCS-51单片机的中断流程
MCS-51的中断响应条件和中断处理
中断程序编程举例
中断的概念
当CPU正在处理某事件的时候,外部发生的某一事件请求CPU迅速去处理,于是CPU暂时中止当前的工作,转去处理所发生的事件。中断服务处理完该事件后,再返回到原来被中止的地方继续原来的工作,这样的过程称为中断。
MCS-51单片机的中断流程
MCS-51单片机中断系统结构
89C51中断系统的五个中断源
1、INT0——外部中断0请求,低电平有效。。
2、INT1——外部中断1请求,低电平有效。。
3、T0——定时器/计数器0溢出中断请求。
4、T1——定时器/计数器1溢出中断请求。
5、TX/RX——串行口中断请求。当串行口完成一帧数据的发送或接收时,便请求中断。
中断请求标志寄存器
如同生活中的中断请求标志一样,如果你家仅有电话,但电话线路不通,这时你家电话便是聋子耳朵—摆设,即使有人打电话,你也不知道,也无从谈起去接听电话。如果是个聋子在家,即使电话响起来,他也不会知道,所以想要接听电话必须有两个条件:电话铃必须响;能识别铃声响的耳朵。
对于51单片机同样如此,光有中断源是不够的,如何具有人耳的功能呢?51单片机采用设置中断请求标志寄存器TCON和串行控制寄存器SCON。MCS-51单片机工作时,在每个机器周期中都会去查询中断标志寄存器,看它们相应位是否是1,如果是1,就说明有中断请求。
TF1
TF0
IE1
IT1
IE0
IT0
TCON
(88H)
8FH 8EH 8DH 8CH 8BH 8AH 89H 88H
1、TCON中的中断标志位
TCON为定时器/计数器T0和T1的控制器,同时也锁存T0和T1的溢出中断标志及外部中断0和1的中断标志等。
各控制位的含义
TF1:定时器/计数器T1溢出中断请求标志位。当启动T1计数后,T1从初值开始加1计数,计数器最高位产生溢出时,由硬件使TF1置1,并向CPU发出中断请求。当CPU响应中断时,硬件将自动对TF1清0。
TF0:定时器/计数器T0溢出中断请求标志位。含义与TF1类同。
IE1:外部中断1的中断请求标志。当检测到外部中断引脚INT1()上存在有效的中断请求信号时,由硬件使IE1置1。当CPU响应中断请求时,由硬件使IE1清0
IE0:外部中断0的中断请求标志。INT0()。其含义与IE1类同
IT1:外部中断1的中断触发方式控制位。
IT1=0时,外部中断1程控为电平触发方式。
CPU在每一个机器周期S5P2期间采样外部中断请求引脚的输入电平。若外部中断1请求为低电平,则使IE1置1;若为高电平,则使IE1清0。
IT1=1时,外部中断1程控为边沿触发方式。
CPU在每一个机器周期S5P2期间采样外部中断请求引脚的输入电平。如果在相继的两个机器周期采样过程中,一个机器周期采样到外部中断1请求引脚为高电平,接着的下一个机器周期采样到为低电平,则使IE1置1。直到CPU响应该中断时,才由硬件使IE1清0。
IT0:外部中断0的中断触发方式控制位。其含义与IT1类同。
2、串行口控制寄存器SCON中的中断标志位
TI
RI
SCON
(98H)
9FH 9EH 9DH 9CH 9BH 9AH 99H 98H
SCON为串行口控制寄存器,其低2位锁存串行口的接收中断和发送中断标志RI和TI。
SCON中TI和RI的格式如所示