AT89S51单片机的中断系统.ppt
《AT89S51单片机的中断系统.ppt》由会员分享,可在线阅读,更多相关《AT89S51单片机的中断系统.ppt(74页珍藏版)》请在三一办公上搜索。
1、AT89S51单片机的中断系统,本章主要内容,中断的概念和应用AT89S51中断系统结构与中断相关的SFR及中断控制外部中断C51中断函数编程举例,微机的输入输出方式,(1)无条件传送方式(2)查询传送方式(3)直接存储器存取(DMA)方式(4)中断方式,无条件传送方式,无条件传送方式在这种传送方式下,CPU不需要了解外设的状态,只要在程序中加入访问外设的指令,就可实现CPU与外设之间的数据传送。此种方法控制简单,但数据传送时,由于不知道外设的状态,传送数据时容易出错。,查询传送方式,查询传送方式在这种传送方式下,CPU在传送数据之前,要不断查询外部设备是否处于“准备好”状态,因此需占用CPU
2、的大量时间,效率较低。,DMA方式,DMA方式是让CPU不再控制数据总线,使外部设备和存储器之间直接传送(不通过CPU)的数据方式。适用于:(1)外设和存储器之间有大量数据传送。(2)外设的工作速度很高,中断方式,在中断传送方式下,CPU启动外设后,外设与CPU并行独立工作。当外设需要CPU处理时,由外设向CPU提出请求。若条件满足时,CPU中断当前执行的程序,转而为外设服务,服务完毕后,又继续执行原来的程序。对于这种方式,CPU不需要花费大量的时间进行外设的查询,从而提高了CPU的效率。在单片机应用系统中,为了提高CPU的效率,多采用中断方式。为了实现中断功能而配置的软件与硬件,称为中断系统
3、。,AT89S51中断技术概述,中断技术对单片机来说非常重要,因为单片机所具有的复杂实时控制功能与中断技术密不可分,面对控制对象随机发出的中断请求,单片机必须作出快速响应并及时处理,以使被控对象保持在最佳工作状态,达到预定的控制效果。,中断技术实质 资源共享技术,中断系统概述,计算机中的资源竞争,通常是因计算机在运行程序时会发生一些可预测或不可预测的随机事件引起的。这些随机事件包括:与计算机“并行”工作的输入/输出设备发出的中断请求,以进行数据传送。硬件故障、运算错误及程序出错时产生的中断请求,以进行故障报警和程序监测。当对运行中的计算机进行干预时,通过键盘输入的命令,以进行人机联系。来自被控
4、对象的中断请求,以实现自动控制。,思考:假设没有中断技术。,中断的概念,CPU在处理某一事件A时,发生了另一事件B请求CPU迅速去处理(中断发生);CPU暂时中断当前的工作,转去处理事件B(中断响应和中断服务);待CPU将事件B处理完毕后,再回到原来事件A被中断的地方继续处理事件A(中断返回),这一过程称为中断。用的最多的是外部中断与定时中断。外部中断典型应用:按键程序 定时器中断典型应用:定时与循环扫描等应用场合,中断服务程序,中断发生时,主程序暂停,跳转到中断服务程序,称为“响应中断”,执行完毕后返回主程序继续运行。中断服务程序不能被调用,没有返回值,程序在何处发生中断是由中断事件发生而决
5、定。,AT89S51单片机的中断过程,执行主程序,主程序,继续执行主程序,断点,中断请求,中断响应,执行中断处理程序,中断返回,引起CPU中断的根源,称为中断源。中断源向CPU提出的中断请求。CPU暂时中断原来的事务A,转去处理事件B。对事件B处理完毕后,再回到原来被中断的地方(即断点),称为中断返回。实现上述中断功能的部件称为中断系统(中断机构)。,有效地解决快速CPU与慢速外设之间的矛盾,可使CPU与外设并行工作,大大提高工作效率。分时操作:有了中断技术,CPU可启动多台外设并行工作,分时进行CPU与各台外设之间的信息交换。实时处理:可以及时处理控制系统中许多随机产生的参数与信息,从而提高
6、了实时控制系统的性能。故障处理:当计算机出现故障时,CPU可自动执行故障处理程序,提高了系统自身的可靠性。计算机与外围设备之间传送数据及实现人机联系也常采用中断方式。,中断技术的应用,中断源:凡是中断请求的来源都统称为中断源。在单片机系统中,中断可以由各种硬件设备产生,以便请求服务或报告故障等;中断也可以由处理器自身产生,如程序错误或对操作系统的请求作出响应等。,89S51的中断源,具有 5 个中断源(52子系列为6个,多一个定时器中断)中断向量(Interrupt Vector):是程序存储器的一个地址,表明一个中断的服务程序从这里开始存放。,中断源与中断向量,89S51的中断系统有5个中断
7、源(52系列有6个),2个优先级,可实现二级中断嵌套。,89S51中断系统的结构及中断控制,中断控制是指提供给用户使用的中断控制手段。AT89S51单片机中,中断控制的内容有4项:中断允许控制、中断请求标志、中断优先级控制和外中断触发方式控制,这些控制内容分布在 4 个控制寄存器中:中断允许控制寄存器:IE定时器控制寄存器:TCON串行口控制寄存器:SCON中断优先级控制寄存器:IP中断控制是通过硬件实现的,但须进行软件设置。,中断控制,字节地址:88H 位地址:88H 8FH,功能:用于保存外部中断请求以及定时器的计数溢出。【注意】:TCON既有定时器的控制功能,又有中断控制功能。虽然不少资
8、料将TCON称为定时器控制寄存器,但多数位都是为中断控制而设置的(其中与中断有关的控制位共6位)。,(1)中断标志与外部中断方式选择寄存器:TCON,中断请求标志寄存器,IE0和IE1:外部中断请求标志位当CPU采样到INT0(或INT1)端出现有效中断请求信号时,IE0(或IE1)位由硬件置“1”,即保存外部中断请求。在中断响应完成后转向中断服务程序时,再由硬件自动清“0”。IT0和IT1:外部中断触发方式控制位IT0(IT1)=0 电平触发方式,低电平有效IT0(IT1)=1 脉冲触发方式,负跳变有效此位由软件置“1”或清“0”,TF0和TF1:定时器(T0和T1)计数溢出标志位当计数器产
9、生计数溢出时,相应的溢出标志位由硬件置“1”,并自动产生定时中断请求。当转向中断服务程序时,再由硬件自动清“0”。计数溢出标志位的使用有两种情况:采用中断方式时,作为中断请求标志位来使用;采用查询方式时,作为状态位供查询使用。,TI:串行发送中断请求标志位在发送数据过程中,当最后一个数据位被发送完成后,TI由硬件置“1”;软件查询时TI可作为状态位使用。在转向中断服务程序后,TI必须由用户在中断服务程序中用软件清“0”。,(2)SCON中的中断标志位,RI:串行接收中断请求标志位在接收数据过程中,当采样到最后一个数据位有效时,RI由硬件置“1”;软件查询时RI可作为状态位使用。在转向中断服务程
10、序后,用软件清“0”。,中断允许与中断优先级控制,AT89S51单片机的中断系统有5个中断源,两个中断优先级,可实验两级中断服务程序嵌套。实现中断允许控制和中断优先级控制是由SFR中的中断允许寄存器IE和中断优先级控制器IP来实现的。,字节地址:0A8H 位地址:0A8H 0AFH,功能:用于控制是否允许使用中断。其中与中断有关的控制位共6位:EA:中断允许总控制位EA=0,中断总禁止,CPU禁止所有中断;EA=1,中断总允许,总允许后中断的禁止或允许由各中断源的中断允许控制位进行设置。,中断允许寄存器IE,EX0和EX1:外部中断允许控制位EX0(EX1)=0禁止外部中断0(或外部中断1)E
11、X0(EX1)=1允许外部中断0(或外部中断1)ET0和ET1:定时器/计数器中断允许控制位ET0(ET1)=0禁止定时器/计数器中断ET0(ET1)=1允许定时器/计数器中断ES:串行中断中断允许控制位ES=0禁止串行中断ES=1允许串行中断,单片机通过中断允许控制寄存器对中断的允许(开放)实行两级控制,即以EA作为总控制位,以各中断源的中断允许位作为分控制位。当总控制位EA=0时,关闭整个中断系统,不管分控制位状态如何,整个中断系统处于禁止状态;当总控制位EA=1时,开放中断系统,这时才能由各分控制位设置各自中断的允许与禁止。单片机复位后IE=00H,此时中断系统处于禁止状态。单片机中断响
12、应后硬件不会自动关闭中断,因此,在转中断服务程序后,应根据需要使用能将EA复位的有关指令禁止中断,即以软件方式关闭中断。,说 明:,中断允许寄存器IE,字节地址:0B8H 位地址:0B8H 0BFH,功能:用于设定各中断的优先级,通过IP可将中断分为高、低两个优先级。PX0:外部中断 0 优先级设定位PT0:定时器 0 中断优先级设定位PX1:外部中断 1 优先级设定位PT1:定时器 1 中断优先级设定位PS:串行中断优先级设定位,为“0”的位优先级低为“1”的位优先级高CPU复位时,IP中的各位均被清0,中断优先级控制寄存器IP,IP寄存器,单片机对同一优先级中断请求的查询次序:,对于同级的
13、多个中断请求,查询的次序安排是通过专门的内部逻辑实现的。,中断的轻重缓急程度。例如,电源故障有使整个系统瘫痪的危险,必须及时处理,所以应安排为高优先级;而那些仅影响局部故障的中断或操作性中断(如输入/输出中断)应安排为低优先级。中断设备的工作速度。快速设备需要及时响应,否则将有丢失数据的危险,所以应安排为高优先级。中断处理的工作量。尽量把处理工作量小的中断安排为高优先级,因为处理工作量小,占用CPU的时间短。中断请求发生的频繁程度。可以考虑将那些很少请求单片机干预的事件产生的中断安排为高优先级。,中断优先级定义原则,中断响应的条件,一个中断源的中断请求被响应,必须满足如下必要条件:EA=1:总
14、中断允许开关接通。该中断源发出中断请求:中断源请求标志=1该中断为允许:该中断源中断允许位=1无同级或更高级中断正在被服务。,中断响应时间:用从外部中断请求有效(标志位置“1”)到转向中断区入口地址所需的机器周期数来计算。在一个单一中断系统里面:最短响应时间为3个机器周期。最长响应时间为8个机器周期。如果已经在处理同级或更高级的中断,响应时间取决于正在执行中断服务程序的处理时间。,外部中断的响应时间,外部中断的触发方式选择,触发模式的选择由TCON的IT0与IT1控制。边沿触发:外部中断为负边沿触发方式。CPU在每个机器周期采样P3.2(P3.3)脚的输入电平,如果在一个周期中采样到高电平,在
15、下一个周期中采样到低电平,则硬件使IE0(IE1)置1,向CPU请求中断。电平触发:外部中断是通过检测P3.2(P3.3)脚的输入电平(低电平)来触发的。采用电平触发时,输入到P3.2(P3.3)脚的外部中断源必须保持低电平有效,直到该中断被响应。同时在中断返回前必须使电平变高,否则将会再次产生中断。一般采用边沿触发方式,因为此种模式抗干扰能力较强,极少采用电平触发方式。,中断响应后,TCON或SCON中的中断请求标志应及时清除,否则就意味着中断请求仍然存在,可能会造成中断的重复查询和响应。定时中断请求的撤销(硬件自动撤销)定时中断撤销只是标志位的置“0”问题。定时中断的中断请求是自动撤销的,
16、无需用户干预。定时中断响应后,硬件自动把标志位(TF0或TF1)清“0”。,中断请求的撤销,脉冲方式外部中断请求的撤销(硬件自动撤销)外部中断的撤销包括两项内容:中断标志位的置“0”和外中断请求信号的撤销。标志位IE0或IE1清“0”是在中断响应后由硬件电路自动完成。中断请求的脉冲信号过后自动撤销。电平方式外部中断请求的撤销(软硬件结合撤销)标志位IE0或IE1清“0”是在中断响应后由硬件电路自动完成。通过在系统中增加硬件电路,使中断请求信号引脚从低电平强制改变为高电平。,串行中断请求的撤销(软件撤销)串行中断的标志位是TI和RI。因中断响应后,还需要测试这两个标志位的状态,以判定是接收操作还
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- AT89S51 单片机 中断 系统
链接地址:https://www.31ppt.com/p-5415949.html