版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、中断基本概念中断源及入口地址各SFR的结构、控制作用和设置方法中断响应过程中断应用程序的编写2021年年12月月19日日中断的概念:n中断,中断系统,中断源,主程序,中断服务子程序,断点。n中断服务程序与调用子程序之区别中断技术的优点n分时操作n实时处理n故障处理中断系统的功能n实现中断及返回:中断源,中断请求,中断允许,中断响应,中断返回。n实现优先权排队:当两个或两个以上的中断源同时提出中断请求时,计算机按优先级高低逐次响应的过程称为优先级排队。n实现中断嵌套:在响应某一中断、进行中断处理过程中,能够响应优先级更高的中断源发出的中断请求。5个中断请求源n2个外部中断源: INT0、INT1
2、n3个内部中断源:w片内定时器/计数器T0、T1的溢出中断源;w串行口的发送/接收中断4个与中断有关的特殊功能寄存器中断请求:n定时和外中断控制寄存器 TCON、串行控制寄存器 SCON;n中断允许控制寄存器 IE;n中断优先级控制寄存器 IP;中断入口地址和硬件查询电路等2021年年12月月19日日定时和外中断控制寄存器TCON串行控制寄存器SCON2021年年12月月19日日TF1TR1TF0TR0IE1IT1IE0IT0SM0SM1SM2RENTB8RB8TIRI寄存器地址为88H,位地址为8FH88H。nTF1:T1的溢出中断标志。由硬件置1/清0(也可软件清0)。nTF0:T0的溢出
3、中断标志。(同TF1,只是针对T0的)nIE1:外部中断1(/INT1)请求标志。外部有中断请求时,硬件使IE1置1,硬件清0。nIE0:外部中断0(/INT0)请求标志。nIT1:外部中断1(/INT1)触发类型控制位。IT1 = 0 ,低电平触发。IT1 = 1 , 下降沿触发。nIT0:外中断0(/INT0)触发类型控制位,用法同IT1。2021年年12月月19日日TF1TR1TF0TR0IE1IT1IE0IT0寄存器地址为98H,位地址为9FH98H。TI : 串口发送中断标志位。发送完数据,硬件使TI置1,软件清0(CLR TI)RI : 串行口接收中断标志位。硬件置1,软件清0。2
4、021年年12月月19日日SM0SM1SM2RENTB8RB8TIRI中断允许寄存器IE控制中断的开放或屏蔽中断优先级寄存器IP决定中断优先级2021年年12月月19日日EA-ET2ESET1EX1ET0EX01:CPU开放中断 T2 SIO T1 INT1 T0 INT00:屏蔽所有中断1:允许中断,0:禁止中断-PT2PSPT1PX1PT0PX0T2 SIO T1 INT1 T0 INT01:高优先级,0:低优先级寄存器地址为A8H,位地址为AFHA8H。nEA:中断允许总控制位,EA=1,CPU开放中断。EA=0,CPU禁止所有中断。nES:串行中断允许控制位,ES=1允许串行口中断,E
5、S=0,屏蔽串行口中断。nET1:定时/计数器T1中断允许控制位。ET1=1,允许T1中断,ET1=0,禁止T1中断。nEX1:外中断1允许控制位,EX1=1,允许外中断1中断,EX1=0,禁止外中断1中断。nET0:定时/计数器T0中断控制位。ET1=1,允许T0中断,ET1=0,禁止T0中断。nEX0:外中断0允许控制位,EX1=1,允许外中断0中断,EX1=0,禁止外中断0中断。2021年年12月月19日日EA-ET2ESET1EX1ET0EX0控制字的理解IE=93H,IE=84H,IE=92H,IE=17H?初始化:允许/INT0和T1中断?INT0为边沿触发方式:SETB IT0I
6、NT1为电平触发方式:CLR IT1INT1 为高优先级: SETB PX1允许INT1 中断: SETB EX1 SETB EA2021年年12月月19日日INT1、T0开中断,其余禁中断:MOV IE,#86HT1、串口开中断,其余禁中断: MOV IE,#98H全部开中断:MOV IE,#0FFH全部禁中断:MOV IE,#00H 或 CLR EA INT0、T0开中断,其余保持不变: ORL IE,#83HINT1、T1开中断,其余禁中断:ANL IE,#8CH2021年年12月月19日日寄存器地址为B8H,位地址为BFHB8H。nPS:串行口中断口优先级控制位,PS=1,串口定义为高
7、优先级中断,PS=0,串口定义为低优先级中断。nPT1:定时器1优先级控制位。PT1=1,声明定时器1为高优先级中断,PT1=0定义定时器1为低优先级中断。nPX1:外中断1优先级控制位。PT1=1,声明外中断1为高优先级中断,PX1=0定义外中断1为低优先级中断。nPT0:定时器0优先级控制位。PT1=1,声明定时器0为高优先级中断,PT1=0定义定时器0为低优先级中断。nPX0:外中断0优先级控制位。PT1=1,声明外中断0为高优先级中断,PX1=0定义外中断0为低优先级中断。2021年年12月月19日日-PT2PSPT1PX1PT0PX0高优先级可以中断低优先级。同优先级中断不能互相中断
8、。同级的多个中断请求出现,按CPU查询次序确定哪个请求被响应。查询次序由高到低依次为: /INT0中断 T0中断 /INT1中断 T1中断 串口中断例: IP=06H,如果5个中断请求同时发生,求中断响应的次序。2021年年12月月19日日控制位是用来设置各种工作方式的,通过编程写入( 如IT1, IT0,EX0等)。标志位是系统运行时自动形成的标志,可供程序运行时查询(如IE1,IE0,TF1,TF0等)。3个阶段:中断响应、中断处理和中断返回。一、中断响应1.中断响应条件1)有中断源发出中断请求; 2)中断总允许位EA1,即CPU开中断; 3)相应的中断允许位为1,即没有屏蔽。4)不存在中
9、断响应阻断,包括:CPU未执行完一条指令,有同级或高级中断服务,正在执行RETI或是对IE、IP的写操作指令。2.中断响应过程1)置优先级状态触发器。2)清0中断请求源申请标志。3)将程序计数器的内容(断点地址)压入堆栈。4)将被响应的中断服务程序的入口地址送程序计数器PC。MCS-51机中,各中断源及与之对应的入口地址分配如下:各入口地址之间只相隔8个字节,一般的中断服务程序容纳不下。实际使用时,通常在这些入口地址处存放一条绝对跳转指令,使程序跳转到用户安排的中断服务程序起始地址上去。2021年年12月月19日日中断源中断源入口地址入口地址外部中断外部中断0 00003H0003H定时器定时
10、器T T0 0中断中断000BH000BH外部中断外部中断1 10013H0013H定时器定时器T T1 1中断中断001BH001BH串行口中断串行口中断0023H0023H主程序需要让出中断源所占用的向量地址。ORG 0000HLJMP STARTORG 0030H START:XXXXXX;主程序开始程序中没用中断时,直接从0000H开始写程序,在原理上并没有错,但在实际工作中最好不这样做。 2021年年12月月19日日ORG 0000HLJMP STARTORG 0003HLJMP INT0 ;转外中断0ORG 000BH RETI ;没有用定时器0中断,也可在此放一条RETIORG
11、0030HSTART:XXXXXXX ;主程序从这里开始了,包括 ;功能模块及中断的初始化等 SJMP $INT0: XXXXXXX ;中断服务程序从这里开始 END ;源程序结束2021年年12月月19日日如果中断响应条件满足,CPU自动把断点地址压入堆栈,给出中断入口地址,程序计数器PC自动装入中断入口地址,执行相应的中断服务程序。保护现场,为了使中断处理不影响主程序的运行,需要把断点处有关寄存器的内容和标志位的状态压入堆栈区进行保护。现场保护要在中断服务程序开始处通过编程实现。处理中断源的请求,执行相应的中断服务。恢复现场。在中断服务结束之后、返回主程序之前,把保存在堆栈区的现场数据从堆
12、栈区弹出,送回原来的位置。恢复现场也需要通过编程实现。中断返回。执行中断返回指令RETI,n清除优先级状态触发器n将堆栈内保存的断点地址弹给PC,程序则恢复到中断前的位置CPU响应某中断请求后,TCON或SCON中的中断请求标志应及时清除,否则会引起另一次中断:n定时器/计数器的中断和边沿触发的外部中断:CPU在响应器中断后,硬件会自动清除有关的中断请求。n串行口中断:必须在中断服务程序中用软件的方法清除(即写一条清除的指令)。n电平触发的外部中断:由于引起中断的低电平信号在外部引脚上,需要做特殊处理2021年年12月月19日日对于电平触发的外部中断,CPU响应中断后,虽然由硬件清除了相应的标
13、志位,但不能对外部引脚上的电平进行处理。外部引脚上低电平的存在,会造成重复中断。可以在电路上增加对外部引起中断的信号进行处理。nP148图7-5。通过I/O口输出一个信号,使得外部引脚上的中断请求信号变为高电平。中断程序一般包含有两个部分:n主程序中的中断初始化。n实现中断操作任务的中断服务程序。2021年年12月月19日日中断入口地址中断入口地址转跳转跳开中断开中断中断初始化中断初始化中断转向中断转向ORGORGxxxxH xxxxH ; ;中断入口地址中断入口地址LJMPLJMPINTSEVINTSEV ; ;中断入口转跳中断入口转跳IEIE、IPIP、TCONTCON、SCONSCON、
14、TMODTMOD等等特殊功能寄存器的设置特殊功能寄存器的设置,及其它及其它必要的设置必要的设置。INTSEVINTSEV: :; ;中断服务程序中断服务程序RETIRETI; ;中断返回中断返回中断初始化:用户对中断控制的相关特殊功能寄存器中的各有关控制位进行赋值。基本步骤:n开中断:置位相应中断源的中断允许标志及EA。n设定所用中断源的中断优先级。n对外部中断应设定中断请求信号形式(电平触发/脉冲下降沿触发)。对于定时/计数中断应设置工作方式(定时/计数)。初始化相应中断源所对应的功能模块n定时器/串行口的设置注:在主程序中任何地点都可设置中断初始化。只有在中断初始化开中断后,有中断源请求中
15、断时才响应中断,将程序转移到该中断源的入口地址处,进入中断服务操作。2021年年12月月19日日主要任务:保护现场,处理中断请求,恢复现场,中断返回n将ACC、PSW及与主程序有关的寄存器入栈n处理相关事件,中断要实现的主要功能n出栈nRETICLREA;关中断PUSH PSW ;保护现场PUSH ASETB EA;开中断,允许CPU响应高级中断 ;服务程序CLREA;关中断,如果没有高级中断斜体部分不要。POP A ;恢复现场POP PSWSETB EA;开中断RETI;中断返回2021年年12月月19日日各中断源的入口矢量地址之间,相隔8个单元,通常是在中断入口矢量地址单元处存放一条无条件转移指令,转至存储器其他的任何空间去执行中断服务程序。若要在执行当前中断程序时禁止更高优先级中断,应用软件关闭CPU中断,或屏蔽更高级中断源的中断,在中断返回前再开放中断。在保护现场和恢复现场时,为了不使现场信息受到破坏或造成混乱,一般应关CPU中断,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025企业期权合同模板
- 2025标准的粮食采购合同
- 二零二五年度房产抵押贷款信用评级合同3篇
- 收购合同范文5篇
- 【生物课件】 免疫组化基本技术
- 动物传染病五、结核病
- 2025版瑜伽馆线上课程直播合作协议3篇
- 二零二五年度城乡实体地域划分与新型城镇化建设合同3篇
- 二零二五年度房产车辆买卖与子女未来权益保障合同3篇
- 二零二五年度农业项目担保合作合同协议书范本23篇
- 艺术漆培训课件
- 建德海螺二期施工组织设计
- 山东省菏泽市2023-2024学年高一上学期期末测试物理试题(解析版)
- 2024年学校后勤日用品采购合同范本2篇
- 中建中建机电工程联动调试实施方案范本
- 新《安全生产法》安全培训
- 山东省济南市2023-2024学年高一上学期1月期末考试 物理 含答案
- 中华人民共和国安全生产法知识培训
- 上海教育出版社 艺术 八年级上册第三单元 乡音乡韵 京腔京韵系乡情 教学设计
- 人教版(2024新教材)七年级上册数学第一章《有理数》单元测试卷(含答案)
- 《色彩基础知识》PPT课件(详解)
评论
0/150
提交评论