您好、欢迎来到现金彩票网!
当前位置:彩63彩票app下载 > 高优先级中断 >

Cortex-M3处理器中断和FreeRTOS中断优先级配置

发布时间:2019-05-14 05:23 来源:未知 编辑:admin

  可以参看我之前分享文章:从Cortex-M到Cortex-A认识ARM处理器,了解一下关于ARM处理器的种类。

  本文主要结合Cortex-M3下面STM32F1系列处理器为例来讲述中断控制相关内容。而Cortex-M其它系列,或者说STM32其它系列关于中断的内容类似。

  STM32中NVIC我们比较熟悉,编程的时候使用中断都会对NVIC进行配置。

  NVIC向量中断控制器是Cortex‐M3不可分离的一部分,它与 CM3 内核的逻辑紧密耦合,有一部分甚至水乳交融在一起。

  Cortex-M3的NVIC支持1至240个中断输入,比如STM32中xxxIRQs,也就是中断向量表,具体的数值由芯片厂商在设计芯片时决定。

  很多初学的朋友不知道什么是中断?什么是异常?甚至有人直接把中断和异常笼统称为“中断”。

  中断和异常其实有差异,也有关联,我们常说的中断其实是包含了异常。异常可以理解为mcu,或者程序处于了某种异常状态。

  这么区分吧,看上面向量表,上部分有灰色背景的为异常,下部分白色的为中断。

  异常属于Cortex‐M3内核的一部分,而中断属于MCU(STM32)的一部分(由厂家决定)。

  1.站在Cortex‐M3内核角度,像STM32中USART这类中断,属于外部中断。

  每个寄存器占用8位,但是允许最少只使用最高3位,在STM32F1中使用了高4位。(也就是我们可以分16个优先级)

  2.优先级分组:Cortex-M3,M4具有分组功能,即存在抢占优先级和响应优先级,如下图:

  本节内容讲述一下FreeRTOS最大中断优先级配置问题,也就是FreeRTOSConfig.h配置文件中的:

  上面说了,在STM32中,使用了NVIC优先级的高4位,而我们配置时需要对高4位进行配置(低4位未使用)。

  这个配置数值的含义,大概意思是:你代码中使用的中断(比如USART1_IRQn)优先级需要大于5才可行。

  FreeRTOS任务优先级是数值越大,优先级越高。需要和中断优先级区分开来。

http://bed-plans.net/gaoyouxianjizhongduan/238.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有