目录

  • 4.2.1 中断请求源
  • 4.2.2 中断请求标志寄存器
    • 1. TCON寄存器
      • TCON各标志位功能如下:
    • 2. SCON寄存器
      • 各标志位的功能:
    • 3.定时器2的控制寄存器T2CON
  • 中断系统结构图如图4-2所示。
  • 中断系统有6个中断请求源(简称中断源)(80c51单片机有5个中断源),两个中断优先级,可实现两级中断服务程序嵌套
  • 每一中断源可用软件独立控制为允许中断关中断状态,中断优先级均可用软件来设置。 图4-2 AT89S52的中断系统结构

4.2.1 中断请求源

由图4-2可见,AT89S52中断系统共有6个中断请求源

  1. INT0* — 外部中断请求0,中断请求信号由 INT0* 脚输入,中断请求标志为IE0
  2. INT1* — 外部中断请求1,中断请求信号由 INT1* 脚输入,中断请求标志为IE1
  3. 定时器/计数器T0 计数溢出发出的中断请求,中断请求标志为TF0
  4. 定时器/计数器T1 计数溢出发出的中断请求,中断请求标志为TF1
  5. 串行口中断请求,中断请求标志为发送中断TI接收中断RI
  6. T2 的中断请求源(AT89S52多了这个中断源),含有计数溢出(TF2)和“捕捉”(EXF2)两种中断请求标志,经或门共用一个中断矢量。两种中断触发是由T2的两种不同工作方式决定的。

4.2.2 中断请求标志寄存器

  • 6个中断请求源的中断请求标志分别由TCON 、SCON和T2CON的相应位锁存(见图4-2)。

1. TCON寄存器

  • 定时器/计数器的控制寄存器,字节地址为88H,可位寻址。特殊功能寄存器TCON的格式如图4-3所示。

图4-3 特殊功能寄存器TCON的格式

TCON各标志位功能如下:

  • TF1—定时器/计数器T1的溢出中断请求标志位。

    • 当T1计数产生溢出时,由硬件使TF1置“1”,向CPU申请中断。CPU响应TF1中断时,TF1标志由硬件自动清“0”,TF1也可由软件清“0”
  • TF0—定时器/计数器T0的溢出中断请求标志位,功能与TF1类似。
  • IE1—外部中断请求1的中断请求标志位。
  • IE0—外部中断请求0中断请求标志位,功能与IE1类似。
  • IT1—选择外部中断请求1为跳沿触发还是电平触发。
    • IT1=0电平触发方式,引脚 上低电平有效,并把IE1置“1”。转向中断服务程序时,由硬件自动把IE1清“0”
    • IT1=1跳沿触发方式,加到引脚 上的外部中断请求输入信号电平从高到低的负跳变有效,并把IE1置“1”。转向中断服务程序时,由硬件自动把IE1清“0”
  • IT0—选择外部中断请求0为跳沿触发方式还是电平触发方式,其意义与IT1类似。
  • AT89S52复位后,TCON被清“0”,6个中断源的中断请求标志均为0
  • TR1(D6位)TR0(D4位) 这2位与中断系统无关,将在第5章定时器/计数器中介绍。

2. SCON寄存器

  • 串行口控制寄存器,字节地址为98H可位寻址
  • 低二位锁存串行口的发送中断和接收中断的中断请求标志TI和RI,格式如图4-4所示。

图4-4 SCON中的中断请求标志位

各标志位的功能:

  • TI—串行口的发送中断请求标志位。每发送完一帧串行数据后,TI自动置“1”。TI标志必须由软件清“0”
  • RI—串行口接收中断请求标志位。串行口接收完一个串行数据帧,硬件自动使RI中断请求标志置“1”。必须在中断服务程序中用指令对RI清“0”。

3.定时器2的控制寄存器T2CON

  • 80c51没有。
  • 特殊功能寄存器T2CON的字节地址为C8H可位寻址,位地址为C8H~CFH。格式见图4-5。

图4-5 T2CON格式

  • T2CON中的最高两位为定时器/计数器T2中断请求标志位TF2和EXF2

  • TF2(D7):当T2的计数器(TL2、TH2)计数计满溢出回0时,由内部硬件置位TF2(寄存器T2CON.7),向CPU发出中断请求。但是当RCLK位或TCLK位为1时将不予置位。本标志位必须由软件清0。

  • EXF2(D6):当由引脚T2EX(P1.1脚)上的负跳变引起“捕捉”或“重新装载”且EXEN2位为1,则置位EXF2标志位(寄存器T2CON.6),向CPU发出中断请求。

  • 上述两种中断请求,在满足中断响应条件时,CPU都将响应其中断请求,转向同一个中断矢量地址进行中断处理。因此,必须在T2的中断服务程序中对TF2和EXF2两个中断请求标志位进行查询,然后正确转入对应的中断处理程序。中断结束后,中断请求标志位TF2或EXF2必须由软件清0

