精华内容
下载资源
问答
  • 中断系统

    2015-07-05 15:47:10
    中断系统的功能包括中断请求的保存和清除,优先级的确定,中断断点及现场的保存,对中断请求的分析和处理以及中断返回等。 在计算机中,中断可分为内部中断,外部中断,软件中断三类。 内部中断由CPU内的
    中断:CPU中止正在执行的程序,转去处理随机提出的要求,待处理完后,再回到原先被打断的程序继续恢复执行的过程称为中断。
    响应和处理各种中断的软硬件的总体称为中断系统,它是计算机系统的重要组成部分。中断系统的功能包括中断请求的保存和清除,优先级的确定,中断断点及现场的保存,对中断请求的分析和处理以及中断返回等。

    在计算机中,中断可分为内部中断,外部中断,软件中断三类。
    内部中断由CPU内的异常引起;
    外部中断由中断信号引起,又可分为可屏蔽中断和不可屏蔽中断;
    软件中断由自陷指令引起,用于供操作系统服务。

    引起中断的各种事件称为中断源,中断源向中断系统发出中断请求。同时可能有多个中断请求,因此中断系统需要按事先确定的中断响应优先次序对优先级高的中断请求予以响应。
    中断响应是允许其中断CPU现行程序的运行,转去对该请求进行预处理,包括保存好断点及其现场,调出有关处理该中断的中断服务程序,准备运行。

    由于中断源比较多,但不少中断源的性质比较接近,可以对它们进行分类,对每一类给定一个中断服务程序的入口,再由软件分支转入相应的中断处理部分。常见的分类有:
    1.机器校验中断:高速程序发生了设备故障,比如电源故障,主存出错等。
    2.访管中断:用户程序需要操作系统介入,调用操作系统服务。
    3.程序性中断:包括指令和数据的格式错,程序执行中出现异常等。
    4.外部中断:来自机器外部,包括定时器中断,外部信号中断,中断键中断。
    5.I/O中断
    6.重启中断。

    中断的优先次序一般为:机器校验为第一级,程序性和管理程序调用为第二级,外部为第三极,I/O为第四级,重启为最低级。
    中断响应的次序可以用排队器硬件实现,次序由高到低固定。但为了根据需要,让操作系统灵活改变中断实际的中断处理次序,很多机器设置了中断级屏蔽位寄存器,以决定某些中断请求是否可进入中断响应排队器。程序状态字中包含有中断级屏蔽位字段,只有操作系统能对其进行设置,来实现中断处理次序。

    中断嵌套:

    一般在处理某级中的某个中断时,与它同级或比它优先级低的中断请求不能中断它的处理,只有比它高一级的中断请求才能中断其处理,等响应和处理完后再继续处理原先的中断请求。

    不少计算机还把中断现行程序的事件分成中断和异常,以便根据其不同的特点给予不同的控制和处理。
    异常:由现行程序引起的暂停事件,比如运算结果异常,页面失效等,一般不能屏蔽,需要立即相应处理。
    中断:指那些与当前程序运行无关的请求暂停事件,比如机器故障中断,I/O中断等,可被屏蔽,未被响应的中断被暂存起来,直到屏蔽解除后仍可得到相应和处理。
    展开全文
  • 第五章 80C51单片微机的 中断系统原理及应用; 实现CPU与外部设备的速度配合 ?通过中断的方法来协调快速CPU与慢速外部设备之间的工作 ...80C51的中断系统包括: 中断源 中断允许寄存器IE 中断优先级寄存器IP 中断矢量等 ?
  • STM32中断系统

    2021-04-13 01:30:57
    ARM Cortex M3 内核支持256个中断包括16个内核中断和240个外设中断,拥有256个中断优先级别。 NVIC的中文意思是嵌套向量中断控制器,控制着中断的相关功能(其中包括中断源、抢占优先级、响应优先级、中断的使能与...

    Introduction:

    1. ARM Cortex M3 内核支持256个中断,包括16个内核中断和240个外设中断,拥有256个中断优先级别。
    2. NVIC的中文意思是嵌套向量中断控制器,控制着中断的相关功能(其中包括中断源、抢占优先级、响应优先级、中断的使能与失能

    基于STM32CubeMx的外部中断设计步骤:

    1. 在 STM32CubeMx中指定引脚,配置中断初始化参数。

    2. 重写该I/O引脚对应的中断回调虚函数。

    HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)
    
    展开全文
  • MCS-51中断与定时系统 ,外部中断,定时中断
  • 一、STM32的中断系统 理解中断、中断源、中断向量、中断优先级、中断服务函数…等基础概念。 ARM CortexM3内核支持256个中断,包括16个内核中断和240个外设中断,拥有256个中断优先级别。 STM32的中断通道可能会...

    一、STM32的中断系统

    理解中断、中断源中断向量、中断优先级、中断服务函数…等基础概念。

    ARM Cortex M3内核支持256个中断,包括16个内核中断和240个外设中断,拥有256个中断优先级别。

    STM32的中断通道可能会由多个中断源共用。这就意味着,某一个中断服务函数也可能被多个中断源所共用。所以,在中断服务函数的入口处,需要有一个判断机制,用以辨别是那个中断触发了中断。

    STM32微处理器的内核中有一个NVIC(嵌套向量中断控制器)的设备,它对中断进行统一的协调和控制,其中最主要的工作就是控制中断通道的使能和确定中断的优先级。

    STM32中有2个优先级的概念:抢占优先级响应优先级,每个中断都需要指定这两种优先级。

    如果两个抢占优先级相同的中断同时到达,NVIC会根据他们的响应优先级高低来决定先处理哪一个。如果两个同时到达的中断的抢占优先级和响应优先级都相等,则根据中断的自然排位顺序来决定响应哪

    个。

    二、STM32的外部中断

    外部中断EXTI是STM32微处理器实时处理外部事件的一种机制,由于中断请求主要来自GPIO端口的引脚,所以称为外部中断。

    STM32F013微处理器有19个能产生事件/中断请求的边沿检测器,每个输入线可以独立地配置成输入类型(脉冲或挂起)和对应的触发事件(上升沿、下降沿或双边沿触发),也可以独立地屏蔽。

    EXTI0~EXTI15:GPIO端口引脚。

    EXTI16:PVD输出,可编程电压监测。

    EXTI17:RTC闹钟。

    EXTI18:USB唤醒。

    三、外部中断的程序设计思路

    传统STM32外部中断设计步骤:

    【1】将GPIO初始化为输入端口。

    【2】配置相关I/O引脚与中断线的映射关系。

    【3】设置该I/O引脚对应的中断触发条件。

    【4】配置NVIC,并使能中断。

    【5】编写中断服务函数。

    基于STM32CubeMX的外部中断设计步骤:

    【1】在STM32CubeMX中指定引脚,配置中断初始化参数。

    选择GPIO引脚的功能,设置中断信号触发条件,使能NVIC对应的中断通道。

    【2】重写该I/O引脚对应的中断回调函数。

    四、外部中断初始化函数剖析

    //外部中断初始化相关的操作在gpio.c文件中的MX_GPIO_Init()函数完成。
    void MX_GPIO_Init(void)
    {
        /*=====================
            此处省略无关代码。
        ======================*/
      /* EXTI interrupt init 外部中断初始化*/
      HAL_NVIC_SetPriority(EXTI9_5_IRQn, 0, 0);        //设置EXIT9~EXIT5中断的优先级
      HAL_NVIC_EnableIRQ(EXTI9_5_IRQn);                //使能EXIT9~EXIT5中断通道
    
      HAL_NVIC_SetPriority(EXTI15_10_IRQn, 0, 0);
      HAL_NVIC_EnableIRQ(EXTI15_10_IRQn);
    }

    五、外部中断服务函数的编写

    参考网址:https://www.xmf393.com/2020/02/16/2020021604/

     

     

     

     

     

     

     

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

    千次阅读 2019-03-25 18:38:39
    MCS-51单片机设置了5个中断源,其中内部有3个中断源,包括定时/计数器T0、T1和片内串口,外部有两个中断请求输入,当系统产生中断时,5个中断源的中断请求标志分别由特殊功能寄存器TCON和SCON的相应位来锁存。...

    这次是关于中断的专题啦!

    中断源:是指引起中断的原因或者设备。

    MCS-51单片机设置了5个中断源,其中内部有3个中断源,包括定时/计数器T0、T1和片内串口,外部有两个中断请求输入,当系统产生中断时,5个中断源的中断请求标志分别由特殊功能寄存器TCONSCON的相应位来锁存。

    • 定时计数器控制器TCON

    既能控制定时计数器T0、T1,又能锁存外部中断请求标志和定时计数器T0、T1的溢出中断标志,具有双重功能,相关位的定义如下:

    TF0:定时计数器T0溢出标志。

    TF1:定时计数器T1溢出标志。

    定时计数器T0、T1启动后,当计数产生溢出时,硬件自动置位TF0、TF1标志,并请求中断,CPU响应中断后,这两个标志位既可通过软件清除,也可通过硬件自动清除。

    IE1:外部中断1请求标志。

    IE0:外部中断0请求标志。

    由CPU检测外部中断请求,当输入信号有效触发后,硬件自动置位IE0,IE1标志,并请求中断,CPU响应中断后,这两个标志位被硬件自动清除。

    IT0:外部中断0触发方式选择位。

    IT1:外部中断1触发方式选择位。

    可用程序控制为0或1,当该位为0,外部中断为电平触发方式,即低电平有效;当该位为1,外部中断为边沿触发方式,即下降沿有效。

    • 串行口控制寄存器SCON

    既是串行口控制寄存器,当串行口发生中断请求时,SCON低两位又能锁存其发送中断和接收中断,具有双重功能,其相关位的定义如下:

    T1:串行口发送中断标志。

    当CPU向串行口的发送数据缓冲器SBUF写入一个数据或字符时,发送器就开始发送,当发完一帧数据后,硬件自动置位TI标志,表示串口正在向CPU发送中断请求,请求发送下一帧数据,该标志必须由软件进行清0.

    RI:串行口接收中断标志

    若串行口接收器允许接收,当接收器接收到一帧数据后,硬件自动置位RI标志,表示串口接收器正在向CPU发送中断请求,使CPU读取接收数据缓冲器中的数据,该标志必须由软件进行清0。

    中断系统:单片机中用于管理各类中断的逻辑。

    中断的优点:

    1、分时操作:中断系统解决了CPU的快速运行与慢速外设、定时计数器及串口之间的“定时”矛盾,这样CPU在运行主程序的同时可以令定时器、串口及其他外设同时工作,当出现中断后,CPU响应中断,停止主程序的运行,转入执行中断服务程序,使CPU高效而有序的工作。

    2、实时处理:中断系统使CPU能及时处理实时控制系统中的许多随机参数和信息,它们能在任何时候向CPU发出中断请求,要求转向中断程序,CPU会对变化的现场信息进行及时响应,使CPU具有随机应变和实时处理能力。

    3、故障处理:中断系统还可以使CPU处理系统中出现的故障,从而不必进行人工干预或停机,提高了系统的稳定性和可靠性。

    • 中断控制

    中断系统的功能主要包括以下几点:
    1、中断的打开与关闭:

    2、中断响应(有一个中断优先级的问题)

    中断优先级:
    简单点说就是当同时来了多个中断的时候,CPU必须判断哪些中断的优先级比较高,因为一些中断会导致系统功能无法实现甚至故障,自然优先级就高,CPU必须先处理。

    所以我们需要对特殊功能寄存器IE编程,用来选择允许或禁止哪些中断,然后可以通过中断优先级寄存器IP进行编程,定义被允许中断的优先级。

    • IE:设置允许的中断源,相关位如下:

    EA: CPU总中断允许位,为0时,禁止所有中断;为1时允许中断。

    *ET2:MCS-52系列单片机中T2中断允许位,为0禁止中断;

    ES:串行口中断允许位,为0时,禁止串行口中断;

    ET1:定时/计数器T1中断允许位,为0时,禁止中断;

    EX1: 外部中断1中断允许位,为0时,禁止中断;

    ET0: 定时/计数器T0中断允许位,为0时,禁止中断;

    EX0:外部中断0中断允许位,为0时,禁止中断。

    • 中断优先级寄存器IP

    用于控制不同中断源的优先级的高低,相关位如下:

    PT2:定时/计数器T2优先级设定,为0时,T2设定为低优先级;为1时,T2设定为高优先级。

    PS:串行口优先级设定,为0时,串行口设定为低优先级;为1时,串行口设定为高优先;

    PT1:定时/计数器T1优先级设定,为0时,T1设定为低优先级

    PX1:外部中断1优先级设定,为0时,外部中断1设定为低优先级;

    PT0:定时/计数器T0优先级设定,为0时,设为低优先级;

    PX0:外部中断0优先级设定,为0时,设为低优先级。

    • CPU在响应中断请求时遵循两个原则:

    1、对于一个正在执行的低级中断服务程序,可以被高级中断请求所打断,但不能被同等优先级的中断请求所中断。

    2、一个正在执行的高级中断服务程序,不能被任何中断请求所中断,只有在执行完此高级中断服务程序后,返回主程序再执行一条指令才能响应新的中断请求。

    MCS-51单片机中只设置有两个优先级,必然会出现几个中断源处于同等的优先级状态,当CPU同时接收到几个同等优先级中断请求时,按照内部硬件查询逻辑,按照自然优先顺序来查询,优先顺序由高到低为:外部中断0->定时/计数器0->外部中断1->定时计数器1->串行口->定时计数器2.

    • 中断响应:

    51单片机在每个机器周期都顺序查询每一个中断源,若接收到中断请求,将在紧跟着的下一个机器周期执行该中断,但是在遇到一些情况时中断会暂时受阻。

    • 最后扯扯51单片机的外部中断源:

    1、外部中断源端口引脚:外部中断0,端口引脚为12(P3^2),引脚符号为INTO^

    外部中断1:端口引脚13(P3^3),引脚符号为INT1^

    2、外部中断请求方式:负边沿触发,使控制位IT0=1即可;

    低电平触发,使控制位IT1=0即可

    • 51单片机外部中断源应用步骤

    1、设置外部中断请求允许位,设置IE寄存器中的EAEX1EX0

    2、选择合适的外部中断请求触发方式,设置TCON寄存器中的IT1IT0

    3、编写中断服务函数,函数格式为:

    返回值  函数名([参数]interrupt n [using m]

    #include <reg52.h>
    typedef unsigned int u16;
    typedef unsigned char u8;
    sbit key = P3^2;
    sbit led = P1^0;
    
    void delay(u16 num)
    {
        u16 x ,y;
        for(x=num; x>0; --x)
            for(y=110; y>0; --y)
            {
                ;    // 延时1ms
            }
    }
    
    int main(void)
    {
        TCON |= 0x01;    //设置外部中断0触发方式为边沿触发方式
        IE = 0X81;    //开放总中断并且外部中断0允许中断
        while(1)
        {
            ;
        }
    }
    
    void ext_int0(void) interrupt 0
    {
        delay(10);
        if(key == 0)
        {
            led =~led;
        }
        while(!key);
    }
    

     

     

     

     

     

    展开全文
  • MCS-51 系列单片机中断系统的结构如图 MCS-51系列单片机中断系统的结构从图中可以看出,MCS-51系列单片机中断系统的主要组成部分如下。① 5个中断源,即外部中断源、外部中断源、定时器/计数器中断源T0、定时器/...
  • 操作系统中断

    2016-08-10 14:14:00
    强迫性中断事件:包括硬件故障中断,程序性中断,外部中断和输入输出中断等。 自愿性中断事件:是由正在运行的进程执行一条访管指令用以请求系统调用而引起的中断,这种中断也称为"访管中断"。  一般情况下,...
  • 中断系统的功能,包括
  • ⑸ 串行中断:包括串行接收中断RI和串行发送中断TI。 89C51中断优先控制的基本原则: ① 高优先级中断可以中断正在响应的低优先级中断,反之则不能。 ② 同优先级中断不能互相中断。 ③ 同一中断优先级中,若有多...
  • stm32之中断系统

    万次阅读 多人点赞 2017-11-23 17:06:06
    二、stm32里面的NVIC是什么NVIC的中文意思是嵌套向量中断控制器,控制着中断的相关功能(其中包括中断源、抢占优先级、响应优先级、中断的使能与失能),具体的配置方法后面会提到。三、stm32里面的优先级
  • 1. PowerPC中断系统简介PowerPC处理器的中断系统由两部分组成,一是内核的中断及异常的处理;二是中断控制器。以P2020处理器为例,包括E500内核中断及异常处理系统和OpenPIC中断控制器。在E500内核中,包含两种可以...
  • Linux内核之中断系统

    2012-09-20 10:30:22
    中断中断处理 本章主要描叙Linux核心的中断处理过程。尽管核心提供通用机制与接口来进行...包括驱动显示器的视频设备、驱动硬盘的IDE设备等。 我们可以同步驱动这些设备,即我们可以发送一个请求执行一组操作
  • 中断系统的功能包括 中断请求的保存和清除、优先级的确定、中断断点及现场的保存、对中断请求的分析和处理, 以及中断返回等.
  • ARMv8 64bits相对于之前的 32bits 有较大变动,所有中断及异常的处理总入口都在entry.S 源文件中。 1.1. 异常介绍(中断即称为 异步异常) 分为同步和异步 两种类型异常,中断划入异步异常类型: Synchronous...
  • 中断简介Linux0.11使用的Intel i386芯片共有256个中断,表现为...0x80中断即128号中断为linux系统调用软中断。硬中断和软中断中断是执行中断指令(int n,n为中断号)主动产生的。而硬中断则是由外部引发的,具有...
  • (1) 中断系统初始化:内核在自身初始化过程中对中断处理机制的初始化,包括中断描述符表的初始化和中断请求队列的初始化等。 (2) 中断或异常处理:一个实际中断或异常的处理过程。 (3) 中断API: 为设备驱动程序提供...
  • TC27x中的中断系统在中断路由器模块中实现,该模块包括服务请求节点( SRN),中断控制单元( ICU)和支持软件(SW)开发的附加功能。如图所示,每个可以生成服务请求的TC27x模块都是连接到中央中断路由器中的一个或...
  • 1.中断介绍 1.1 中断 中断的定义:当CPU执行程序时,...中断源(片内外设中断源、片外中断源等)将中断请求信号传递给内核需要用到中断线,F28335的内部有16个中断线,其中包括2个不可屏蔽中断(RESET和NMI)与14个可屏
  • 内容包括中断源、中断逻辑、中断相关的寄存器、中断的延时、中断的现场保护以及注意事项等。  目前在世界一些着名的单片机产品系列中,PIC16F87X系列单片机是芯片内部包含有外围设备模块数量多的单片机品种之一。...
  • 中断、异常和系统调用是操作系统中十分重要的概念,在这里略作介绍,当作一个复习。 首先,中断和异常的联系是十分紧密的,广义的中断既包含中断也包含异常。 中断(广义):会改变处理器执行指令的顺序,通常与...
  • Linux中断系统(1)-中断框架 Linux中断系统(2)-中断下半部 (一)中断综述 中断硬件系统主要有各个外设、中断控制器(Interrupt Controller)和CPU组成。各个外设提供irq request line连接到中断控制器,在发
  • Linux内核的中断系统

    千次阅读 2013-04-12 14:58:13
    Linux内核的中断子系统 ...第二部分是内核的中断系统框架层,这部分为内核中断处理提供了一个统一的框架,对于靠上层的驱动程序,它提供中断程序注册的接口。对于体系结构相关的底层,它提供一
  • 1. 什么是中断、异常? 中断:也称为外中断,指来自 CPU ...强迫中断包括硬件故障(如缺页) 和软件中断 (如整数除零)。 2. 为什么要引入中断机制? 在操作系统引入核心态和用户态后,需要引入相应的机制完成二者之间
  • 主要内容包括了:1.MCS-51的中断系统 ,2.MCS-51的定时/计数器, 3.MCS-51的串行接口   51子系列单片机应用广泛的一个重要 原因是它在一个芯片里集成了应用系统所需的大部分(或所有)硬件功能,本章叙述的...
  • linux中断系统调用

    2017-08-03 19:28:45
    调用中断int 0x80.并将参数传送到相应的寄存器中,供ENTRY(system_call)使用。 2.进入ENTRY(system_call)中,当系统调用合法时,根据索引值,在sys_call_table中找到相应的实际服务程序入口地址,并调用它。最后...
  • 一个完整的中断处理过程应该包括中断请求、中断排队或中断判优、中断响应、中断处理和中断返回等环节,下面分别进行讨论。1.中断请求中断请求是由中断源向CPU发出中断请求信号。外部设备发出中断请求信号要具备...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 3,778
精华内容 1,511
关键字:

中断系统包括