当前位置:首页 > > 充电吧
[导读]几个基本概念: 1.ARM cortex_m3 内核支持 256 个中断(16 个内核+240 外部)和可编程 256 级中断优先级的设置,与其相关的中断控制和中断优先级控制寄存器(NVIC、SYST

几个基本概念:

 1.ARM cortex_m3 内核支持 256 个中断(16 个内核+240 外部)和可编程 256 级中断优先级的设置,与其相关的中断控制和中断优先级控制寄存器(NVIC、SYSTICK 等)也都属于cortex_m3 内核的部分。其中,STM32 目前支持的中断共为 84 个(16 个内核+68 个外部) ,和 16 级可编程中断优先级的设置(仅使用中断优先级设置 8bit 中的高 4 位) 。   

2.嵌套向量中断控制器( NVIC ) 和处理器核的接口紧密相连,可以实现低延迟的中断处理和高效地处理晚到的中断。  

 3.NVIC 共支持 1 至 240 个外部中断输入(通常外部中断写作 IRQs) 。具体的数值由芯片厂商在设计芯片时决定。此外,NVIC 还支持一个“永垂不朽”的不可屏蔽中断(NMI)输入。NMI 的实际功能亦由芯片制造商决定。在某些情况下,NMI 无法由外部中断源控制。  

 4.NVIC 的访问地址是 0xE000_E000。 所有 NVIC 的中断控制/状态寄存器都只能在特权级下访问。 不过有一个例外——软件触发中断寄存器可以在用户级下访问以产生软件中断。 所有的中断控制/状态寄存器均可按字/半字/字节的方式访问。 此外, 有几个中断屏蔽寄存器也与中断控制密切相关,它们属于“特殊功能寄存器” ,只能通过 MRS/MSR及 CPS 来访问。    

5.每个外部中断都在 NVIC 的下列寄存器中“挂号” : 使能与除能寄存器 悬起与“解悬”寄存器 优先级寄存器 活动状态寄存器、另外,

下列寄存器也对中断处理有重大影响 

异常掩蔽寄存器(PRIMASK, FAULTMASK 以及 BASEPRI) 

向量表偏移量寄存器 软件触发中断寄存器 

优先级分组位段   

 对于中断优先级分组 

中断优先级控制位还必须分成 2 组看:从高位开始,前面是定义抢先式优先级的位,后面用于定义子优先级。4bit 的分组组合可以有以下几种形式:在一个系统/工程中,通常只使用上面 5 种分配情况的一种,具体采用哪一种,需要在初始化时写入到一个 32 位寄存器 AIRC(Application Interrupt and Reset Control Register)的第[10:8]这 3 个位中。这 3 个 bit 位有专门的称呼:PRIGROUP(具体写操作后面介绍) 。比如你将 0x05(即上表中的编号)写到 AIRC 的[10:8]中,那么也就规定了你的系统中只有 4 个抢先式优先级,相同的抢先式优先级下还可以有 4 个不同级别的子优先级。   PS:对这4位进行分组,根据“分步用乘法”的规律,不管怎样(2^2 * 2^2 = 4 * 4 = 16 或者2^^4 = 16等)都是满足16位优先级的说法。   如: 中断分组设置函数         在 sys.c 里面只有一个函数就是 void NVIC_Configuration()中断配置函数,在这个函数里面我们只调用了固件库的中断分组配置函数,这只整个系统的中断分组为组别 2.这个函数在系统初始化的时候调用即可,并且永远只需要调用一次。 void NVIC_Configuration(void) {         

NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //设置 NVIC 中断分组 2:2 位抢占//优先级,2 位响应优先级 }

 

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