- 1、本文档共78页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
5_MCS-51中断系统
5.2.3 中断系统的功能 MCS-51的中断系统具有以下中断功能: 能实现中断及返回; 能实现中断优先级排队; 能实现中断嵌套。 5.3 MCS-51单片机中断源、中断源和中断响应 5.3.1 中断源 中断源是指能发出中断请求,引起中断的装置或事件。一个单片机系统通常有多个中断源,而单片机CPU在某一时刻只能响应一个中断源的中断请求,当多个中断源同时向CPU发出中断请求时,则必须按照“优先级别”进行排队,CPU首先选定其中中断级别最高的中断源为其服务,然后按由高到低的排队顺序逐一服务,完毕后返回断点地址,继续执行主程序。这就是“中断优先级”的概念。 (1)外中断类 即外部中断0和外部中断1 中断请求信号分别由引脚INT0(P3.2)和INT1(P3.3)引入。 外部中断请求有两种信号方式: 电平方式:当引脚上出现低电平时就向CPU申请中断,CPU响应中断后应采取措施撤消中断请求信号,使引脚恢复高电平。 脉冲方式:当引脚上出现负跳变(下降沿)时,该负跳变经边沿检测器使IE0或IE1置1,向CPU申请中断,CPU响应中断后由硬件自动清除IE0和IE1。CPU在每个机器周期采样INT0和INT1,为了保证检测到负跳变,引脚上的高电平与低电平至少应各自保持一个机器周期。 (2)定时中断类 单片机芯片内部有两个定时器,T0和T1,以计数的方法实现定时或计数功能。定时器/计数器计数溢出时,由硬件分别置TF0=1和TF1=1,向CPU申请中断。CPU响应中断后,由硬件自动清除TF0和TF1。 (3)串行接口中断 串行接口的中断请求由发送或接收所引起。串行口发送了一帧信息,便由硬件置TI=1,向CPU申请中断。串行口接收了一帧信息,便由硬件置RI=1,向CPU申请中断。CPU响应中断后必须由软件清除TI和RI。 5.3.2 中断控制 与中断控制有关的寄存器共四个, 定时器控制寄存器TCON (Timer Controller) 串行口控制寄存器 SCON(Serial Controller) 中断允许控制寄存器IE (Interrupt Enable) 中断优先控制寄存器IP (Interrupt Priority) (1)定时器控制寄存器(TCON),88H TCON内容及位地址表示如下: (2)串行口控制寄存器(SCON) 该寄存器地址为98H,其位地址为9FH~98H。 (3)中断允许控制寄存器(IE) 该寄存器地址为A8H,其位地址为AFH~A8H。 EX0(EX1)——外部中断允许控制位 EX0(EX1)=0 禁止外中断 EX0(EX1)=1 允许外中断 ET0(ET1)——定时/计数中断允许控制位 ET0(ET1)=0 禁止定时/计数T0(T1)中断 ET0(ET1)=1 允许定时/计数T0(T1)中断 ES——串行中断允许控制位 ES=0 禁止串行中断 ES=1 允许串行中断 (4)中断优先级控制寄存器(IP) IP寄存器地址B8H,位地址为BFH~B8H。 5.3.3 中断处理过程 (2)中断响应过程 1)使相应优先级状态触发器置1; 2)将当前PC内容压入堆栈——保护断点; 3)硬件清零相应中断请求标志(TI、RI除外); 4)将中断服务子程序入口地址送PC——转移。 (3) 中断响应时间 指从查询中断请求标志位到转向中断服务入口地址所需的机器周期数。 1)最快响应时间 以外部中断的电平触发为最快。 1个周期(查询)+2个周期(长调用LCALL) 2)最长响应时间 若当前指令是RET、RETI和IP、IE指令,紧接着下一条是乘除指令发生时: 2个周期执行当前指令(其中含有1个周期查询)+4个周期乘除指令+2个周期长调用=8个周期。 (4)中断处理 中断处理(又称中断服务)程序从入口地址开始执行,直到返回指令“RETI”为止,这个过程称为中断处理。此过程一般包括两部分内容,一是保护现场,二是处理中断源的请求。 (5)中断返回 中断处理程序的最后一条指令是RETI,它使CPU结束中断处理程序的执行,返回到断点处,继续执行主程序。 5.3.4 中断程序设计 中断程序指为实现中断而设计的有关程序,包括主程序和中断服务程序。主程序实现对中断的控制,中断服务程序则完成中断源所要求的各种操作。 (1) 主程序 1)主程序的起始地址: MCS-51单片机复位后,PC=0000H,而各中断源的入口地址为0003H~0023H。
文档评论(0)