第七章嵌套矢量中断控制器(Cortex-M7 Processor)

第七章嵌套矢量中断控制器(Cortex-M7 Processor)_第1张图片

 

目录

 

第七章嵌套矢量中断控制器

 7.1关于NVIC

7.2NVIC功能描述

7.2.1低功耗模式

7.2.2电平与脉冲中断

7.3NVIC程序员模型

 7.3.1中断控制器类型寄存器


第七章嵌套矢量中断控制器

本章描述了嵌套矢量中断控制器(NVIC)。它包含以下部分:

  • 关于NVIC在7-2页。
  • NVIC功能描述见第7-3页。
  • NVIC程序员模型在第7-4页。

 7.1关于NVIC

NVIC为处理器提供了可配置的中断处理能力。它:

  • 促进低延迟异常和中断处理。
  • 控制电源管理。

7.2NVIC功能描述

NVIC最多支持240个中断,每个中断最多支持256个优先级。你可以动态地改变中断的优先级。NVIC和处理器核心接口紧密耦合,以实现低延迟中断处理和高效延迟处理中断。NVIC维护要启用的堆叠或嵌套中断的知识中断的尾链。

只能从特权模式完全访问NVIC,但进入用户模式访问会导致中断,导致总线故障。如果启用配置和控制寄存器,则在用户模式下处于挂起状态。任何其他

您可以仅使用字访问访问所有NVIC寄存器。有关NVIC的更多信息寄存器的可访问性及其使用限制,参见Arm*v7-M架构参考手册。处理器异常处理在第2-10页的异常中有描述。

7.2.1低功耗模式

你的实现可以包括一个唤醒中断控制器(WIC)。这使得处理器和NVIC可以进入一个非常低功耗的睡眠模式,让WIC来识别和优先处理中断。当使用WIC时,必须在系统控制寄存器中启用SLEEPDEEP。

处理器完全实现了等待中断(WFI)、等待事件(WFE)和发送事件(SEV)指令。此外,处理器还支持使用SLEEPONEXIT,即线程模式。有关更多信息,请参阅Arm v7-M架构参考手册。导致处理器内核从异常处理程序返回时进入休眠模式 

7.2.2电平与脉冲中断

处理器支持电平中断和脉冲中断。一个电平中断被保持断言,直到它被接入设备的ISR清除。脉冲中断是边缘模型的一种变体。你必须确保脉冲在处理器时钟的上升沿采样,而不是FCLK是异步的。

对于电平中断,如果信号在中断例程返回之前没有解除断言,中断再次进入挂起状态并重新激活。这对于FIFO和基于缓冲区的设备特别有用,因为它确保它们要么通过单个ISR耗尽,要么通过重复ISR耗尽调用,不需要额外的工作。这意味着设备将信号保持在assert状态,直到设备为空。

在ISR期间可以重新插入脉冲中断,以便中断可以处于挂起状态状态和活动同时进行。如果另一个脉冲到达,而中断仍然挂起,则中断保持挂起状态,ISR只运行一次。脉冲中断主要用于外部信号和速率或重复信号。

7.3NVIC程序员模型

这个部分描述了NVIC寄存器,它的实现是特定于这个处理器的。其他寄存器在Arm*v7-M架构参考手册中有描述。NVIC寄存器如表7-1所示。

第七章嵌套矢量中断控制器(Cortex-M7 Processor)_第2张图片

 7.3.1中断控制器类型寄存器

卢旺达问题国际法庭的特点是:

目的        显示NVIC支持的中断线的数目。

使用约束        没有使用约束。

配置属性        可用于所有配置。

请参见表7-1中的寄存器摘要。ICTR位分配如图7-1所示。

第七章嵌套矢量中断控制器(Cortex-M7 Processor)_第3张图片

 第七章嵌套矢量中断控制器(Cortex-M7 Processor)_第4张图片

 

你可能感兴趣的:(Arm-Cortex-M7,单片机,嵌入式硬件)