《单片机原理与实用技术》第6章.ppt

上传人:xin****828 文档编号:15482606 上传时间:2020-08-12 格式:PPT 页数:39 大小:396.50KB
收藏 版权申诉 举报 下载
《单片机原理与实用技术》第6章.ppt_第1页
第1页 / 共39页
《单片机原理与实用技术》第6章.ppt_第2页
第2页 / 共39页
《单片机原理与实用技术》第6章.ppt_第3页
第3页 / 共39页
资源描述:

《《单片机原理与实用技术》第6章.ppt》由会员分享,可在线阅读,更多相关《《单片机原理与实用技术》第6章.ppt(39页珍藏版)》请在装配图网上搜索。

1、第6章中断系统,莫海霞付晓光制作,6.1中断系统概述 6.1.1 中断的概念,所谓中断,就是打断正在进行的工作,转而去处理另外一种较紧急的事情,处理完毕后再转回来继续原来的工作。,1.实时控制 利用中断技术,各被控对象可根据需要随时向CPU发出中断申请,CPU根据情况及时处理,实现实时控制的需要。,2.分时操作 利用中断功能,CPU可以同进为多个对象服务,只有服务对象向CPU发出中断申请时,CPU才转而为之服务,这样大大提高了CPU的效率。,3.进行故障处理 对难以预料的情况或故障,如掉电、运算溢出、事故等,可以由故障向CPU请求中断。,6.1.2 中断源与为断优先级,1.中断源与中断请求信号

2、 引发中断的原因,或向CPU发出中断请求的来源称之为中断源。 外中断的电平方式中断请求是低电平有效。 外中断脉冲方式是脉冲的后沿负跳有效。,2.中断优先级 计算机系统中通常有多个中断源,它们的中断请求是随机提出的,有时会出现多个中断源同时提出中断请求的情况,即多中断源并发。,中断优先级控制原则是: 当多个中断源同时申请中断时,CPU首先响应优先级最高的中断请求,在优先级最高的中断处理完以后,再响应级别较低的中断。 当CPU正在处理中断时,若出现更高级的中断请求,CPU暂停正进行的中断处理程序,转去处理更高优先级的中断处理,处理完毕后再回到原中断程序。这种现象称中断嵌套。 当CPU正在处理中断时

3、,较低级别的或同级的中断服务被禁止。 当同级的多个中断请求同时出现时,则按CPU查询次序确定那个中断请求被响应。 查询次序为: 外部中断0定时中断0外部中断1定时中断1 串行中断,6.2 中断控制,向控制寄存器写入的内容称控制字,写入控制字的过程称初始化,而这些可以通过初始化写入控制字的端口、接口称可编程端口、接口。 定时控制寄存器、中断允许控制寄存器、中断优先控制寄存器以及串行口控制寄存器。,6.2.1 断源请示标志与请求方式控制,1.定时器控制中断寄存器(TCON) 寄存器地址为88H,位地址8FH88H。与中断有关的位如下:,2.串行控制寄存器(SCON) 该寄存器地址98H,位地址9F

4、H98H。各位名称如下:,(1)TI为串行口发送中断请求标志位; (2)RI为串行口接收中断请求标志位 。,6.2.2中断允许控制,MCS-51对中断请求源的开放式屏蔽是由中断允许寄存器IE控制的。IE寄存器地址为0A8H,位地址0AFH0A8H。,各位含义如下: (1)EA为中断允许总控制位。 当EA0时,中断总禁止,屏蔽所有中断请求; 当EA1时,中断总允许,CPU开放中断,对各中断的中断申请是否允许,还要取决于各中断源的中断允许控制状态。 (2)EX0和EX1为外部中断允许控制位。 当EX0(EX1)0时,禁止外中断0(外中断0); 当EX0(EX1)1时,允许外中断0(外中断1)。 (

5、3)ET0和ET1为定时/计数中断允许控制位。 当ET0(ET1)0时,禁止定时/计数中断; 当ET0(ET1)1时,允许定时/计数中断。 (4)ES串行中断允许控制位。 当ES0时,禁止串行中断; 当ES1时,允许串行中断。,6.2.3中断优先级控制,MCS-51单片机中5个中断的优先级别由中断优先控制器IP进行设定。IP寄存器地址为0BFH0B8H。,(1)PX0和PX1外部中断0和1优先设定位 (2)PT0和PT1定时中断0和1优先设定位 (3)PS串行中断优先级设定位 当为“0”时,该位优先级低;为“1”时该位优先级高。,图6-2MCS-51单片机中断系统,用户在使用中断时需要先通过设