【单片机】4.2 AT89S52中断系统结构相关推荐

  1. 51单片机——中断系统结构

    目录 1 什么是中断 2 中断的基本概念 2.1 中断源 2.2 中断的优先级别 3 中断的处理过程 4 中断系统的结构 4.1 中断系统的组成 4.2 中断系统的工作原理 5 中断源寄存器 5.1 ...

  2. 单片机串口中断控制流水灯c语言,基于单片机AT89C51控制的中断控制流水灯_课程设计报告...

    <基于单片机AT89C51控制的中断控制流水灯_课程设计报告>由会员分享,可在线阅读,更多相关<基于单片机AT89C51控制的中断控制流水灯_课程设计报告(25页珍藏版)>请在 ...

  3. 中断系统结构及中断控制详解

    中断系统结构及中断控制详解 MCS-51提供5个中断请求源,2个中断优先级,可实现两级中断服务程序嵌套.当CPU执行关中断指令后(或复位),将屏蔽所有中断请求,只有CPU执行开中断指令后才有可能接受中 ...

  4. 51单片机复习:外部中断,定时器/计数器中断

    中断: 什么是中断,就是打断,你一开始在做一件事,突然意外发生(中断源),你不得不停止手中的事,(中断响应),去处理那 件意外(中断服务),处理完意外后你继续做刚才那件事(中断返回),这就是中断,而单 ...

  5. 单片机的延时与中断问题及解决方法

    延时与中断出错,是单片机新手在单片机开发应用过程中,经常会遇到的问题,本文汇总整理了包含了MCS-51系列单片机.MSP430单片机.C51单片机.8051F的单片机.avr单片机.STC89C52. ...

  6. 用 C学习51单片机——记录 4、中断系统 (1)外部中断

    用 C学习51单片机--记录 4.中断系统 用 C 学习51单片机过程与自我拓展--记录(STC89C52芯片) 前言--其实51并不太难,多看 多写代码,多调试,就一定会有所感悟. 所以我在此留下一 ...

  7. 51单片机:利用外部中断实现按键按一下数码管数字加1直到加到99,另一个按键实现清零

    51单片机:利用外部中断实现按键按一下数码管数字加1直到加到99,另一个按键实现清零 题目要求: 利用外部中断实现按键按一下数码管数字加1,实现00-99的循环,另一个按键实现清零,不管数码管数字是多 ...

  8. 51单片机开发 矩阵键盘中断实验与简易计算器及proteus仿真

    51单片机开发 矩阵键盘中断实验与简易计算器及proteus仿真 文章目录 51单片机开发 矩阵键盘中断实验与简易计算器及proteus仿真 实验内容 一.实验一 矩阵键盘中断实验 数码管显示 1.仿 ...

  9. C51单片机——多个按键中断控制实现

    C51单片机--多个按键中断控制实现 1.实现代码 /* * 2018-10-22 */ #include<STC15F2K60S2.h> #define uchar unsigned c ...

  10. 51单片机系列二:中断与延时

    本篇通过闪烁led和数码管两个实验来分析延时与中断概念,以及实现软件仿真. Chapter1.中断的概念 中断就是当CPU执行主程序时,突然被打断一下,去干别的事情,干完再回来执行主程序.这个过程类似 ...

最新文章

  1. myeclipse中的js文件报错
  2. python手机版ios-iOS 项目中如何使用 Python
  3. switchhosts(本地域名解析)小工具使用
  4. 机器学习笔记(十)降维和度量学习
  5. 计算机科学与教育信息化国际会议,A Courses Ontology System for Computer Science Education...
  6. “你所知道的word2vec都是错的”:论文和代码天壤之别,是普遍现象了?
  7. 一起talk C栗子吧(第九十五回:C语言实例--使用共享内存进行进程间通信一)...
  8. php rand js,js中的php rand函数
  9. 谷歌自动启动flash
  10. 雄迈H.265 DVR程序功能升级简介
  11. SQL经典50查询语句案例_3(查询所有同学的学号、姓名、选课数、总成绩)
  12. 【2023秋招】网易雷火游戏研发工程师笔试
  13. Breast Cancer Wisconsin (Diagnostic) Data Set
  14. DSP TI6657 执行pdkProjectCreate.bat问题解决办法
  15. 还没对Docker加以限制?埋下的安全隐患了解一下
  16. java如何给数组初始化?
  17. java 红外光谱数据库_【分享】免费的20个谱图数据库 - 晶体 - 小木虫 - 学术 科研 互动社区...
  18. 原创|干货|长文|264亿件包裹怎么破?闪电式自动化分拣技术 细节大起底!
  19. failed to accept an incoming connection: connection from 127.0.0.1
  20. 第二银河怎么用电脑玩 第二银河模拟器玩法教程

热门文章

  1. 实对称矩阵的相似对角化
  2. linux取ip地址命令,linux下命令取IP地址的多种方法
  3. 最全 Yaml 语法详解
  4. 网络协议 终章 - GTP 协议:复杂的移动网络
  5. 日记侠:要赚钱千万别多想立刻开干
  6. 我从零开始学黑莓开发的过程
  7. Java观察者模式详解
  8. 腾讯云短信API调用
  9. 热敏打印机排版—打印机的指令
  10. 02:Glove论文学习