




已阅读5页,还剩46页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2019/9/15,1,第5章 80C51的中断系统与定时器/计数器,5.3,2019/9/15,2,5.1 80C51的中断系统,5.1.1 中断及中断嵌套的概念,中断的概念,当CPU正在处理某项事务 的时候,如果外界或内部发生 了紧急事件,要求CPU暂停正 在处理的工作转而去处理这个 紧急事件,待处理完后再回到 原来被中断的地方,继续执行 原来被中断了的程序,这样的 过程称为中断。,2019/9/15,3,与中断有关的几个术语:,1、中断源:引起CPU中断的因源。 2、中断请求(中断申请) :中断源向CPU提出的处理要求。 3、中断响应过程:CPU暂时中断原来的工作A,转去处理事件B的过程。 4、中断服务(中断处理):对事件B的整个处理过程。 5、中断返回 : 事件处理完毕后,再回到原来被中断的地方(断点),继续执行程序。 6、中断系统:实现中断功能的部件。,一个完整的中断过程应包括:中断请求、中断判优、中 断响应、中断服务和中断返回。,2019/9/15,4,对于多重中断,若新来的中断优先级别更高,则CPU应该中断现行的中断服务程序,响应优先级别高的中断,在高级中断处理完后,再返回原先的中断服务程序,这个过程就是中断嵌套。,中断嵌套的概念,2019/9/15,5,80C51中断系统的结构,5个中断源、2个优先级,5.1.2 中断请求源和中断控制,2019/9/15,6,中断请求源及中断请求标志,5.1.2 中断请求源和中断控制,外部中断0(INT0) 外部中断1(INT1) T0溢出中断(TF0) T1溢出中断(TF1) 串行口中断(RI或TI),2019/9/15,7,TCON寄存器:,5.1.2 中断请求源和中断控制,中断控制TCON寄存器,2019/9/15,8,触发方式设置及中断标志,电平方式(ITx=0),INTx引脚低电平时IEx=1,响应中断后IEx不自动清0(INTx引脚状态)。 边沿方式(ITx=1),INTx引脚负跳变时IEx=1,响应中断后IEx自动清0。,外部中断标志IE1、IE0(用IEx表示),2019/9/15,9,两种触发方式比较:,电平方式时, INTx低电平必须保持到响应时,否则就会漏掉;在中断服务结束前,INTx低电平必须撤除,否则中断返回之后将再次产生中断。,边沿方式时,采样到有效下降沿后,在IEx中将锁存一个1。若CPU暂时不能响应,申请标志也不会丢失,直到响应时才清0。,2019/9/15,10,溢出中断标志TF1、TF0(用TFx表示),溢出中断请求标志TFx ,Tx启动后就开始由初值进行加1计数,直至最高位产生溢出使TFx=1向CPU请求中断。CPU响应中断后TFx自动清0。,2019/9/15,11,中断控制SCON寄存器,RI:串口接收中断标志,响应中断时不能自动清除 TI:串口发送中断标志,响应中断时不能自动清除,2019/9/15,12,补充知识-中断请求的撤除,1、定时器中断请求的撤除: 对于定时器0或定时器1溢出中断,CPU在响应中断后由硬件自动清除中断标志位TF0或TF1,无须采取其他措施。 2、串行口中断的撤除: 对于串行口中断,在CPU响应中断后,硬件不能清除中断请求标志TI或RI,必须在中断服务程序中由软件来清除相应的标志。 3、外部中断的撤除: 外部中断分为边沿触发和电平触发两种方式。 (1)对于边沿触发的外部中断0或外部中断1,CPU在响应中断后由硬件自动清除中断标志位IE0或IE1 ,无须采取其他措施。 (2)对于电平触发的外部中断0或外部中断1,其中断请求撤除方法较复杂。,2019/9/15,13,中断源的开放和屏蔽由IE控制(1,开放;0,禁止),EX0:外中断0允许 ET0:T0中断允许 EX1:外中断1允许,ET1:T1中断允许 ES :串口中断允许 EA :CPU中断允许,中断控制IE寄存器,2019/9/15,14,IE寄存器,2019/9/15,15,中断控制IP寄存器,中断优先级由IP控制(1,高级;0,低级),PX0:外中断0优先级 PT0:T0中断优先级 PX1:外中断1优先级,PT1:T1中断优先级 PS :串口中断优先级,同一优先级的自然顺序: 自高至低:INT0、TO、INT1、T1、串口。,2019/9/15,16,IP寄存器,2019/9/15,17,中断优先级控制,几个中断同时申请,先响应高级的中断 正进行的中断服务,同级或低级中断不能对其中断,但可以被高级中断所中断。,为此,中断系统内设有对应高、低2个优先级状态触发器(用户不能寻址)。 状态触发器的复位由中断返回指令RETI控制。,2019/9/15,18,1、低优先级中断源可被高优先级中断源所中断 (中断嵌套),反之不能(即高优先级中断源不能被低 优先级中断源中断)。 2、一种中断源(不管是什么优先级),一旦得到 响应,与它同级的中断源不能再中断它。 3、当CPU同时收到几个同一优先级的中断请求时, 按自然优先级的顺序响应中断。,2019/9/15,19,2019/9/15,20,5.1.3 中断处理过程,中断响应条件,有中断请求 相应的中断允许位为1 CPU开中断(即EA=1),遇下面情况之一将不被响应(此间中断条件失效,中断丢失),正在处理同级或高级中断 (没有高优先级或同级优先级的中断服务在执行) 当前查询周期不是所执行指令的最后一个机器周期(正在执行的指令已结束) 正在执行RETI或访问IE或IP的指令(如果执行的指令是RETI,或访问IE、IP,必须再执行一条其他的指令才去中断响应),1、中断响应,2019/9/15,21,中断响应时间,中断响应至少需要3个完整的机器周期(38个)!,受阻时要附加35个机器周期(无同级或高级中断正进行),查询周期不是当前指令的最后机器周期(如MUL,+3) 查询周期恰逢RETI类指令(且后跟MUL指令+5),2019/9/15,22,CPU响应中断过程,将相应优先级状态触发器置1(阻断后来同级或低级中断 ) 执行硬件LCALL指令(PC入栈,中断服务程序入口址送PC ) 执行中断服务程序,编写中断服务程序注意,中断服务程序入口存放指令LJMP或AJMP 现场保护与现场恢复,2019/9/15,23,中断服务程序入口地址表,2019/9/15,24,2、中断处理,2019/9/15,25,3、中断返回,中断服务程序最后指令必须是RETI,其功能:,将断点从堆栈弹出送PC,CPU从原断点继续执行程序 将相应优先级状态触发器清0,恢复原来工作状态,注意,不能用RET代替RETI 中断服务程序中PUSH和POP必须成对使用,2019/9/15,26,小 结,2019/9/15,27,5.1.4 应用举例,【例5-1】设有5个外部中断源,中断优先级由高到低排队顺序为XI0、XI1、XI2、XI3、XI4。试设计它们与80C51单片机的接口。,2019/9/15,28,中断服务程序:,ORG 0003H LJMP INSE0 ORG 0013H LJMP INSE1 INSE0:PUSH PSW ;XI0中断服务 PUSH ACC POP ACC POP PSW RETI (转下页),2019/9/15,29,INSE1:PUSH PSW (接上页) PUSH ACC JB P1.0,DV1 ;P1.0为1,转XI1中断服务程序 JB P1.1,DV2 ;P1.1为1,转XI2中断服务程序 JB P1.2,DV3 ;P1.2为1,转XI3中断服务程序 JB P1.3,DV4 ;P1.3为1,转XI4中断服务程序 INRET:POP ACC POP PSW RETI DV1: ;XI1中断服务程序 AJMP INRET DV4: ;XI4中断服务程序 AJMP INRET,2019/9/15,30,5.2 80C51单片机的定时器/计数器,结构,基本型:T0,定时、计数。 T1,定时、计数、串口波特率发生器。,5.2.1 定时器/计数器的结构与工作原理,TH1、TL1 TH0、TL0 TCON TMOD,2019/9/15,31,由两个特殊功能寄存器TCON、TMOD以及T0、T1 组成。 1、T0:分为两个独立的8位计数器(加1计数器), 分别是:低8位计数器TL0和高8位计数器TH0。 2、T1:分为两个独立的8位计数器(加1计数器), 分别是:低8位计数器TL1和高8位计数器TH1。 3、TMOD:定时器的模式(方式)控制寄存器。 4、TCON:定时器的控制寄存器。,2019/9/15,32,方式寄存器TMOD,GATE:门控位。GATE0时,只要TRx为1,就可启动计数器工作;GATA1时,定时器的启动还要加上INTx引脚为高电平这一条件。 C/T:模式选择位。 清0为定时模式,置1为计数方式。 M1M0:工作方式设置位。可设置四种工作方式(见下页)。,2019/9/15,33,注意:TMOD不能进行位寻址,2019/9/15,34,2019/9/15,35,控制寄存器TCON,TFx:Tx溢出标志位。响应中断后TFx有硬件自动清0。用软件设置TFx可产生同硬件置1或清0同样的效果。 TRx:Tx运行控制位。置1时开始工作;清0时停止工作。TRx要由软件置1或清0(即启动与停止要由软件控制)。,2019/9/15,36,工作原理,实质是加1计数器,定时器模式时,是对内部机器周期计数。计数值乘以机器周期就是定时时间(每一个机器周期使计数器的值加1 ) 计数器模式时,是对外部事件计数。脉冲由T0(P3.4)或T1(P3.5)引脚输入。,2019/9/15,37,5.2.2 定时器/计数器的工作方式,T0有方式0、1、2、3;T1有方式0、1、2。以T0为例说明。,方式0:13位方式,2019/9/15,38,方式1:16位方式,X=216-N=65536-N 计数范围:165536 计数初值要分成2个字节分别送入TH0、TL0,2019/9/15,39,方式2:8位自动重装方式,X=28-N=256-N 计数范围:1256 特别适合与脉冲信号发生器,2019/9/15,40,方式3:(仅T0有此方式,T1的方式3将停止计数),TL0进行8位定时/计数 TH0进行8位定时(T1方式2时,可出借TR1、TF1),2019/9/15,41,5.2.3 定时器/计数器的初始化,初始化步骤: 对TMOD赋值,以确定T0和T1的工作方式; 求初值,并写入TH0、TL0或TH1、TL1; 中断方式时,要对IE赋值,开放中断; 使TR0或TR1置位,启动定时/计数器工作。,2019/9/15,42,1、定时工作方式时: X=M-计数值= 2、计数工作方式时: X=M-计数值 式中: X:计数初值; t :要求定时的时间,单位是 ; fosc:振荡器的振荡频率,单位是Mhz。,计数器初值的计算,M:最大计数值 模式0下: M=213=8192 模式1下: M=216=65536 模式2下: M=28=256 模式3下: M=28=256,2019/9/15,43,【例5-2】已知单片机时钟频率 =6MHZ,当定时器T0分别工作于方式0和方式1,定时时间为1ms时,计算送入TH0和TL0的计数初值各为多少?,2019/9/15,44,【例5-3】若单片机时钟频率 ,请计算定时 2ms所需的定时器初值。,解:由于定时器工作在方式2和方式3下时的最大定时时间只有0.256ms,因此要想获得2ms的定时时间,定时器必须工作在方式0或方式1。 若采用方式0,则根据公式可求得定时器初值为: TC=213-2ms/1us=6192=1830H 即:TH0应装入C1H;TL0应装入10H(高三位为0) 若采用方式1,则有:TC=216-2ms/1us=63536=F830H 即:TH0应装入F8H;TL0应装入30H,2019/9/15,45,定时时间较小时(小于65ms),求计数初值X: Tcy为1S N=10ms/1S=10 000 X=65536-10000=D8F0H 应将D8送TH0, F0H送TL0,5.2.4 应用举例,【例5-4】设系统的晶振频率为12MHZ,利用定时/计数器T0的方式1,编制程序使P1.0引脚上输出周期为20ms的方波。,确定方式字: T0在定时的方式1时: M1M0=01,GATE=0 ,C/T=0 方式控制字为01H,2019/9/15,46,ORG 0000H LJMP MAIN ORG 000BH LJMP DVT0 ORG 0100H MAIN:MOV TMOD,#01H ;置T0方式1 MOV TH0,#0D8H;装入计数初值 MOV TL0,#0F0H SETB ET0 ;T0开中断 SETB EA ;CPU开中断 SETB TR0 ;启动T0 SJMP $ ;等待中断,DVT0:CPL P1.0 MOV TH0,#0D8H MOV TL0,#0F0H RETI END,主程序,中断服务程序,2019/9/15,47,采用软件查询方式完成的源程序如下:,ORG 0000H LJMP MAIN ;跳转到主程序 ORG 0100H ;主程序 MAIN:MOV TMOD,#01H ;置T0工作于方式1 LOOP:MOV TH0,#0D8H ;装入计数初值 MOV TL0,#0F0H SETB TR0 ;启动定时器T0 JNB TF0,$ ;TF0=0,查询等待 CLR TF0 ;清TF0 CPL P1.0 ;P1.0取反输出 SJMP LOOP END,2019/9/15,48,定时时间较大时(大于65ms)。实现方法:一是采用1个定时器定时一定的间隔(如20ms),然后用软件进行计数;二是采用2个定时器级联,其中一个定时器用来产生周期信号(如20ms为周期),然后将该信号送入另一个计数器的外部脉冲输入端进行脉冲计数。,【例5-5】编写程序,实现用定时/计数器T0定时,使P1.7引脚输出周期为2s的方波。设系统的晶振频率为12MHz。,确定方式字: T0在定时的方式1时: M1M0=01,GATE=0 ,C/T=0 方式控制字为01H,求计数初值X: Tcy为1S N=20ms/1S=
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年吉林省白城师范学院省属高校招聘考试笔试试题含答案
- 行政事务中的公共关系技巧试题及答案
- 2024-2025工厂车间安全培训考试试题含答案
- 工程项目管理成果与分享试题及答案
- 行政管理经济法课程知识点试题及答案
- 2025年工程项目管理试题及答案全梳理
- 2025-2030年运营商渠道服务行业市场发展分析及政策建议与策略研究报告
- 2025-2030年网络游戏广告产业市场深度分析及前景趋势与投资研究报告
- 2025-2030年燃气节能器市场前景分析及投资策略与风险管理研究报告
- 2025-2030年歌剧产业市场深度调研及发展趋势与投资战略研究报告
- 全国行政区域身份证代码表(电子表格版)
- 微弱的光亮(2024年山东烟台中考语文试卷记叙文阅读试题)
- 【基于单片机的智能送餐配送车设计与实现(论文)11000字】
- 新教科版小学1-6年级科学需做实验目录
- 24春国家开放大学《农业推广》调查报告参考答案
- 中考物理必背99条知识点
- 《特种设备目录》(2022年第114号)
- 单值移动极差图(空白表格)
- 声乐参赛评分表
- 葡萄小龙干高效栽培技术一边倒技术
- 机柜间施工方案
评论
0/150
提交评论