×
单片机 > 单片机程序设计 > 详情

51单片机的中断体系结构

发布时间:2020-09-03 发布时间:
|
80C51的中断系统有5个中断源(8052有 6个),2个优先级,可实现二级中断嵌套 。MCS-51系列单片机中断系统的机构如下:

与中断系统相关的特殊寄存器:
1)中断允许控制寄存器(IE)------ 控制各中断的开放和屏蔽
2)中断优先级控制寄存器(IP)------设置各中断的优先级
3)定时器/计数器控制寄存器(TCON)----定时器和外部中断的控制
4)串行口控制寄存器(SCON)------串行中断的控制
 
中断类型分为三类:
1)T0、T1是2个定时器/计数器中断,由片内定时器提供;
2)INT0、INT1是2个外部中断,由引脚P3.2和P3.2提供;
3)RX、TX为串行口中断所用,由片内串口提供。
 

 
 
 
1、(P3.2)/(P3.3)可由IT0(TCON.0)/IT1(TCON.2)选择其为低电平有效还是下降沿有效。当CPU检测到P3.2/P3.3引脚上出现有效的中断信号时,中断标志IE0(TCON.1)/IE1(TCON.3)置1,向CPU申请中断。
 
3、TF0(TCON.5)/TF1(TCON.7),片内定时/计数器T0/T1溢出中断请求标志。当定时/计数器T0/T1发生溢出时,置位TF0/TF1,并向CPU申请中断。
 
5、RI(SCON.0)或TI(SCON.1),串行口中断请求标志。当串行口接收完一帧串行数据时置位RI或当串行口发送完一帧串行数据时置位TI,向CPU申请中断。
 
上述只是向CPU申请中断,如果要得到CPU的相应,还要设置相应的中断允许IE和优先级IP,中断方能的到响应。
 
1)定时器中断的使用(以定时器0为例)
 ……
 TMOD |= 0x01 | 0x04;  //使用模式1,16位计数器,使用"|"符号可以在使用多个定时器时不受影响     
 TH0=0xFF;      //给定初值
 TL0=245;         //从245计数到255 
 EA=1;            //总中断打开
 ET0=1;           //定时器中断打开
 TR0=1;           //定时器开关打开
 
void Timer0_isr(void) interrupt 1 using 1    //中断服务程序
{
 TH0=0xFF;      //重新给定初值
 TL0=245; 
 
 ……
}
2)外部中断的使用(以外部中断0为例)
  …………
  EA=1;          //全局中断开
  EX0=1;         //外部中断0开
  IT0=0;         //电平触发
 
void ISR_Key(void) interrupt 0 using 1 //中断服务程序
{
…………
}
3)串行口中断的使用
……
关键字:51单片机  中断体系结构  中断系统 

『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
AVR熔丝位操作时的要点和需要注意的相关事项