6、置以上寄存器以确定:中断方式、中断总允许、中断分允许、优先级等级,称中断初始化。如我们要使用外部中断0,则需要做以下工作: SETB IT0 (CLR IT0 ) ;设外中断0为脉冲 (电平)触发方式 SETB PX0 ;设外中断0为高优先级 SETB EA ;开中断总允许 SETB EX0 ;开外中断0,6.3 中断响应6.3.1 中断响应,中断请求被CPU接受称中断响应。,1.中断响应条件 CPU响应中断必须满足以下条件: 有中断源提出中断请求; 该中断未被屏蔽; 无同级或高一级中断正在处理中; 执行完当前指令,若当前指令为返回指令RET、IRET或访问IE、IP的指令,CPU须在执行完当

7、前指令后,再继续执行一条指令,然后才响应中断。,2.中断响应过程 CPU响应中断的过程如下: 中断源发出中断申请,相应中断标志位置位; 封锁同级和低级中断,自动清除中断标志; 将程序计数器PC的内容压入堆栈,并产生长调用指令LCALL,根据不同的中断源,把程序的执行转到相应的中断程序入口,各中断的入口地址如下表6-1所示; 执行中断服务程序; 当执行到RETI指令时,从堆栈中弹出栈顶的两个字节到程序计数器PC,CPU从原来的断点处重新执行被中断的程序,即中断返回。,2.中断响应过程 CPU响应中断的过程如下: 中断源发出中断申请,相应中断标志位置位; 封锁同级和低级中断,自动清除中断标志; 将

8、程序计数器PC的内容压入堆栈,并产生长调用指令LCALL,根据不同的中断源,把程序的执行转到相应的中断程序入口,各中断的入口地址如下表所示; 执行中断服务程序; 当执行到RETI指令时,从堆栈中弹出栈顶的两个字节到程序计数器PC,CPU从原来的断点处重新执行被中断的程序,即中断返回。,3. 中断响应时间 从中断响应条件的最后一条和中断响应过程可知中断的最短时间和最长时间。 最短时间为了3个机器周期。若在执行一条指令的最后一个周期CPU查询到中断标志。不需等待,紧接响应中断执行长调用指令LCALL需要2个机器周期,加上查询的一个机器周期,共3个机器周期。 最长的时间是8个机器周期,若查询到中断标

9、志位时正好是执行RET、RETI或者访问IE或IP指令的第一个机器周期,则需再执行一条指令才能响应。而若再执行的一条指令是最长时间的机器周期MUL或DIV指令,而有的访问IE或IP指令是双机器周期指令,再加上LCALL的两个机器周期,共8个机器周期。 一般情况下,中断响应时间在38个机器周期,若已知单片机晶振频率,可计算出绝对时间。 在一般情况下,中断响应时间无需考虑,只有在精确定时的应用场合才要精确计算。,4.中断请求的撤除 (1)中断请求标志位的清除; (2)中断请求信号的撤除 。,6.3.2中断程序设计,1.中断初始化程序 中断初始化内容主要包括:通过设置TCON、SCON、IE、IP等

10、特殊功能寄存器以选择中断触发方式,开中断设置、中断优先等级。 2.中断服务程序 (1)中断处理程序的第一句常为跳转指令; (2)现场保护和现场恢复; (3)关中断和开中断; (4)中断处理程序最后一条指令必须是中断返回指令RETI。,解参照图6-5,程序如下: ORG 0000H AJMP MAIN ;转主程序 ORG 0003H ;过热中断处理程序(中断0) HOT:SETB P1.6 RETI ORG 0013H ;过冷中断处理程序(中断1) COOL:CLR P1.6 RETI ORG 0100H ;主程序 MAIN:SETB IT0 ;设置中断为脉冲触发方式 SETB IT1 SETB

