0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一文详解MCS-51单片机的中断系统

MCU开发加油站 来源:网络整理 作者:工程师陈翠 2018-07-28 11:26 次阅读

MCS-51中断系统:5个中断源(两个外部中断, 两个定时器, 一个串口),2个优先级

一文详解MCS-51单片机的中断系统

中断相关概念

中断:当CPU正在处理某件事情时,单片机外部或内部发生的某一紧急事件请求CPU立即去处理,于是,CPU暂时中止当前的工作,转去处理这个紧急事件,待处理完毕后,再回到原来被中止的地方,继续原来的工作。

中断过程

中断发生:CPU在处理某一事件A时,发生了另一事件B请求CPU迅速去处理;

中断响应和中断服务:CPU暂时中断当前的工作,转去处理事件B(B的优先级要高于A);

中断返回:待CPU将事件B处理完毕后,再回到原来事件A被中断的地方继续处理事件A ;

中断源(中断请求源):能够向CPU发出中断申请的部件。

中断系统结构

一文详解MCS-51单片机的中断系统

外部中断0和1:低电平或者脉冲下降沿时产生中断请求;

定时器/计数器0和1:计数值由FF变为00时产生中断请求;(定时功能:计数脉冲来源于片内;计数功能:计数脉冲来源于片外);

串行口:发送或者接受1字节数据时产生中断请求;

中断控制

4个特殊功能寄存器来实施中断控制: • 中断允许寄存器 IE • 中断优先级寄存器 IP • 定时/计数器及外部中断控制寄存器 TCON • 串口控制寄存器 SCON

中断允许寄存器 IE

一文详解MCS-51单片机的中断系统

EA 中断允许总控制位。0禁止,1允许。

ES 串行中断允许控制位。0禁止,1允许。

ET1 定时计数器1中断允许控制位。0禁止,1允许。

EX1 外部中断1允许控制位。0禁止,1允许。

ET0 定时计数器0中断允许控制位。0禁止,1允许。

EX0 外部中断0允许控制位。0禁止,1允许。

中断优先级寄存器 IP

一文详解MCS-51单片机的中断系统

PX0 外部中断0的优先级控制位。1为高,0为低

PT0 定时中断0的优先级控制位。1为高,0为低

PX1 外部中断1的优先级控制位。1为高,0为低

PT1 定时中断0的优先级控制位。1为高,0为低

PS 串行中断的优先级控制位。1为高,0为低

串行口控制寄存器 SCON

一文详解MCS-51单片机的中断系统

TI:串口发送中断标志,响应中断时用软件将TI标志清零

RI:串口接收中断标志,响应中断时用软件将RI标志清零

定时/计数器的控制寄存器 TCON

一文详解MCS-51单片机的中断系统

外部中断触发方式位 IT0、IT1(ITx)

ITx = 0 低电平触发,响应中断后IEx不自动清0ITx = 1 脉冲下降沿触发,响应中断后IEx自动清0

外部中断请求0/1的中断请求标志位IE0、IE1

定时器/计数器T0/T1的溢出中断请求标志位TF0/TF1(TFx)

启动T0/T1计数后,从初值加1计数,直到最高位产生溢出时,硬件将TFx置“1”,向CPU请求中断。 响应中断后TFx自动清0;

TR0,TR1与中断无关,仅与定时器/计数器T0/T1有关;

中断响应

中断响应就是CPU对中断源发出的中断请求做出的响应。

中断响应条件

CPU开中断,即中断允许寄存器IE中的中断允许总控制位EA = 1;中断源发出中断请求;中断源的中断允许位为1;没有同级或者高级的优先级中断正在执行;

中断响应的过程

由硬件根据中断源的类型自动生成一条长调用指令LCALL addr16。CPU执行LCALL addr16。

中断响应的时间

响应时间在3~8个机器周期之内;最短响应时间:查询中断请求标志位(T)+LCALL(2T);

中断响应的过程

将相应优先级状态触发器置1(阻断后来同级或低级中断 )执行硬件LCALL指令(PC入栈,中断服务程序入口址送PC)执行中断服务程序PS:编写中断服务程序注意:中断服务程序入口存放指令LJMP或AJMP;现场保护与现场恢复。

中断返回

最后指令为RETI,功能为:

将断点从堆栈弹送PC,CPU从原断点继续执行将相应优先级状态触发器清0,恢复原来工作状态

8051中断程序设计

中断服务程序基本流程

关中断:为了防止此时有高一级的中断进入,以免现场保护的执行过程被中断。

现场保护:所谓现场是指中断时刻单片机中某些寄存器和存储器单元中的数据或状态。为了不让中断服务程序的执行破坏这数据或状态,以免中断返回后影响主程序的运行,需要将他们送入堆栈保存起来。

开中断:为了允许有更高级的中断进入。这样一来,除了现场保护和现场恢复外,中断处理的过程仍允许中断嵌套的功能。

中断处理

关中断:为了防止此时有高一级的中断进入,以免现场恢复的执行过程被中断。

现场恢复:中断处理结束后,在返回主程序前,把保存的现场的内容从堆栈中弹出,以恢复那些寄存器和存储单元中的原有内容

开中断:为了允许有更高级的中断进入。现场恢复后,仍允许中断嵌套的功能。

