第次《单片机原理与应用》中断和P口输入和输出.ppt

第次《单片机原理与应用》中断和P口输入和输出.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第次《单片机原理与应用》中断和P口输入和输出.ppt

EX1:外部中断1(INT1)的中断允许位。 ET1=1允许外部中断1申请中断, EX1=0则不允许中断。 ET0:定时/计数器T0的溢出中断允许位。 ET0=1允许中断, ET0=0不允许中断。 EX0:外部中断0(INT0)的中断允许位。 EX0=1允许中断, EX0=0不允许中断。 每个中断源的优先级别由特殊功能寄存器IP来管理。 PS PT1 PX1 PT0 PX0 D7 D6 D5 D4 D3 D2 D1 D0 PS:串行口中断优先级控制位。 PT1:定时器/计数器T1中断优级控制位。 PX1:外部中断INT1中断优先级控制位。 PT0:定时器/计数器T0中断优先级控制位。 PX0:外部中断INT0中断优先级控制位。 外部中断触发方式通过特殊功能寄存器TCON(地址为88H)控制,TCON中各控制位分布如下: D7 D6 D5 D4 D3 D2 D1 D0 TF1 TF0 IE1 IT1 IE0 IT0 IT0:选择外中断INT0的中断触发方式。 IT0=0为电平触发方式,低电平有效。 IT0=1为负边沿触发方式,INT0脚上的负跳变有效。IT0的状态可以用指令来置“1”或清“0”。 IE0:外中断INT0的中断申请标志。 当检测到INT0上存在有效中断申请时,由硬件使IE0置位。当CPU转向中断服务程序时,由硬件清“0”IE0中断申请标志。 IT1:选择外中断INT1的触发方式(功能与TI0类似)。 IE1:外部中断INT1的中断申请标志(功能与IE0 类似)。 TF0:定时/计数器T0溢出中断申请标志。 当T0溢出时,由内部硬件将TF0置“1”,当CPU转向中断服务程序时,由硬件将TF0清“0”,从而清除T0的中断申请标志。 TF1:定时器1溢出中断申请标志(功能与TF0相同)。 例如, 某软件中对寄存器IE、 IP设置如下: MOV IE, # 8FH MOV IP, # 06H 则此时该系统中:  CPU中断允许;  允许外部中断 0、 外部中断 1、 定时器 /计数器 0、 定时器 /计数器1提出的中断申请;  允许中断源的中断优先次序为:  定时器 /计数器 0外部中断 1外部中断 0定时器/计数器 1。 一、中断响应条件: 1.有中断请求信号; 2. 系统处于开中断状态。 二、中断响应过程: 1.关中断:屏蔽其它中断请求信号。 2.保护断点:将断点地址压入堆栈保存,即当前PC值入栈。 3.寻找中断源:中断程序入口地址?PC,转入中断服务。 4.保护现场:将中断服务程序使用的所有寄存器内容入栈。 5.中断处理:执行中断源所要求的程序段。链接中断处理 6.恢复现场:恢复被使用寄存器的原有内容。 7.开中断:允许接受其它中断请求信号。 8.中断返回:执行RETI指令,堆栈断点地址?PC, 程序跳转回断点处执行。 RETI= RET指令+通知CPU中断服务已结束(复位触发器) 中断响应过程 中断响应过程: 1、中断采样——仅对外中断(INT0、INT1)请求信号; 2、中断查询:单片机在每一个机器周期的最后一个状态S6, 按优先级顺序对中断请求标志位进行查询,即先查询高级中断后再查询低级中断,同级中断按“INT0→T0→INT1→T1→RI/TI”的顺序查询。如果查询到有标志位为“1”,则表明有中断请求发生,接着就从相邻的下一个机器周期的S1状态开始进行中断响应。 由于中断请求是随机发生的,CPU无法预先得知,因此在程序执行过程中,中断查询要在指令执行的每个机器周期中不停地重复进行。 3、中断响应:当查询到有效的中断请求时,就进行中断响应。其主要内容是由硬件自动生成一条长调用指令LCALL。其格式为:LCALL addr16,addr16即是由系统设定的5个中断程序的入口地址。 各中断源中断服务 程序的入口地址。 如右表: 编写中断服务程序注意要点: (1)各中断源的入口地址之间仅相隔8个单元,如果中断服务程序的长度超过8个地址单元时,应在中断入口地址处安排一条转移指令,转到其他有足够空余存储器单元的地址空间。 (2)若执行当前中断服务程序时需要禁止更高级中断源,则要用软件指令关闭中断,在中断返回之前再开放中断。 (3)在保护和恢复现场时,为了

文档评论(0)

此项为空 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档