《C51单片机的中断..ppt》由会员分享,可在线阅读,更多相关《C51单片机的中断..ppt(81页珍藏版)》请在优知文库上搜索。
1、第第5 5章章 单片机的定时与单片机的定时与中断系统中断系统中断系统中断系统:包含中断源、中断方式、中:包含中断源、中断方式、中断控制寄存器、中断响应和中断请求的断控制寄存器、中断响应和中断请求的撤除。撤除。 本章主要内容本章主要内容定时定时/ /计数器计数器:包含定时:包含定时/ /计数器的定时计数器的定时和计数功能和计数功能 、定时、定时/ /计数器的控制寄存计数器的控制寄存器、工作方式及其应用。器、工作方式及其应用。 单片机在某一时刻只能处理一个任单片机在某一时刻只能处理一个任务,当多个任务同时要求单片机处理时,务,当多个任务同时要求单片机处理时,这一要求应该怎么实现呢?通过中断可这一要
2、求应该怎么实现呢?通过中断可以实现多个任务的资源共享。以实现多个任务的资源共享。 MCS-51MCS-51的的中断中断系统系统看书看书电话电话铃响铃响接电话接电话继续继续看书看书中断响应中断响应中断返回中断返回中断请求中断请求中断的基本概念中断的基本概念主程序主程序断点断点执行中断服务执行中断服务(或处理)子程(或处理)子程序序继续执继续执行程序行程序 中断响应中断响应中断返回中断返回中断请求中断请求中断的基本概念中断的基本概念 所谓的中断就是,当所谓的中断就是,当CPUCPU正在处理正在处理某项事务的时候,如果外界或者内部发某项事务的时候,如果外界或者内部发生了紧急事件,要求生了紧急事件,要
3、求CPUCPU暂停正在处理暂停正在处理工作而去处理这个紧急事件,待处理完工作而去处理这个紧急事件,待处理完后,再回到原来中断的地方,继续执行后,再回到原来中断的地方,继续执行原来被中断的程序,这个过程称作中断。原来被中断的程序,这个过程称作中断。 中断的中断的定义定义u 实现这种功能的部件称为实现这种功能的部件称为中断系统中断系统(中断机构)。(中断机构)。u 产生中断的请求源称为产生中断的请求源称为中断源中断源。u 中断过程中又有中断发生称为中断过程中又有中断发生称为中断中断嵌套。嵌套。u中断执行的程序称为中断执行的程序称为中断服务子程序。中断服务子程序。 n中断功能强弱是计算机性能优劣的重
4、要中断功能强弱是计算机性能优劣的重要标志标志n提高提高CPUCPU效率效率 解决速度矛盾解决速度矛盾 实现并行工作实现并行工作 实时处理实时处理 应付突发事件应付突发事件 中断源是指在计算机系统中向中断源是指在计算机系统中向CPUCPU发出中断请求的来源发出中断请求的来源。 MCS-51MCS-51的中断系统的中断系统中断源中断源80518051单片机有单片机有5 5个中断源:个中断源:外部中断源:外部中断源:外部中断外部中断0(INT0 ) 外部中断外部中断1(INT1 )内部中断源:内部中断源:定时定时/计数中断计数中断0(T0) 定时定时/计数中断计数中断1(T1)串行中断串行中断 1.
5、 外部中断源外部中断源 外部中断外部中断0 0(INTINT0 0 ):):来自引脚来自引脚P P3.23.2 外部中断外部中断1 1(INTINT1 1 ):):来自引脚来自引脚P P3.33.3外部中断外部中断请求两种方式:请求两种方式:u 电平触发方式(低电平有效)电平触发方式(低电平有效)u 下降沿触发方式(脉冲的下降沿有下降沿触发方式(脉冲的下降沿有效,至少要维持一个机器周期)效,至少要维持一个机器周期) 2. 内部中断源内部中断源定时定时/ /计数中断计数中断0 0(T T0 0):):定时定时/ /计数计数发生溢出时,产生中断请求。发生溢出时,产生中断请求。定时定时/ /计数中断
6、计数中断1 1(T1T1):):定时定时/ /计数计数发生溢出时,产生中断请求。发生溢出时,产生中断请求。 串行中断:串行中断:为完成串行数据传送而设为完成串行数据传送而设置。单片机完成接受或发送一组数据时,置。单片机完成接受或发送一组数据时,产生中断请求。产生中断请求。说明:说明:外部中断源中断请求外部中断源中断请求需设置需设置,而,而 内部中断源中断请求不需设置,内部中断源中断请求不需设置, 自动产生自动产生。 MCS-51MCS-51的中断系统的中断系统中断标志中断标志CPU主程序INT0INT1T0T1串口IE0TF0IE1TF1TIRI中断源中断源中断标志位中断标志位 每一个中断源都
7、有相应的中断标志位;每一个中断源都有相应的中断标志位; 某一个中断源申请中断,相应中断标志位置某一个中断源申请中断,相应中断标志位置1 1。 MCS-51MCS-51的中断系统的中断系统中断允许中断允许CPU主程序INT0INT1T0T1串口IE0TF0IE1TF1TIRI中断源中断源中断标志位中断标志位 EA总中断允许位,总中断允许位,EA=1开放所有中断,开放所有中断,EA=0,禁止所有中断;,禁止所有中断; 某一个中断源还有相应的中断允许位,某一个中断源还有相应的中断允许位,1允许相应中断源的中断,允许相应中断源的中断,0禁禁止相应中断源的中断。止相应中断源的中断。中断允许中断允许ESE
8、T0EX0EX1ET1EA MCS-51MCS-51的中断系统的中断系统中断优先级中断优先级CPU主程序INT0INT1T0T1串口IE0TF0IE1TF1TISI中断源中断源中断标志位中断标志位 单片机中有两个中断优先级,即高优先级中断和低优先级中断,前单片机中有两个中断优先级,即高优先级中断和低优先级中断,前者优先权高于后者(在程序中设置,相应位者优先权高于后者(在程序中设置,相应位=1=1,为高优先级);,为高优先级); 同一优先级别的中断源按照自然优先级顺序确定优先级别(硬件同一优先级别的中断源按照自然优先级顺序确定优先级别(硬件形成,无法改变)。形成,无法改变)。中断允许中断允许ES
9、ET0EX0EX1ET1EA自然优先级自然优先级高低优先控制优先控制PSPT0PX0PX1PT1 IE0TCONSCONINT0 IT0=0 IT0=1INT1 IT1=0 IT1=1TF0 IE1TF1T0T1TIRITXDRXDESET0EX0EX1ET1EA自然优先级自然优先级矢量地址高级中断请求高级中断请求自然优先级自然优先级矢量地址低级中断请求低级中断请求PX0PT0PX1PT1PSIEIP MCS-51 MCS-51的中断系统结构图的中断系统结构图中断标志位中断源允许总允许中断优先级表表 5.1 8051 中中 断断 源源定时器控制寄存器(定时器控制寄存器(TCONTCON)串行口
10、控制寄存器(串行口控制寄存器(SCONSCON)中断允许控制寄存器(中断允许控制寄存器(IEIE)中断优先级控制寄存器(中断优先级控制寄存器(IPIP)中断控制寄存器(中断控制寄存器(4个):个): TF1 TF0 IE1 IT1 IE0 IT0TCONT1溢出中断标志溢出中断标志(TCON.7): T1启动计数后,计满溢出由硬件启动计数后,计满溢出由硬件置位置位TF1=1,向,向CPU请求中断,此标志请求中断,此标志一直保持到一直保持到CPU响应中断后,响应中断后,才由硬才由硬件自动清件自动清0。也可用软件查询该标志,。也可用软件查询该标志,并由软件清并由软件清0。765432101.1.定
11、时器控制寄存器(定时器控制寄存器(TCONTCON) 计数溢出标志位的使用有两种情况:计数溢出标志位的使用有两种情况:u采用中断方式时,作中断请求标志位采用中断方式时,作中断请求标志位来使用;来使用;u采用查询方式时,作查询状态位来使采用查询方式时,作查询状态位来使用。用。 TF1 TF0 IE1 IT1 IE0 IT0TCON 88H外部中断外部中断INT1中断标志中断标志位位(TCON.3) : IE11,外部中断1向CPU申请中断 外部中断外部中断INT1触发方触发方式控制位式控制位(TCON.2): IT1=0,电平触发方式 IT1=1, 下降沿触发方式76543210IEIE0 0和
12、和IEIE1 1外中断请求标志位外中断请求标志位 当当CPUCPU采样到采样到INT0(或(或INT1 )端)端出现出现有效中断请求时有效中断请求时,IE0 IE0 (或(或IE1IE1)位由硬件位由硬件置置“1”1”。当。当中断响应完成中断响应完成转向中断服务程序时,由硬件把转向中断服务程序时,由硬件把IE0IE0(或(或IE1IE1)清零清零。 TI (SCON.1)串行发送中断标志。 RI (SCON.0)串行接收中断标志。 TI RISCON 98H76543210注意:该寄存器可以位寻址。2.SCON寄存器寄存器 TITI串行口发送中断请求标志位串行口发送中断请求标志位 当发送完一帧
13、串行数据后,由硬件置当发送完一帧串行数据后,由硬件置“1”1”;在转向中断服务程序后,用在转向中断服务程序后,用软件软件清清“0”0”。 RIRI串行口接收中断请求标志位串行口接收中断请求标志位 当接收完一帧串行数据后,由硬件置当接收完一帧串行数据后,由硬件置“1”1”;在转向中断服务程序后,用在转向中断服务程序后,用软件软件清清“0”0”。 串行中断请求由串行中断请求由TITI和和RIRI的的逻辑或逻辑或得到。得到。其中与中断有关的控制位共其中与中断有关的控制位共2 2位:位: IE A8H EA ESET1EX1 ET0EX0例:允许定时器例:允许定时器T0中断:中断: SETB EA S
14、ETB ET0 或或 MOV IE,#82H76543210(3 3)中断允许寄存器)中断允许寄存器IEIE(4 4)中断优先级控制寄存器()中断优先级控制寄存器(IPIP)nMCS-51MCS-51有两个优先级有两个优先级,1,1为高为高,0,0为低为低n字节地址字节地址: :B8HB8Hn位地址:位地址: 0BFH0BFH0B8H0B8H 51 51单片机有两个中断优先级单片机有两个中断优先级高级和低级高级和低级 专用寄存器专用寄存器IPIP为中断优先级寄存器,用户可为中断优先级寄存器,用户可用软件设定用软件设定 相应位为相应位为1 1,对应的中断源被设置为,对应的中断源被设置为高优先级高
15、优先级,相应位为相应位为0 0,对应的中断源被设置为低优先级,对应的中断源被设置为低优先级 系统复位时,均为低优先级系统复位时,均为低优先级 PSPT1PX1PT0PX0 IP B8H 76543210对同时发生多个中断申请时:对同时发生多个中断申请时:不同优先级的中断同时申请不同优先级的中断同时申请( (很难遇到很难遇到) ) 先高后低先高后低相同优先级的中断同时申请相同优先级的中断同时申请( (很难遇到很难遇到) ) 按序执行按序执行正处理低优先级中断又接到高级别中断正处理低优先级中断又接到高级别中断 高打断低高打断低正处理高优先级中断又接到低级别中断正处理高优先级中断又接到低级别中断 高
16、不理低高不理低中断优先级处理原则中断优先级处理原则自然优先级自然优先级:nINT0 高高nT0nINT1nT1nRI/TI 低低CPU正在执行正在执行低中断源低中断源高中断源高中断源RETIRETI寄存器名称D7D6D5D4D3D2D1D0TCON(88H) TF1TF0IE1IT1IE0IT0定时器控制寄存器位地址8FH8EH8DH8CH8BH8AH89H88HSCON(98H)TIRI串行口控制寄存器位地址9FH9EH9DH9CH9BH9AH99H98HIE(A8H)EAESET1 EX1 ET0 EX0中断允许寄存器位地址AFHACHABHAAHA9HA8HIP(B8H)PSPT1 PX1 PT0 PX0中断优先级寄存器位地址BCHBBHBAHB9HB8H中断控制寄存器汇总中断控制寄存器汇总 例如例如, , 某软件中对寄存器某软件中对寄存器IEIE、 IPIP设置设置如下如下: :MOV IE,#00HMOV IE,#00H MOV IE, MOV IE, 8FH8FH(10001111B)(10001111B) MOV IP, MOV IP, 06H06H(00000110B)