中断返回:必须是返回指令RETI。CPU执行完这条指令后,把响应中断时所置“1”的优先级状态触发器清“0”,然后从堆栈中弹出栈顶上的两个字节的断点地址送到程序计数器PC,弹出的第一个字节送入PCH,第二个字节送入PCL,CPU从断点处重新执行被中断的主程序。

实例

ORG 0000H ;程序开始LJMP START ;= LJMP 1000HORG 0003H ;外部中断0入口地址

LJMP INTORG 1000H ;主程序入口START: MOV P1, #0AAH ; #0AAH=10101010BSETB EX0 ;允许外部中断0SETB PX0 ;设置外部中断0为高优先级SETB IT0 ;设置外部中断0为脉冲下降沿触发SETB EA ;开中断SJMP $ ;原地跳转,等待中断

INT: CLR EA ;关中断PUSH PSW ;现场保护PUSH ACC ;SETB EA ;开中断

CPL A ;对累加器A按位取反MOV P1, A ;累加器A值送P1端口

CLR EA ;关中断POP ACC ;现场保护POP PSW ;SETB EA ;开中断RETI ;```

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 中断系统
    +关注

    关注

    1

    文章

    96

    浏览量

    60885
  • MCS-51单片机
    +关注

    关注

    5

    文章

    96

    浏览量

    19700

原文标题:MCS-51 单片机的中断系统

文章出处:【微信号:mcugeek,微信公众号:MCU开发加油站】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    MCS-51单片机终端及外中断软件编程

    MCS-51单片机有多个中断源,以8051为例,有5个中断源,两个外中断、两个定时中断和一个串行
    发表于 12-12 10:28 1944次阅读
    <b class='flag-5'>MCS-51</b><b class='flag-5'>单片机</b>终端及外<b class='flag-5'>中断</b>软件编程

    MCS-51系列单片机指令表详解

    MCS-51系列单片机指令表详解
    发表于 03-18 22:29

    MCS-51单片机基本原理

    控制的丰富的指令系统,堪称为代“名”,为以后的其它单片机的发展奠定了基础。正因为其优越的性能和完善的结构,导致后来的许多厂商多沿用或参考了其体系结构,有许多世界大的电气商丰富和发展
    发表于 03-19 16:39

    MCS-51系列和80C51系列单片机的区别

    地说是与MCS-51指令系统兼容的单片机。这些单片机与8051的系统结构(只要是指令系统)相同,
    发表于 08-12 00:32

    MCS-51单片机硬件系统的扩展

    本帖最后由 eehome 于 2013-1-5 09:57 编辑 MCS-51单片机硬件系统的扩展MCS-51单片机硬件
    发表于 01-02 13:29

    MCS-51单片机包括哪些

    MCS-51是指由美国INTEL公司生产的系列单片机的总称,这系列单片MCS-51是指由美国
    发表于 07-21 09:29

    MCS-51单片机的相关资料推荐

    第二章 MCS-51单片机硬件结构与工作原理2.1 MCS-51单片机的硬件结构2.2 引脚介绍2.3 复位电路2.4 寄存器2.5 时序2.6 M
    发表于 11-18 06:02

    MCS-51系列单片机的基本硬件结构

    **MCS-51系列单片机的基本硬件结构**何为单片机单片机的诞生标志着计算机的发展已经形成了通用计算机系统和嵌入式计算机
    发表于 11-24 06:35

    MCS-51系列单片机型号

    0·本文引自《嵌入式和单片机系统MCS是Intel公司单片机的系列符号。Intel推出有MCS-48、
    发表于 12-01 07:28

    详解MCS-51单片机

    MCS-51单片机的硬件结构是由哪些部分组成的?MCS-51单片机的引脚功能有哪些呢?
    发表于 01-26 07:15

    mcs-51单片机应用教程

    mcs-51单片机应用教程以MCS-51系列单片机为主线,从实用的角度出发,通过介绍大量单片机技能训练实例和应用实例,指导读者学习和使用
    发表于 10-28 16:21 77次下载
    <b class='flag-5'>mcs-51</b><b class='flag-5'>单片机</b>应用教程

    MCS-51单片机系统结构

    2.1  MCS-51单片机的外特性2.2  MCS-51单片机内部结构2.3  CPU及复位电路2.4  IO端口2.5 
    发表于 08-12 11:33 46次下载

    MCS-51单片机中断软件编程

    MCS-51单片机中断软件编程 MCS-51单片机有多个中断源,以8051为例,有5个
    发表于 03-06 10:08 1243次阅读
    <b class='flag-5'>MCS-51</b><b class='flag-5'>单片机</b>外<b class='flag-5'>中断</b>软件编程

    MCS-51单片机应用设计

    本书从应用的角度,详细地介绍了MCS-51单片机的硬件结构、指令系统、各种硬件接口设计、各种常用的数据运算和处理程序及接口驱动程序的设计以及MCS-51
    发表于 10-28 10:06 84次下载
    <b class='flag-5'>MCS-51</b><b class='flag-5'>单片机</b>应用设计

    MCS-51单片机应用系统

    MCS-51单片机应用系统详解,感兴趣的可以下载看看。
    发表于 11-06 18:19 2次下载