Embedded 嵌套中断向量控制器

Embedded 嵌套中断向量控制器,embedded,interrupt,interrupt-handling,interrupted-exception,Embedded,Interrupt,Interrupt Handling,Interrupted Exception,我一直在努力与NVIC,为什么它被使用?它是如何使用的? 在我的项目中,我使用 NVIC_IntDisable(NVIC_SSP0); NVIC_ClrPend(NVIC_PIO_0); NVIC_IntPri(NVIC_PIO_0, 17); NVIC_IntEnable(NVIC_PIO_0); 这些都是在system.c中定义的。有人能解释一下为什么使用这些命令以及使用特定命令的原因吗。请提一下我能参考的任何好材料 谢谢。NVIC是一种嵌套的矢量中断控制器(类

我一直在努力与NVIC,为什么它被使用?它是如何使用的? 在我的项目中,我使用

 NVIC_IntDisable(NVIC_SSP0); 
 NVIC_ClrPend(NVIC_PIO_0);
 NVIC_IntPri(NVIC_PIO_0, 17);    
 NVIC_IntEnable(NVIC_PIO_0);     
这些都是在
system.c
中定义的。有人能解释一下为什么使用这些命令以及使用特定命令的原因吗。请提一下我能参考的任何好材料


谢谢。

NVIC是一种嵌套的矢量中断控制器(类似于x86 PC上的PIC)

你可以在ARM网站上获得更多信息
以及子体系结构的特定芯片数据表和ARM手册。

能否更具体一些。事实上,您的问题要求提供数据表中几乎所有的信息。虽然专家可能很明显您指的是ARM NVIC,但您的问题是特定于垂直目标的,因此您应该指定目标。另外,文件系统.c是特定于您的应用程序、库或开发工具链的,因此您可能也应该指定它。最终,您需要阅读ARM技术文档以了解详细信息;简单一点的介绍也许是约瑟夫·姚(Joseph Yiu)的一本书(假设为ARM Cortex-M)。然而,如果你要问NVIC的用途,你可能首先需要学习一些中断和微处理器的基础知识。我个人觉得这篇博文对理解NVIC很有帮助:。它以一种易于理解的方式详细解释了基于ARM Cortex-M的系统的中断系统。这个答案所做的只是陈述OP已经知道的内容(从阅读问题中可以明显看出),然后删除一个指向手册的链接。事实上,这个问题很可能过于宽泛,无法以目前的形式得到回答。好吧,这个问题还要求“良好的母性”,我将其链接到。我还要求作出澄清。另一种选择是对问题投否决票,但这似乎效率更低。