单片机中断过程.ppt
单片机中断过程,什么是中断,生活中,我们常常遇到一种情况,如你在家中吃饭,这时候电话突然响起来,那你就会停下来先去接电话。这就是中断的概念,单片机的CPU每次只能进行一种任务,所以当有一个中断请求时,CPU便停止现在的工作,转而执行另外的任务,当中断的任务执行完了以后,又回来继续原来还没做完的任务。,M51单片机的中断系统结构,执行主程序,主程序,继续执行主程序,断点,中断请求,中断响应,执行中断处理程序,中断返回,80C51单片机中断处理过程,中断响应条件 中断源有中断请求;此中断源的中断允许位为1;CPU开中断(即EA=1)。以上三条同时满足时,CPU才有可能响应中断。,中断响应条件和时间,一、中断允许控制 CPU对中断系统所有中断以及某个中断源的开放和屏蔽是由中断允许寄存器IE控制的。,80C51中断的控制,EX0(IE.0),外部中断0允许位;ET0(IE.1),定时/计数器T0中断允许位;EX1(IE.2),外部中断0允许位;ET1(IE.3),定时/计数器T1中断允许位;ES(IE.4),串行口中断允许位;EA(IE.7),CPU中断允许(总允许)位。,同一优先级中的中断申请不止一个时,则有中断优先权排队问题。同一优先级的中断优先权排队,由中断系统硬件确定的自然优先级形成,其排列如所示:,定时/计数器的结构和工作原理,一、定时/计数器的结构 定时/计数器的实质是加1计数器(16位),由高8位和低8位两个寄存器组成。TMOD是定时/计数器的工作方式寄存器,确定工作方式和功能;TCON是控制寄存器,控制T0、T1的启动和停止及设置溢出标志。,3.3.2 定时/计数器的控制,80C51单片机定时/计数器的工作由两个特殊功能寄存器控制。TMOD用于设置其工作方式;TCON用于控制其启动和中断申请。一、工作方式寄存器TMOD 工作方式寄存器TMOD用于设置定时/计数器的工作方式,低四位用于T0,高四位用于T1。其格式如下:,GATE:门控位。GATE0时,只要用软件使TCON中的TR0或TR1为1,就可以启动定时/计数器工作;GATA1时,要用软件使TR0或TR1为1,同时外部中断引脚INT0/1也为高电平时,才能启动定时/计数器工作。即此时定时器的启动条件,加上了INT0/1引脚为高电平这一条件。:定时/计数模式选择位。0为定时模式;=1为计数模式。M1M0:工作方式设置位。定时/计数器有四种工作方式,由M1M0进行设置。,二、控制寄存器TCON TCON的低4位用于控制外部中断,已在前面介绍。TCON的高4位用于控制定时/计数器的启动和中断申请。其格式如下:,TF1(TCON.7):T1溢出中断请求标志位。T1计数溢出时由硬件自动置TF1为1。CPU响应中断后TF1由硬件自动清0。T1工作时,CPU可随时查询TF1的状态。所以,TF1可用作查询测试的标志。TF1也可以用软件置1或清0,同硬件置1或清0的效果一样。TR1(TCON.6):T1运行控制位。TR1置1时,T1开始工作;TR1置0时,T1停止工作。TR1由软件置1或清0。所以,用软件可控制定时/计数器的启动与停止。TF0(TCON.5):T0溢出中断请求标志位,其功能与TF1类同。TR0(TCON.4):T0运行控制位,其功能与TR1类同。,二、方式1 方式1的计数位数是16位,由TL0作为低8位、TH0作为高8位,组成了16位加1计数器。,计数个数与计数初值的关系为:,