精华内容
下载资源
问答
  • 51单片机中断系统

    万次阅读 多人点赞 2018-12-11 20:04:08
    中断定义  CPU在处理某一事件A时,发生了另一事件B请求CPU迅速去处理(中断发生); CPU暂时中断当前的工作,转去处理事件B(中断响应和中断服务); 待CPU将事件B处理完毕后,再回到原来事件A被中断的地方继续...

    中断定义

      CPU在处理某一事件A时,发生了另一事件B请求CPU迅速去处理(中断发生); CPU暂时中断当前的工作,转去处理事件B(中断响应和中断服务); 待CPU将事件B处理完毕后,再回到原来事件A被中断的地方继续处理事件A(中断返回),这一过程称为中断 。

      

     

      引起CPU中断的根源,称为中断源。中断源向CPU提出的中断请求。CPU暂时中断原来的事务A,转去处理事件B。对事件B处理完毕后,再回到原来被中断的地方(即断点),称为中断返回。实现上述中断功能的部件称为中断系统。

      

     

      89C51/52的中断系统有5个中断源 ,2个优先级,可实现二级中断嵌套 。

       

      1、(P3.2)可由IT0(TCON.0)选择其为低电平有效还是下降沿有效。当CPU检测到P3.2引脚上出现有效的中断信号时,中断标志IE0(TCON.1)置1,向CPU申请中断。

      2、(P3.3)可由IT1(TCON.2)选择其为低电平有效还是下降沿有效。当CPU检测到P3.3引脚上出现有效的中断信号时,中断标志IE1(TCON.3)置1,向CPU申请中断。

       3、TF0(TCON.5),片内定时/计数器T0溢出中断请求标志。当定时/计数器T0发生溢出时,置位TF0,并向CPU申请中断。

       4、TF1(TCON.7),片内定时/计数器T1溢出中断请求标志。当定时/计数器T1发生溢出时,置位TF1,并向CPU申请中断。

      5、RI(SCON.0)或TI(SCON.1),串行口中断请求标志。当串行口接收完一帧串行数据时置位RI或当串行口发送完一帧串行数据时置位TI,向CPU申请中断。

     

    中断允许控制

      CPU对中断系统的所有中断以及某个中断源的开发和屏蔽是由中断允许寄存器IE控制的。

      

    EA:中断允许总开关控制位。(1:所有中断请求被允许;0:所有中断请求被屏蔽)

    ES:串行口中断允许控制位。(1:允许串口中断;0:禁止串口中断)

    ET1:定时器/计数器T1的溢出中断允许控制位。(1:允许T1溢出中断;0:禁止T1溢出中断)

    EX1:外部中断1中断允许位。(1:允许外部中断1中断;0:禁止外部中断1中断)

    ET0:定时器/计数器T0的溢出中断允许控制位。(1:允许T1溢出中断;0:禁止T1溢出中断)

    EX0:外部中断0中断允许位。(1:允许外部中断1中断;0:禁止外部中断1中断)

     

    中断请求标志 

      TCON 的中断标志

      

      IT0(TCON.0),外部中断0触发方式控制位。

        当IT0=0时,为低电平触发方式。

        当IT0=1时,为边沿触发方式(下降沿有效)。

      IE0(TCON.1),外部中断0中断请求标志位。

      IT1(TCON.2),外部中断1触发方式控制位。

      IE1(TCON.3),外部中断1中断请求标志位。

      TF0(TCON.5),定时/计数器T0溢出中断请求标志位。

      TF1(TCON.7),定时/计数器T1溢出中断请求标志位。

     

     中断优先级

       

     

    中断源

         

     

    中断响应条件

      中断源有中断请求

      此中断源的中断允许位为1

      CPU开中断(EA=1)

     

    使用中断,需要做什么?

      你想使用的中断是哪个?选择响应的终端号。

      你所希望的触发条件是什么?

      你希望在中断之后干什么?

     

     以外部中断0为例

    主程序中需要有以下代码:

    EA=1;//打开总中断开关
    EX0=1;//开外部中断0
    IT0=0/1;//设置外部中断的触发方式

    中断服务函数:

    void int0 () interrupt 0 using 1  // using 1 不用写也不用管
    
    {
      do anything that you want
    }

     

    展开全文
  • 51单片机 中断系统

    2013-03-08 19:33:40
    本资源为51单片机中断系统课件,为单片机入门者提供资源参考和指导
  • 51单片机汇编课程PPTMCS-51单片机中断系统.ppt
  • 51单片机中断系统应用
  • 80C51单片机 中断系统及其应用;3.3.1 80C51单片机中断系统;3.3.1 80C51单片机中断系统; 80C51单片机有5个中断源2个中断优先级它的中断处理程序可实现两级嵌套有较强的中断处理能力 单片机对中断系统的管理是通过...
  • 51单片机中断系统程序实例.doc
  • 单片机:第七章 51单片机中断系统.ppt
  • MCS-51单片机中断系统

    2010-12-30 01:13:28
    MCS-51单片机中断系统 MCS-51单片机中断系统 欢迎下载
  • 本章提要本章介绍MCS51单片机重要功能硬件中断系统定时/计数器串行口的工作原理及应用通过本章学习熟悉中断的基本概念掌握中断系统的硬件组成和中断系统的程序结构初始化编程的设计方法掌握定时/计数器串行口的结构...
  • 单片机原理与应用:5.3 MCS-51单片机中断系统.ppt
  • 浅谈MCS-51单片机中断系统逻辑控制图.pdf
  • 第十讲 51 单片机中断系统单片机中断系统 1. 中断的定义 所谓中断是指 CPU 正在处理某些事务的时候 外部又发生了某一事件请求 CPU 及时处理于 是 CPU 暂时中断当前的工作转而处理所发生的 事件处理完毕再回到原来...
  • 第四教学单元AT89S51单片机中断系统.pptx
  • 51单片机中断系统实验 一、实验内容 INT0端接单次脉冲发生器。按一次脉冲产生一次中断,CPU使P1.0状态发生一次反转,P1.0接LED灯,以查看信号反转。 根据实验内容编写一个程序,并在实验系统上调试和验证。 二、仿真...

    51单片机中断系统实验

    一、实验内容
    INT0端接单次脉冲发生器。按一次脉冲产生一次中断,CPU使P1.0状态发生一次反转,P1.0接LED灯,以查看信号反转。
    根据实验内容编写一个程序,并在实验系统上调试和验证。

    二、仿真图
    在这里插入图片描述

    三、代码
    C语言实现:

    
    sbit LED=P1^0;
    
    void INT0_IN();
    
    
    void main()
    {
        LED=0;
    	INT0_IN();
    	while(1) ;
    
    }
    
     void INT0_IN()
    {
       EA=1;//总中断打开
       EX0=1;//外部中断0 打开
       IT0=0;//负边沿触发
    }
    
    void exter0() interrupt 0
    {
    	IE0=0;
    	LED=~LED;
    }
    

    汇编实现:

            LED     BIT   P1.0
            LEDBUF  BIT   20H
            ORG 0000H
            LJMP START
            ORG 0003H
            LJMP INT00
            ORG 0030H
    
    START:  MOV SP,#60H
            CLR LEDBUF  //清0
            CLR LED	  //清0	   
            MOV TCON, #01H   ; 外部中断0下降沿触发
            MOV IE,   #81H       ; 打开外部中断允许位(EX0)及总中断允许位(EA)
    OK:     LJMP OK
    
    INT00:  PUSH     PSW          ; 保护现场
            CPL     LEDBUF      ; 取反LED
            MOV     C, LEDBUF
            MOV     LED, C
            POP     PSW          ; 恢复现场
            RETI
            END
    
    
    展开全文
  • 单片机原理与应用课程中断系统结构任课教师何晨曦5.2 中断系统的结构中断系统结构示意图 THANKS
  • 第5章 AT89C51单片机中断系统 ;教学目标;5.1 中断概述;2为什么要设中断; 3中断源及其优先级; 4. 中断源的管理;5.2 AT89C51中断系统的结构;5.2.1 中断源及中断系统构成 ; 5.2.2 中断标志与中断控制;表5.1 TCON的结构...
  • 第6章项目四51单片机中断系统的应用.ppt.pptx
  • 第5章 AT89C51单片机中断系统 ;教学目标;5.1 中断概述; 中断概念类比 ;2为什么要设中断; 3中断源及其优先级; 4. 中断源的管理;5.2 AT89C51中断系统的结构;5.2.1 中断源及中断系统构成 ; 5.2.2 中断标志与中断控制;表...
  • 第5章89C51单片机中断系统2010;5.1 微机的输入/输出方式;5.1.1 无条件传送方式;5.1.2 查询传送方式条件传送;二查询方式程序流程图;四查询方式的特点;DMADirect Memory Access CPU让出数据总线悬浮状态使外设和存储器...
  • * 第五章 MCS-51单片机中断系统 概述 第一节 中断系统结构 第二节 中断 的响应 * 概 述 一中断系统重要指标 日常生活中的中断与计算机中断的比较 某人看书 执行主程序 日常事务 电话铃响 中断信号如INT=0 中断请求 ...
  • 微机原理与接口技术 第6章 MCS-51中断系统 第一节 中断系统概述 二中断源 三中断的分类 四中断嵌套 五中断系统功能 软件排队流程图示例 中断系统功能续 第二节 51单片机中断系统 能够产生中断申请的来源称为中断源...
  • 单片机中断详解······· 具体内容自测·········真是的还要多于二十个字符 难点 中断优先级控制原则 中断响应过程 要求 ...5.2 MCS-51 单片机的中断系统 5.3 中断系统的应用举例
  • 第 5 章 中断系统 5.1 中断的概念 5.2 MCS-51 单片机的中断流程 5.3 MCS-51 的中断响应条件和中断处理 5.4 中断程序编程举例 5.1 中断的概念 当 CPU 正在处理某事件的时候外部发 生的某一事件请求 CPU 迅速去处理...
  • CPU 在执行主程序 低级中 断请求 ... 例设 89C51 的片外中断为高优先级片内中 断为低优先级试设置 IP 相应值 a 用字节操作指令 MOV IP #05H 或 MOV 0B8H #05H b 用位操作指令 SETB PX0 SETB PX1 CLR PS CLR PT0 CLR P
  • 第4章 MCS-51单片机中断系统 ;4.1 中断的概念 中断是指在CPU正在处理某项事务的时候如果外界或内部发生了紧急事件要求CPU暂停正在运行的工作转而去处理这个紧急事件待处理完后再回到原来被中断的地方继续原来被...
  • 单片机原理及应用 中断系统 CPU A B CPU B A 1 2 3 1 ) INT0 INT1 P3.2 P3.3 , ( ) TCON TCON D7 D6 D5 D4 D3 D2 D1 D0 (88H) TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 IT0(IT1) 0 1 IE0(IE1) 0( 1) 有缘学习更多+谓ygd3076...
  • 51单片机中断系统的理解

    千次阅读 多人点赞 2016-11-14 20:19:20
    51单片机中断系统十分重要,前几次我在学习的时候,根本分不清外部中断、定时器中断的区别以及正确使用方法。今天,偶然打破了自己的常规思路,得到了一点点理解,与大家分享下,希望大家不吝指出其中的不足与错误...

    51单片机的中断系统十分重要,前几次我在学习的时候,根本分不清外部中断、定时器中断的区别以及正确使用方法。今天,偶然打破了自己的常规思路,得到了一点点理解,与大家分享下,希望大家不吝指出其中的不足与错误。

            1.单片机的中断分类:只有两类,外部中断和定时器中断。这两种中断使用时可以完全分离。

    2.最常用的自动中断是定时器中断,也就是自己设定一个“倒计时”,该倒计时与主程序同时开始,一旦时间耗尽,开始停止主程序,进行中断程序。这种定时器中断的开启方法只需要这几个寄存器设置:

    EA=1表示允许任何中断开启;

    ETx表示时间耗尽允许执行中断程序;

    TRx表示允许倒计时开始;

    TMOD表示倒计时的计时工作方式;

    THx,TLx表示倒计时的值。

    然后写中断程序interrupt 1或3 。

    3.可以人工控制的中断是外部中断,开启方式最简单,只需要以下寄存器:EA=1表示意义同上;EXx表示外部条件(3.2或者3.3口低电平)满足去执行中断程序。然后写中断程序interrupt 0或 2 。


    以前总是误认为使用外部中断必须要开启定时器中断,现在想想不是这样的。

    提供两个简单程序供大家测试:

    程序一:定时器中断

    sbit beep=P2^3;
    void init();
    int main()
    {
        init();
        while(1);
    }

    void init()
    {
        EA=1;
        ET0=1;
        TR0=1;
        TH0=(65535-50000)/256;
        TL0=(65535-50000)%256;
        TMOD=0x01;
    }
    void inter() interrupt 1
    {
        int a;
        TH0=(65535-50000)/256;
        TL0=(65535-50000)%256;
        a++;
        if(a==40)
        {
            a=0;
            beep=~beep;
        }
        
    }



    程序二:外部中断

    #include<reg52.h>
    void init()
    {
        EA=1;
        EX0=1;
        IT0=0;
        
    }
    int main()
    {
        init();
        while(1)
        {
            P1
        }
    }
    void interceshi() interrupt 0
    {
        P1=0;
    }

    展开全文

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 20,560
精华内容 8,224
关键字:

51单片机中断系统