《单片机原理及应用》课件第5章-中断模块结构.ppt
《《单片机原理及应用》课件第5章-中断模块结构.ppt》由会员分享,可在线阅读,更多相关《《单片机原理及应用》课件第5章-中断模块结构.ppt(38页珍藏版)》请在文库网上搜索。
1、第第5 5章章 中断模块中断模块 主要内容:主要内容:1.1.中断模块相关寄存器;中断模块相关寄存器;2.2.中断执行流程;中断执行流程;3.3.中断服务程序设计。中断服务程序设计。在在CPU和外设交换信息时,存在着快速和外设交换信息时,存在着快速CPU和慢速外设间的和慢速外设间的矛盾,机器内部有时也可能出现突发事件,为此,计算机中通常矛盾,机器内部有时也可能出现突发事件,为此,计算机中通常采用中断技术。采用中断技术。1.中断:中断:CPU和外设并行工作,当外设数据准备好和外设并行工作,当外设数据准备好(或有某种突发或有某种突发事件发生事件发生)时向时向CPU提出请求,提出请求,CPU暂停正在
2、执行的程序转而为该暂停正在执行的程序转而为该外设服务外设服务(或处或处 理紧急事件理紧急事件),处理完毕再回到原断点继续执行原,处理完毕再回到原断点继续执行原程序。程序。2.中断源:中断源:引起中断的原因或中断申请的来源,称为中断源。引起中断的原因或中断申请的来源,称为中断源。可可以是以是I/O设备、故障、时钟、调试中人为设置。设备、故障、时钟、调试中人为设置。中断相关概念:中断相关概念:3.中断优先级:中断优先级:当有多个中断源同时当有多个中断源同时 向向CPU申请中断时,申请中断时,CPU优先响应最需紧优先响应最需紧急处理的中断请求,处理完毕再响应优先级别较低的急处理的中断请求,处理完毕再
3、响应优先级别较低的,这种预先安,这种预先安排的响应次序,为中断优先级。排的响应次序,为中断优先级。4.中断的嵌套:中断的嵌套:在中断系统中,高优先级的在中断系统中,高优先级的 中断请求能中断正在进行的较低级中断请求能中断正在进行的较低级的中断源处理。的中断源处理。5.中断系统:中断系统:能实现中断功能并能对中断进行管理的硬件和软件,称为中断能实现中断功能并能对中断进行管理的硬件和软件,称为中断系统。系统。一一.中断控制寄存器中断控制寄存器TCON-TCON-定时控制寄存器,定时控制寄存器,IE-IE-中断允许控制寄存器,中断允许控制寄存器,IP-IP-中断优先级控制寄存器中断优先级控制寄存器.
4、1、TCON 88H D7 D6 D5 D4 D3 D2 D1 D0TF1 TR1TF0 TR0IE1IT1IE0IT0定时器使用位外部中断使用说明:说明:1.IT0和和IT1为外中断为外中断INT0 和和INT1中断触发方式选择,若选下降沿触中断触发方式选择,若选下降沿触发则相应位置发则相应位置1;若选低电平触发;若选低电平触发,IT相应位置相应位置0。2.某中断源有中断请求,该中断标志置某中断源有中断请求,该中断标志置1,无中断请求,该中断标志,无中断请求,该中断标志置置0 3.TR0 和和 TR1 为定时器为定时器T0和和T1 工作启动和停止控制。工作启动和停止控制。2、IE中断允许寄存
5、器中断允许寄存器 A8H D7 D6 D5 D4 D3 D2 D1 D0EAESET1EX1ET0EX00 禁止,禁止,1允许允许ET0ET0:定时器定时器T0T0中断允许位中断允许位,ET0=1 ET0=1,允许,允许T1T1计数溢出中断;计数溢出中断;ET0=0ET0=0,禁止,禁止T0T0中断。中断。EX1EX1:外部中断外部中断INT1INT1允许位,允许位,EX1=1EX1=1,允许,允许INT1INT1中断;中断;EX1=0EX1=0,禁止,禁止INT1INT1中断。中断。EX0EX0:外部中断外部中断INT0INT0允许位,允许位,EX0=1EX0=1,允许,允许INT0INT0
6、中断;中断;EX0=0EX0=0,禁止,禁止INT0INT0中断。中断。3、IP中断优先级寄存器中断优先级寄存器 B8H D7 D6 D5 D4 D3 D2 D1 D0PT2PSPT1PX1PT0PX00 低级别,低级别,1高级别高级别T0T1串行口串行口 当当 某几个中断源在某几个中断源在IP寄存器相应位同为寄存器相应位同为1或同为零或同为零时,由内部查询确定优先级,查询的顺序是:时,由内部查询确定优先级,查询的顺序是:CPU优先响应优先响应 先查询的中断请求先查询的中断请求T2INT0INT1 五个中断源的优先级别由五个中断源的优先级别由IP寄存器管理,相应位置寄存器管理,相应位置1,则该
7、,则该中断源优先级别高,置中断源优先级别高,置0的优先级的优先级 别低。别低。中断系统结构中断系统结构IE0IE0EX0EX0TF0TF0IE1IE1TF1TF1TITIESESET1ET1EX1EX1ET0ET0RIRIIPIP硬件查询硬件查询高级中高级中断请求断请求低级中低级中断请求断请求中断源中断源INT0INT0INT1INT1中断入中断入口地址口地址中断源中断源1 10 0IEIEPX0PX0PSPSPT1PT1PX1PX1PT0PT01 11 11 11 11 11 11 11 11 11 10 00 00 00 00 0EAEA1 111SCONSCON1 11 1T0T0T1T
8、1RXRXTXTXIT0IT0IT1IT10 00 0TCONTCON中断入中断入口地址口地址自然优先级自然优先级源允许源允许 总允许总允许优先级优先级二、中断执行流程二、中断执行流程N NN NY YY YY YN N执执 行行 指指 令令中断标志中断标志1?1?(中断请求中断请求?)?)指令指令最后一个最后一个T T周期周期?EA=1?EA=1?允允 许许 位位 =1?=1?CPUCPU判别优先权判别优先权 ,响应优先权高的中断响应优先权高的中断断点的断点的PCPC进栈进栈,中断服务入口地址送中断服务入口地址送PCPC撤撤 除除 中中 断断 标标 志志RETIRETI中中 断断 返返 回回
9、,断断 点点 出出 栈栈 送送PC PC 中断请求中断请求中断响应中断响应中断服务中断服务中断返回中断返回中中 断断 服服 务务 中断服务程序按规定的中断矢量地址存入,中断服务程序按规定的中断矢量地址存入,由于五个中断矢量地址由于五个中断矢量地址0003H、000BH、0013H、001BH、0023H之间相距很近,往往装之间相距很近,往往装不下一个中断服务程序,通常将中断服务程不下一个中断服务程序,通常将中断服务程序安排在程序存贮器的其他地址空间,而在序安排在程序存贮器的其他地址空间,而在矢量地址的单元中安排一条转移指令。矢量地址的单元中安排一条转移指令。三、应用实例:中断程序的设计三、应用
10、实例:中断程序的设计 例例1.1.在下图中在下图中P1.4P1.4P1.7P1.7接有四个发光二极接有四个发光二极管,管,P1.0P1.0P1.3P1.3接四个开关,消抖电路产生接四个开关,消抖电路产生中断请求信号,当消抖电路的开关来回拔动中断请求信号,当消抖电路的开关来回拔动一次产生一个下降沿信号,通过一次产生一个下降沿信号,通过INT0INT0向向CPUCPU申申请中断。请中断。要求:要求:初时发光二极管全灭,每中初时发光二极管全灭,每中断一次,断一次,P1.0P1.3所接的所接的开关状态反映到发光二极管开关状态反映到发光二极管上,且要求开关断开的对应上,且要求开关断开的对应发光二极管亮发
11、光二极管亮 程序:程序:ORG 0000H ORG 0000H AJMP MAIN AJMP MAIN ORG 0003H ORG 0003H ;INT0INT0中断入口中断入口 AJMP SER1 AJMP SER1 ;转中断服务程序;转中断服务程序 ORG 0030H ORG 0030H ;主程序;主程序 MAIN:MOV P1MAIN:MOV P1,#0FH#0FH ;高;高4 4位灯灭,低四位输入写位灯灭,低四位输入写1 1 SETB IT0 SETB IT0 ;边沿触发中断;边沿触发中断 SETB EX0 SETB EX0 ;允许外中断;允许外中断0 0中断中断 SETB EA SE
12、TB EA ;开中断开关;开中断开关 SJMP$SJMP$;等待中断;等待中断 ORG 0050H ORG 0050H SER1SER1:MOV P1MOV P1,#0FH#0FH ;P1P1先写入先写入“1 1”且灯灭且灯灭 MOV AMOV A,P1 P1 ;输入开关状态换到高;输入开关状态换到高4 4位位 SWAP A SWAP A ;低;低4 4位开关状态电平位开关状态电平 MOV P1MOV P1,A A ;输出到;输出到P1P1高高4 4位位 RETI RETI END END 中中断断服服务务例例2 2.A AT T8 89 9S S5 51 1的的P P1 1口口接接一一个个共
13、共阴阴极极的的数数码码管管,利利用用消消抖抖开开关关产产生生中中断断请请求求信信号号,每每来来回回拔拔动动一一次次开开关关,产产生生一一次次中中断断,用用数数码码管管显显示示中中断断的的次次 数数(最最 多多1 1 5 5次次,十十 六六 进进 制制 数数 显显 示示)。P1.1P1.189S5189S51P1.0P1.0P1.2P1.2P1.4P1.4P1.3P1.3P1.5P1.5P1.6P1.6&1K 21K 2INT1INT1驱驱动动器器+5V+5Va ag gEAEA ORG 0000H ORG 0000H AJMP MAIN AJMP MAIN ORG 0013H ORG 0013
14、H ;INT1INT1中断入口中断入口 AJMP INT1 AJMP INT1 ;转中断服务程序;转中断服务程序 ORG 0030H ORG 0030H ;主程序;主程序 MAINMAIN:SETB IT1 SETB IT1 ;边沿触发中断;边沿触发中断 SETB EX1 SETB EX1 ;允许;允许INT1INT1中断中断 SETB EA SETB EA ;开中断开关;开中断开关 MOV R0MOV R0,#0#0 ;计数初值为;计数初值为0 0 MOV A MOV A,#3FH#3FH ;“0 0”的字形码送的字形码送A A AL1AL1:MOV P1MOV P1,A A ;显示数码;显
15、示数码 AL2AL2:CJNE R0CJNE R0,#0FH#0FH,AL1 AL1 ;没满;没满1515次循环显示次循环显示 MOV R7MOV R7,#0FFH#0FFH ;满;满1515次,显次,显F F DJNZ R7 DJNZ R7,MOV P1MOV P1,#0#0 ;关显示;关显示 CLR EA CLR EA ;关中断;关中断 SJMP SJMP ;结束;结束 INT1INT1:INC R0 INC R0 ;中断次数加;中断次数加1 1 MOV A MOV A,R0 R0 MOV DPTR MOV DPTR,TAB TAB ;DPTRDPTR指向字形码表首址指向字形码表首址 MO
16、VC AMOVC A,A+DPTR A+DPTR ;查表;查表 POP DPH POP DPH POP DPL POP DPL ;弹出断点;弹出断点 MOV DPTRMOV DPTR,#AL1#AL1 PUSH DPL PUSH DPL PUSH DPH PUSH DPH ;修改中断返回点,;修改中断返回点,AL1AL1压入堆栈压入堆栈 RETI RETI ;AL1AL1地址地址PCPC,返主程序,返主程序ALAL处处 TABTAB:DB 3FHDB 3FH,06H06H,5BH5BH,4FH4FH,66H66H,6DH6DH DB 7DH DB 7DH,07H07H,7FH7FH,6FH6F
17、H,77H77H,7CH7CH DB 39H DB 39H,5EH5EH,79H79H,71H 71H ;字形码表;字形码表 END END 上面程序每中断一次,执行一次中断服务程序上面程序每中断一次,执行一次中断服务程序INT1。在中断服务程序中,累计中断次数并在中断服务程序中,累计中断次数并 查字形查字形表,返回到主程序表,返回到主程序AL1地址执行显示。地址执行显示。将上面程序重排在同一页将上面程序重排在同一页:ORG 0000H ORG 0000H AJMP MAIN AJMP MAIN ORG 0013H ORG 0013H AJMP INT1 AJMP INT1 ORG 0030H
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机原理及应用 单片机 原理 应用 课件 中断 模块 结构