收藏 分销(赏)

项目四--MCS–51中断应用——报警器设计.pptx

上传人:天**** 文档编号:11064206 上传时间:2025-06-30 格式:PPTX 页数:36 大小:3.22MB 下载积分:12 金币
下载 相关 举报
项目四--MCS–51中断应用——报警器设计.pptx_第1页
第1页 / 共36页
项目四--MCS–51中断应用——报警器设计.pptx_第2页
第2页 / 共36页


点击查看更多>>
资源描述
,#,单片机原理及,应用技术,MCS,51,中断应用,报警器设计,任务一 中断入门,任务二 中断处理过程,任务三 典型应用,报警器设计,Project,任务,1,中断,入门,中断的基本原理,one,与生活中的“,中断,”现象相似,单片机的中断是指在正常执行某一程序过程中,由于内部或外部的突发事件,,CPU,暂停执行此程序而转去处理突发事件(即,执行突发事件的中断服务程序,),事件处理结束后返回主程序断点处(被中断的下一条指令)继续执行。中断处理过程如图所示。,生活中我们常常遇到这样的事情,正在书房看书的时候,厨房里烧的水开了,接下来我们会将书签放置到读到的位置,然后去厨房处理开水,回到书房时从夹书签的位置开始继续阅读。,中断的好处,two,采用中断技术可以提高单片机的性能,主要表现在以下方面:,实现分时操作,只有当服务对象向,CPU,发出中断申请时,才去为它服务,这样单片机可以同时为多个对象服务,从而大大提高工作效率。,实现实时处理,利用中断技术,各个服务对象可以根据需要随时向,CPU,发出中断申请,及时发现和处理中断请求并为之服务,以满足实时控制的要求。,进行故障处理,发生难以预料的情况或故障时,例如突然断电、存储出错、运算溢出等,系统及时发出请求中断,由,CPU,快速作出相应的处理,可以提高系统自身的可靠性。,one,two,three,four,INT0,:外部中断,由引脚,P3.2,引入中断请求,INT1,:外部中断,由引脚,P3.3,引入中断请求,five,定时计数器,T0,:内部中断,定时计数器,0,溢出时发出中断请求,定时计数器,T1,:内部中断,定时计数器,1,溢出时发出中断请求,串行口中断,:内部中断,包括串行接收中断,RI,和串行发送中断,TI,中断源,three,向,CPU,发出中断请求的信号称为中断源。在项目二任务一中我们已经了解到,MCS-51,系列单片机中有,5,个中断源,其中,2,个外部中断源,,3,个内部中断源,具体如下:,中断控制寄存器,five,MCS-51,系列单片机的中断系统结构图,由图可以看出,中断系统中涉及,TCON,、,SCON,、,IE,以及,IP,四个特殊功能寄存器,它们主要有以下功能:,锁存中断请求标志,TCON,和,SCON,锁存各中断源的中断请求标志位,中断允许寄存器,IE,控制,CPU,是否响应中断源的请求,中断优先级寄存器,IP,设置各中断源的优先级,每个中断源可编程为高优先级中断或低优先级中断。,1,、,TCON,中的中断标志位,TCON,的字节地址为,88H,,可进行位寻址,其具体的结构、位名称、位地址以及功能如表所示。,TCON,D7,D6,D5,D4,D3,D2,D1,D0,位名称,TF1,TR1,TF0,TR0,IE1,IT1,IE0,IT0,位地址,8FH,8EH,8DH,8CH,8BH,8AH,89H,88H,功能,用于定时,/,计数器,用于中断,02,01,03,IT0,(,D0,位),外部中断,INT0,的请求标志位。,当,CPU,检测到外部中断请求时,该标志位置“,1,”,当,CPU,转向中断处理子程序时,由硬件自动清“,0,”(只适用于边沿触发方式),外部中断,INT0,的触发方式控制位,由软件进行置“,1,”和清“,0,”,。,IT0=1,时,为边沿触发方式(即当引脚,P3.2,出现下降沿脉冲信号时,中断请求有效);,IT0=0,时,为电平触发方式(即当引脚,P3.2,为低电平信号时,中断请求有效)。,IT1,(,D2,位)和,IE1,(,D3,位),外部中断,INT1,的触发方式控制位和请求标志位,,其含义与,IT0,和,IE0,相同。,IE0,(,D1,位),注意,在电平触发方式中,,CPU,转向中断处理子程序时,不能自动清除,IE,标志位,也不能由软件进行清除。所以在中断返回前需撤销引脚上的低电平,否则就会产生,CPU,多次响应一次中断的错误。,05,04,06,TR0,(,D4,位),定时计数器,T0,的中断溢出标志位。,定时器作加,1,计数,当最高位产生进位时,定时器计数溢出,此时,由硬件置位,TF0=1,,,CPU,响应中断后,由硬件清“,0,”,,TF0=0,。,定时计数器,T0,的启动停止标志位,由用户编程确定,。,TR0=1,时,定时器开始计数(即从设定的初值作加,1,计数);,TR0=0,时,定时器停止。,TR1,(,D6,位)和,TF1,(,D7,位),定时计数器,T1,的启动停止标志位和中断溢出标志位,,其含义与,TR0,和,TF0,相同。,TF0,(,D5,位),2,、,SCON,中的中断标志位,SCON,的字节地址为,98H,,可进行位寻址,其具体的结构、位名称、位地址以及功能如表所示。,SCON,D7,D6,D5,D4,D3,D2,D1,D0,位名称,SM0,SM1,SM2,REN,TB8,RB8,TI,RI,位地址,9FH,9EH,9DH,9CH,9BH,9AH,99H,98H,功能,用于串行通信,控制串行口中断,T1,RT1,SCON,中的中断标志位,串行口接收中断标志位,当串行口接收到一帧数据时,,RI,置,1,,,CPU,响应中断后,硬件不能自动清除,RI,,需要由软件清“,0,”。,串行口发送中断标志位,当串行口发送一帧数据时,,T1,置,1,,,CPU,响应中断后,硬件不能自动清除,RI,,同样需要由软件清“,0,”。,提示,RI,和,TI,通过一个或门向,CPU,发中断请求,,CPU,响应中断请求后,首先需要判断是,RI,和,TI,哪一个中断源发出的请求,才能去执行相应的中断子程序。,串行中断的有关内容以及,SCON,中的其他标志位含义将在项目六中进行详细讲述。,3,、中断允许控制寄存器,IE,IE,控制所有中断源的,开放,和,屏蔽,,字节地址为,A8H,,可进行位寻址,其具体的结构、位名称、位地址以及控制的相应中断源如表所示。,IE,D7,D6,D5,D4,D3,D2,D1,D0,位名称,EA,ES,ET1,EX1,ET0,EX0,位地址,AFH,AEH,ADH,ACH,ABH,AAH,A9H,A8H,中断源,CPU,串行口,T1,INT1,T0,INT0,EX0,外部中断,INT0,的中断允许控制位。,EX0=1,时,,INT0,开中断;,EX0=0,时,,INT0,关中断。,ET0,定时计数器,T0,中断允许控制位。,ET0=1,时,,T0,开中断;,ET0=0,时,,T0,关中断。,EX1,外部中断,INT1,的中断允许控制位。,EX1=1,时,,INT1,开中断;,EX1=0,时,,INT1,关中断。,ET1,定时计数器,T1,中断允许控制位。,ET0=1,时,,T1,开中断;,ET0=0,时,,T1,关中断。,ES,串行口中断允许控制位。,ES=1,时,串行口开中断;,ES=0,时,串行口关中断。,EA,CPU,中断允许控制位。,EA=1,时,,CPU,全部开中断;,EA=0,时,,CPU,全部关中断。,注意,CPU,复位时,,IE,各位清,0,,禁止所有中断。,4,、中断优先级控制寄存器,IP,MCS-51,单片机中有两个中断优先级,,中断优先级控制寄存器,IP,用来定义每个中断源的中断优先级,。,IP,的状态由用户来设定,某位为,1,,则相应的中断源处于高优先级中断;某位为,0,,则相应的中断源处于低优先级中断。,IP,的结构、位名称、位地址以及控制的中断源如表所示。,IP,D7,D6,D5,D4,D3,D2,D1,D0,位名称,PS,PT1,PX1,PT0,PX0,位地址,BFH,BEH,BDH,BCH,BBH,BAH,B9H,B8H,中断源,串行口,T1,INT1,T0,INT0,注意,单片机复位时,,IP,各位清,0,,各中断源处于低优先级中断。,任务,2,中断,处理,过程,Y,N,N,Y,中断返回,有中断请求?,恢复现场,执行指令,保护现场,中断服务,满足响应条件?,中断处理过程,如图所示,单片机工作时,在每个机器周期中都去查询各个中断标记位,,如果某位是“,1,”,就说明有中断请求了,;,接下来需要判断中断请求是否满足响应条件,;,如果满足响应条件,,CPU,将进行相应的中断处理,;,中断处理完毕,进行中断返回,继续执行指令,。,如果本次查询中没有中断请求或中断请求不能满足响应条件,,CPU,将继续原来的指令执行操作。,中断响应,one,CPU,检测到中断请求后,需要判断此中断请求是否满足响应条件,,中断响应条件,如下:,CPU,开中断,申请中断请求的中断源开中断。,one,没有响应同级别或更高级别的中断。,two,当前处在所执行指令的最后一个周期。单片机有单周期指令、双周期指令、三周期指令和两个四周期指令,如果正在执行的是多字节指令,需要等整条指令执行结束,才能响应中断。,three,如果正执行的指令是返回指令(,RETI,)或访问,IP,、,IE,寄存器的指令,那么,CPU,将至少再执行一条指令才能响应中断。,four,注意,中断二级嵌套的响应原则:,同一中断优先级中,有多个中断请求时,按自然优先级进行响应(即查询顺序)。,将,IP,中相应的优先级控制位置,1,,以阻断后来的同级和低级的中断请求。,A,撤销该中断源的中断请求标志,否则,中断返回后将重复响应该中断。,B,保护断点地址,程序转向执行中断服务子程序。,C,满足中断条件的情况下,,CPU,响应中断过程如下:,中断处理,two,(,1,)保护现场,中断处理过程一般可以分为,保护现场,、,执行中断服务程序,和,恢复现场,三个过程。,执行中断服务子程序之前,,CPU,只保护了一个地址(,PC,的值),,如果主程序和中断服务子程序中都用到一些公共存储空间(如,A,、,PSW,和,DPTR,等),那么执行中断服务子程序前需要将这些数据保存起来,以免返回主程序时出现错误。,(,2,)执行中断服务程序,在,MCS-51,系列单片机中,五个中断源都有它们各自的,中断入口地址,。可以看出,中断服务程序的存储空间很小,如果我们需要的程序超出了空间的限制,这时可以,在中断处安排一条,LJMP,指令把中断服务程序跳转到其他地址,。,one,two,three,four,INT0,:,0003H,T0,:,000BH,five,INT1,:,0013H,T1,:,001BH,串口中断:,0023H,ORG0000H,LJMPSTART,ORG0003H,LJMPAINT0;,转外中断,0,服务程序,START:,;,主程序,AINT0:,;,中断服务程序,RETI;,从中断服务程序返回,END,【,例,3-36,】,中断程序示例,(,3,)恢复现场,恢复现场和保护现场相对,,返回主程序前需要将保护现场过程中压入堆栈的相关数据弹出,,,以保证程序返回断点时能正确执行。,注意,不能使用“,RET,”指令代替“,RETI,”指令。,任务,3,典型应用,报警器,设计,在工业控制中,如果发生一些紧急情况,系统总是会发出警报进行提醒,这里我们设计一个简单的单片机系统来模仿工业控制中的,报警系统,。,系统设计思想如下:,在单片机的外部中断端口连接按钮开关,当开关按下时,产生外部中断,然后由其他输出端口输出,1KHz,和,500Hz,的音频信号驱动蜂鸣器作报警信号,要求,1KHz,信号响,100ms,,,500Hz,信号响,200ms,,交替,3,次,。,硬件设计,one,根据系统的设计思想,系统的,硬件原理图,如图所示,开关按钮的一端接地,另一端连接,P3.3,端口(外部中断,INT1,请求输入端)。,提示,蜂鸣器的正极连接电源,负极接到三极管的发射极,E,,三极管的基级经过限流电阻,R1,后由单片机的,P3.5,引脚控制。,当,P3.5,输出高电平时,三极管截止,没有电流流过线圈,蜂鸣器不发声;当,P3.5,输出低电平时,三极管导通,蜂鸣器的电流形成回路,可以发出警报。,在,P3.5,端口连接发生设备蜂鸣器(在元件库中可以通过关键字“,spesker,”搜索),由于单片,I/O,引脚输出的电流较小,因此这里,通过一个三极管,Q1,放大电流来驱动蜂鸣器机,。,软件设计,two,在软件设计环节需要考虑的三个主要的问题:,一、如何判断中断发生,;,二、如何控制蜂鸣器发出警报,;,三、蜂鸣器的发声频率如何控制,。解决这三个问题的思路如下:,01,P3,口内部有上拉电阻,在开关按钮按下之前,端口,P3.3,会保持在高电平;当开关闭合时,,P3.3,端口接地,变为低电平。因此,通过检测端口的状态变化就可以判断是否产生中断。,02,改变单片机,P3.5,引脚输出波形的频率,就可以调整控制蜂鸣器音调,控制,P3.5,脚的电平可以使蜂鸣器发出警报(原理详见硬件设计中的提示部分)。,03,通过对,P3.5,引脚取反来实现特定频率的报警音频信号的产生:,500Hz,信号的周期为,2ms,(,1/500Hz,),信号电平为每,1ms,(,2ms/2,)取反,1,次;,1KHz,的信号周期为,1ms,(,1/1KHz,),信号电平每,500s,(,1ms/2,)取反,1,次。,1ms,正好为,500s,的,2,倍,可以利用延时,500s,的延时子程序来实现延时,,1ms,正好调用,2,次延时子程序。,程序如下,;,ORG0040H,AJMPMAIN,ORG0013H,AJMPINT_1,;,MAIN:,MOVSP,#60H;,堆栈指针初始化,SETBIT1;,设置触发方式,SETBEA;,打开中断总开关,SETBEX1;,外部中断,1,允许控制位置,1,SJMP$;,等待外部中断,;,INT_1:,CLRP3.5,MOVR0,#3;,循环发声,3,次,ALARM:,MOVR2,#200,DV1:;,输出,500Hz,音频信号,CPLP3.5,LCALLDELY500us,LCALLDELY500us,DJNZR2,DV1,MOVR2,#200,DV2:;,输出,1KHz,的音频信号,CPLP3.5,LCALLDELY500us,DJNZR2,DV2,DJNZR0,ALARM,RETI;,中断返回,;,DELY500us:,MOVR7,#250,LOOP1:,NOP,DJNZR7,LOOP1,RET,END;,程序结束,在,Protues,中进行系统仿真,当系统运行时,戴上电脑的耳机,会听到令你惊喜的报警声。,MCS,51,中断应用,报警器设计,项目总结,在本项目中我们学习的是,MCS-51,系列单片机的中断系统,首先了解了,中断机制的原理,;随后,任务一中介绍了,MCS-51,系列单片机的,中断源,和,中断控制寄存器,;接下来讲述了,中断处理的整个过程,;最后,报警器系统综合前面所学知识,亲自动手设计能够进一步加深对中断机制的理解。,THANKS FOR WATCHING,谢谢收看,
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服