11、 EX0 ;开外中断 SETB EX1 SETB EA ;开总中断允许 SJMP $ END,6.4 中断系统应用实例 6.4.1 CPU与外部设备的数据传送方式,1.无条件传送方式 这种条件下,CPU总认为外设处于准备好产状态,直接向外设输出数据,或从外设读入数据。例5-11所示的LED显示就是无条件传送方式, 当外设的传输反应速度与CPU一样迅速时,可以直接使用无条件传送方式。比如LED的输出。 大多数外设的速度较CPU慢得多,这时使用无条件传送方式交换数据时,要在输入/输出程序中加入延时指令。比如当CPU向速度较慢的外设输出数据时,每输出完一个数据,就要延时等待。延时时间要适中,时间太短

12、,会出现数据传输错误;时间太长,降低效率。,2.查询传送方式 查询方式就是在数据传送前,CPU先对外设状态进行查询,在确定外设准备好后才输出或输出数据。,3.中断传送方式 所谓中断传送方式,就是CPU在外设输出或输入数据的准备过程不理睬外设的工作,执行其它程序。,例6-2 将例5-3的门铃控制系统改用中断控制。,解按钮触发信号改与INT0相连,电路图如6-7所示。 程序如下: 主程序: MAIN: CLR IT0 MOV IE,81H SJMP (2)水温低时,风扇停转,水温报警灯灭;(3)燃油液面高度过低时,燃油报警灯亮;(4)润滑油面过低时,电喇叭鸣叫,润滑油指示灯。且该报警最优先; (5

13、)倒车时,倒车指示灯亮。,编程如下: ORG 0000H LJMP MAIN ORG 0003H ;润滑油面过低报警 SETB P1.4 SETB P1.3 RETI ORG 0013H LJMP INT ORG 1000H ;主程序 MAIN:ORL TCON,#00H ;中断初始化 MOV IE ,#85H SETB PX1 ;省略部分为电子控制 系统的其它功能部分 ORG 1100H JB P0.0 , INT0 ;查询中断源 JB P0.1 , INT1 JB P0.2 ,INT2 JB P0.3 ,INT3,CLR EA POP ACC ;恢复现场 POP PSW SETB EA R

14、ETI INT0: CLR EA ;水温过热报警 SETB P1.0 SETB P1.5 SETB EA RETI INT1:CLR EA ;水温过冷 CLR P1.0 CLR P1.5 SETB EA RETI INT2: CLR EA ;燃油液面过低报警 SETB P1.1 SETB EA RETI INT3:CLR EA ;倒车报警 SETB P1.2 SETB EA RET END,2使用优先编码器扩展外中断源,图6-10 74LS148扩展外部中断电路图,6.4.3 键盘控制LED显示电路,程序如下: ORG 0000H SJMP MAIN ORG 0003H SJMP INT0 O

15、RG 30H MAIN:SETB EA ;总中断允许 SETB EX0 ;外中断0允许 MOV DPTR,TAB ;显示编码首址 AGAIN:CLR A MOV R7,#10 ;09共10个数 CON:MOVC A,A+DPTR ;查表取编码 MOV P1,A ACALL DELAY ;延时 INC A DJNE R7 CON ;循环显示 SJMP AGAIN ;重新循环 ORG 80H INT0:CLR EA ;关中断 PUSH A ;现场保护,PUSH R7 SETB EA ;开中断 MOV P0,#0FFH MOV A,P0 ;取数 MOV R0,#0FFH GOON: RLC A ;查

16、询键入 INC R0 JNC GOON MOV A,R0 MOVC A,A+DPTR MOV P1,A ;显示 DEL:MOV R7,#10 ACALL DELAY DJNE R7,DEL CLR EA ;关中断 POP R7 ;中断恢复 POP A SETB EA ;开中断 RETI ;中断返回 DELAY: ;1秒延时程序(略) TAB:DB ;字符显示码表(略) END,6.4.4 MCS-51的单步工作方式 及断点工作方式,2.断点工作方式 所谓断点工作方式就是计算机执行程序到某一指令时停止,以供程序员检查,该处称断点。待外来脉冲触发后再继续执行。断点工作方式设置方法如下: 设置断点 在程序中将外中断设计为脉冲触发方式,并开放外中断,在需要断开处使用软件方法将某一外中断标志位设置为“1”,人为地产生中断。如SETB、IE0,将中断程序设计为判断循环程序如下: JB P1.0 ,$ RET 设置外触发信号装置 根据中的语句,将断点触 发电路与P1.0输入端相连, 如图6-13所示,当按下按键 后,P1.0引脚为低电平,中 断程序执行完毕,向断点继 续执行原程序。,

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!