• 中断、异常、事件


    中断与异常有什么区别:

    1、中断:系统停止当前正在运行的程序而转向其他服务,可能是因为优先级高的请求

    服务了,或者是因为人为安排中断。中断是属于正常现象。  

    异常:是由于软件错误而引起的

    2、中断是CPU所具备的功能   --   硬件  

    异常是软件运行过程中的一种开发过程中没有考虑到的程序错误   --   软件  

    3

    1)中断的概念    

    所谓中断是指CPU对系统发生的某个事件作出的一种反应:CPU暂停正在执行的程序,保留现场后自动地转去执行相应的处理程序,处理完该事件后再返回断点继续执行被“打断”的程序。  

     

    引起中断的事件称为中断源,中断源向CPU提出进行处理的请求称为中断请求。    

       

    2)中断类型    

       

    按中断事件来源进行分类,主要有两类:    

    1)中断。由CPU以外的事件引起的中断,如I/O中断、时钟中断、控制台中断等。

    2)异常(exception)。来自CPU的内部事件或程序执行中的事件引起的过程。如由于CPU本身故障、程序故障和请求系统服务的指令引起的中断等。    

     

    中断和事件有什么区别:

    中断、异常、事件

       这张图是一条外部中断线或外部事件线的示意图,图中信号线上划有一条斜线,旁边标志19字样的注释,表示这样的线路共有19套。

    图中的蓝色虚线箭头,标出了外部中断信号的传输路径,首先外部信号从编号1的芯片管脚进入,经过编号2的边沿检测电路,通过编号3的或门进入 中断挂起请求寄存器,最后经过编号4的与门输出到NVIC中断控制器;在这个通道上有4个控制选项,外部的信号首先经过边沿检测电路,这个边沿检测电 路受上升沿或下降沿选择寄存器控制,用户可以使用这两个寄存器控制需要哪一个边沿产生中断,因为选择上升沿或下降沿是分别受2个平行的寄存器控制,所以用 户可以同时选择上升沿或下降沿,而如果只有一个寄存器控制,那么只能选择一个边沿了。

    接下来是编号3的或门,这个或门的另一个输入是软件中断/事件寄存器,从这里可以看出,软件可以优先于外部信号请求一个中断或事件,即当软件中断/事件寄存器的对应位为“1”时,不管外部信号如何,编号3的或门都会输出有效信号。

    一个中断或事件请求信号经过编号3的或门后,进入挂起请求寄存器,到此之前,中断和事件的信号传输通路都是一致的,也就是说,挂起请求寄存器中记录了外部信号的电平变化。

    外部请求信号最后经过编号4的与门,向NVIC中断控制器发出一个中断请求,如果中断屏蔽寄存器的对应位为“0”,则该请求信号不能传输到与门的另一端,实现了中断的屏蔽。

       明白了外部中断的请求机制,就很容易理解事件的请求机制了。图中红色虚线箭头,标出了外部事件信号的传输路径,外部请求信号经过编号3的或门后,进入编号5的与门,这个与门的作用与编号4的与门类似,用于引入事件屏蔽寄存器的控制;最后脉冲发生器把一个跳变的信号转变为一个单脉冲,输出到芯片中的其它功能模块。

    在这张图上我们也可以知道,从外部激励信号来看,中断和事件是没有分别的,只是在芯片内部分开,一路信号会向CPU产生中断请求,另一路信号会向其它功能模块发送脉冲触发信号,其它功能模块如何相应这个触发信号,则由对应的模块自己决定。

    在图上部的APB总线和外设模块接口,是每一个功能模块都有的部分,CPU通过这样的接口访问各个功能模块,这里就不再赘述了。

    事件本质上就是一个触发信号,是用来触发特定的外设模块或核心本身(唤醒),而中断则是一个固定的电平信号,上图可以清楚地认识这一点.

    总结:

    1)事件是中断的触发源,开放了对应的中断屏蔽位,则事件可以触发相应的中断。

    2)事件还是其他一些操作的触发源,比如DMA,ADC,还有TIM中的影子寄存器的传递与更新;而中断时不能触发这些操作的,所以要把事件和中断区分开。

        (3)在STM32中,中断与事件不是等价的,一个中断肯定对应一个事件,但一个事件不一定对应一个中断。
  • 相关阅读:
    查找list中的重复数据,并得到不重复数据索引位置
    sql server 存储过程中使用事务
    C#获取web.config配置文件内容
    SendKeys.Send 方法
    C# 获取当前路径方法(转载)
    asp.net中URL参数传值中文乱码的三种解决办法
    无法 连接到SQLEXPRESS 已成功与服务器建立连接,但是在登录过程中发生错误。管道的另一端无任何进程
    Windows7 IIS7 无法启动计算机上的服务W3SVC如何修复,计算机上无法找到.was解决方案 visita iis 7.0
    EXCEL开发Interior.ColorIndex 色彩列表
    asp.net web 登录文本框的回车设计
  • 原文地址:https://www.cnblogs.com/lihaiping/p/STM32.html
Copyright © 2020-2023  润新知