STM32的中断与事件

转载 2015年11月04日 22:50:57

这张图是一条外部中断线或外部事件线的示意图,图中信号线上划有一条斜线,旁边标志19字样的注释,表示这样的线路共有19套.图中的蓝色虚线箭头,标出了外部中断信号的传输路径,首先外部信号从编号1的芯片管脚进入,经过编号2的边沿检测电路,通过编号3的或门进入中断挂起请求寄存器,最后经过编号4的与门输出到NVIC中断检测电路,这个边沿检测电路受上升沿或下降沿选择寄存器控制,用户可以使用这两个寄存器控制需要哪一个边沿产生中断,因为选择上升沿或下降沿是分别受2个平行的寄存器控制,所以用户可以同时选择上升沿或下降沿,而如果只有一个寄存器控制,那么只能选择一个边沿了.
接下来是编号3的或门,这个或门的另一个输入是软件中断/事件寄存器,从这里可以看出,软件可以优先于外部信号请求一个中断或事件,即当软件中断/事件寄存器的对应位为"1"时,不管外部信号如何,编号3的或门都会输出有效信号.
一个中断或事件请求信号经过编号3的或门后,进入挂起请求寄存器,到此之前,中断和事件的信号传输通路都是一致的,也就是说,挂起请求寄存器中记录了外部信号的电平变化。外部请求信号最后经过编号4的与门,向NVIC中断控制器发出一个中断请求,如果中断屏蔽寄存器的对应位为"0",则该请求信号不能传输到与门的另一端,实现了中断的屏蔽.
明白了外部中断的请求机制,就很容易理解事件的请求机制了.图中红色虚线箭头,标出了外部事件信号的传输路径,外部请求信号经过编号3的或门后,进入编号5的与门,这个与门的作用与编号4的与门类似,用于引入事件屏蔽寄存器的控制;最后脉冲发生器的一个跳变的信号转变为一个单脉冲,输出到芯片中的其它功能模块.从这张图上我们也可以知道,从外部激励信号来看,中断和事件的产生源都可以是一样的.之所以分成2个部分,由于中断是需要CPU参与的,需要软件的中断服务函数才能完成中断后产生的结果;但是事件,是靠脉冲发生器产生一个脉冲,进而由硬件自动完成这个事件产生的结果,当然相应的联动部件需要先设置好,比如引起DMA操作,AD转换等;
简单举例:外部I/O触发AD转换,来测量外部物品的重量;如果使用传统的中断通道,需要I/O触发产生外部中断,外部中断服务程序启动AD转换,AD转换完成中断服务程序提交最后结果;要是使用事件通道,I/O触发产生事件,然后联动触发AD转换,AD转换完成中断服务程序提交最后结果;相比之下,后者不要软件参与AD触发,并且响应速度也更块;要是使用事件触发DMA操作,就完全不用软件参与就可以完成某些联动任务了。
总结:
可以这样简单的认为,事件机制提供了一个完全有硬件自动完成的触发到产生结果的通道,不要软件的参与,降低了CPU的负荷,节省了中断资源,提高了响应速度(硬件总快于软件),是利用硬件来提升CPU芯片处理事件能力的一个有效方法;

STM32的“外部中断”和“事件”区别和理解

凡从事过ST MCU应用开发的人往往会遇到事件、中断事件 中断三个概念或术语。这三个概念彼此关联,有时会让人有点混淆或犯迷糊。 先拿一件生活中的事情打比方对上述三个概念做个基本的粗略理解,之后再分享...
  • tanyjin
  • tanyjin
  • 2016年11月27日 00:25
  • 2670

STM32中异常、中断、事件辨析

参考: Cortex-M3权威指南(中文) STM32参考手册中文版(第10版)1 异常与中断(Cortex-M3)1.1 异常与中断 原话: Cortex‐M3 在内核水平上搭载了一个...
  • u010315587
  • u010315587
  • 2015年11月28日 19:21
  • 2401

【知识点】STM32之中断与事件的区别

原文地址:http://blog.csdn.net/flydream0/article/details/8208463 这张图是一条外部中断线或外部事件线的示意图,图中信号线上划有一条斜线,旁边...
  • jiasike
  • jiasike
  • 2015年05月26日 16:20
  • 1768

关于STM32通用定时器更新事件中断

//定时器3中断服务程序   void TIM3_IRQHandler(void)  {                    if(TIM3->SR&0X0001) //产生更新事件   {...
  • wjs1033
  • wjs1033
  • 2017年05月03日 21:30
  • 1274

STM32事件 中断事件 中断的详解

STM32事件 中断事件 中断的详解 凡从事过ST MCU应用开发的人往往会遇到事件、中断事件 中断三个概念或术语。这三个概念彼此关联,有时会让人有点混淆或犯迷糊。 先拿一件生活中的事情打比方对上...
  • xkf321
  • xkf321
  • 2016年11月08日 21:42
  • 535

stm32中断与事件

这张图是一条外部中断线或外部事件线的示意图,图中信号线上划有一条斜线,旁边标志19字样的注释,表示这样的线路共有19套.图中的蓝色虚线箭头,标出了外部中断信号的传输路径,首先外部信号从编号1的芯片管脚...
  • u011308691
  • u011308691
  • 2014年08月06日 16:07
  • 606

STM32事件与中断

事件是中断的触发源,开放了对应的中断屏蔽位,则事件可以触发相应的中断。 事件还是其它一些操作的触发源,比如DMA,还有TIM中影子寄存器的传递与更新;而中断是不能触发这些操作的,所以要把事件与中断区...
  • qq_27865227
  • qq_27865227
  • 2018年01月30日 02:04
  • 21

STM32中断与事件

这张图是一条外部中断线或外部事件线的示意图,图中信号线上划有一条斜线,旁边标志19字样的注释,表示这样的线路共有19套。        图中的蓝色虚线箭头,标出了外部中断信号的传输路径,首先外部信...
  • cepass
  • cepass
  • 2011年08月06日 10:20
  • 605

STM32 中断与事件

原文:http://blog.csdn.net/flydream0/article/details/8208463 这张图是一条外部中断线或外部事件线的示意图,图中信号线上划有一条斜线,旁边...
  • qq_30479727
  • qq_30479727
  • 2017年03月23日 12:27
  • 228

STM32之中断

1、NVICNested vectored interrupt controller :可嵌套向量中断控制器 (NVIC) NVIC 特性 82个可屏蔽中断 ##不包括内核的16个...
  • u013904227
  • u013904227
  • 2016年06月18日 11:57
  • 4996
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:STM32的中断与事件
举报原因:
原因补充:

(最多只允许输入30个字)