第5章输入输出和中断.pptVIP

  • 18
  • 0
  • 约 46页
  • 2016-04-05 发布于湖北
  • 举报
§5.4 MCS-51的中断系统 一、中断源和中断标志 MCS-51中典型的8051单片机有5个中断源,分别为2个从INT0、INT1(P3.2、P3.3)上输入的外部中断源0(INT0)和外部中断源1(INT1),2个片内定时器/计数器T/C0、T/C1的溢出中断源和1个片内串行口发送或接收中断源。 1、定时器/计数器控制寄存器TCON(88H) TF1 TF0 IE1 IT1 IE0 IT0 8FH 8DH 8BH 8AH 89H 88H * TF1:定时器/计数器T/C1的溢出中断请求标志位。T/C1被启动后,从初始值开始加1计数。当T/C1产生溢出中断(全“1”变为全“0”)时,TF1由硬件自动置位(置“1”),向CPU申请中断;当T/C1的溢出中断为CPU响应后,TF1由硬件自动复位(置“0”),中断申请撤除。 TF0:定时器/计数器T/C0的溢出中断请求标志位。作用和TF1类似。 IE1:外部中断1(INT1)的中断请求标志位。IE1=1有中断申请,IE1=0无中断申请。由硬件自动置位和复位。 IT1:外部中断1(INT1)的触发控制标志位。当IT1=0,为电平触发方式,INT1低电平有效;IT1=1,INT1为边沿触发方式, INT1输入脚上的高到低的负跳变有效。 IE0:外部中断0(INT0)的中断请求标志位。 IT0:外部中断0(INT0)的触发控制标志位。 * 2 串行口控制寄存器SCON(98H) TI RI 99H 98H TI:串行口发送中断标志位。串行口发送完一组数据时,串行口电路向CPU发出串行口中断申请的同时也使TI由硬件自动置位。CPU响应此中断后,不能由硬件自动复位TI,而须由软件复位。 RI:串行口接收中断标志位。串行口接收到一组数据时,串行口电路向CPU发出串行口中断申请的同时也使RI由硬件自动置位。CPU响应此中断后,不能由硬件自动复位RI,而须由软件复位。 MCS-51系统复位后,TCON和SCON中各位被复位成“0”状态。 * 二、MCS-51对中断请求的控制 1、对中断允许的控制 中断允许总控位EA,配合各中断源的中断允许控制位共同实现对中断请求的控制。这些中断允许控制位集成在中断允许寄存器IE(A8H)中。 EA ES ET1 EX1 ET0 EX0 AFH ACH ABH AAH A9H A8H EA:CPU中断允许总控位,位地址为AFH。当EA=1时,CPU开放中断,每个中断源是允许还是禁止分别由各自的允许位确定。当EA=0,CPU关闭所有中断请求,称关中断。 * ES:串行口中断允许控制位,位地址为ACH。当ES=1,允许串行口中断,当ES=0,禁止串行口中断。 ET1:定时器/计数器T/C1的溢出中断允许控制位,位地址为ACH。当ET1=1,允许T/C1中断,当ET1=0,禁止T/C1中断。 EX1:外部中断1的中断允许控制位,位地址为AAH。当EX1=1,允许外部中断1中断,当EX1=0,禁止外部中断1中断。 ET0:定时器/计数器T/C0的溢出中断允许控制位,位地址为A9H。当ET0=1,允许T/C0中断,当ET0=0,禁止T/C0中断。 EX0:外部中断0的中断允许控制位,位地址为A8H。当EX0=1,允许外部中断0中断,当EX0=0,禁止外部中断0中断。 * 中断允许寄存器IE的单元地址是A8H,各控制位也可位寻址,故既可以用字节传送指令也可以用位操作指令来对各个中断请求加以控制。 例:开放T/C1的溢出中断 MOV IE,#88H; SETB EA SETB ET1 * 2、对中断优先级的控制 MCS-51具有两个中断优先级,可由软件设置每个中断源为高优先级中断或低优先级中断,可实现二级中断嵌套。 IP(B8H):中断优先级寄存器,锁存各中断优先级的控制位,用户可由软件设定。 PS PT1 PX1 PT0 PX0 BCH BBH BAH B9H B8H PS:串行口中断优先级控制位。当PS=1时,串行口中断被定义为高优先级中断,当PS=0,串行口中断被定义为低优先级中断。 PT1:T/C1中断优先级控制位。当PT1=1时,T/C1中断被定义为高优先级中断,当PT1=0,T/C1中断被定义为低优先级中断。 * PX1:外部中断1中断优先级控制位。当PX1=1时,外部中断1中断被定义为高优先级中断,当PX1=0,外部中断1中断被定义为低优先级中断。 PT0:T/C0中断优先级控制位。当PT0=1时,T/C0中断被定义为高优先级中断,当PT0=0,T/C0中断被定义为低优先级中断。 PX0:外部中断0中断优先级控制位。当PX0=1

文档评论(0)

1亿VIP精品文档

相关文档