STM32MP157A中EXTI、GIC、NVIC是什么?他们的作用是什么?他们如何工作?
时间: 2023-09-01 21:11:20 浏览: 317
STM32MP157A是一款基于Arm Cortex-A7和Cortex-M4内核的多核片上系统。EXTI、GIC、NVIC是与中断处理相关的重要组件,具体说明如下:
1. EXTI(External Interrupt):是一个外部中断控制器,用于处理外部事件的中断。它允许外部设备通过引脚来触发STM32MP157A中断请求线。当外部设备触发中断请求时,EXTI会向CPU发送中断信号,CPU则会停止当前任务并处理中断,然后继续执行之前的任务。
2. GIC(Generic Interrupt Controller):是一个通用的中断控制器,用于管理和处理所有的中断请求。在STM32MP157A中,GIC是负责管理所有的中断请求并将它们分配给适当的处理器核和中断处理程序的中断控制器。GIC负责维护中断控制器的状态以及中断处理程序的映射表。
3. NVIC(Nested Vectored Interrupt Controller):是一个嵌套向量中断控制器,用于处理中断请求。在STM32MP157A中,NVIC是负责管理所有中断请求的中断控制器。它可以管理多达240个中断请求,每个中断请求都有一个优先级,并且可以被分配给不同的中断处理程序。
EXTI、GIC和NVIC的工作方式如下:
1. EXTI:当外部设备触发中断请求时,它会向EXTI发送一个中断请求信号。EXTI会将该信号传递给GIC,然后GIC将该中断请求分配给适当的处理器核和中断处理程序。
2. GIC:负责管理所有的中断请求,并将它们分配给适当的处理器核和中断处理程序。当中断请求发生时,GIC会将中断请求信号传递给适当的中断处理程序,然后中断处理程序会根据中断类型执行相应的操作。
3. NVIC:管理所有的中断请求,并将它们分配给适当的中断处理程序。当中断请求发生时,NVIC会根据中断优先级确定中断处理程序的执行顺序,并将中断请求传递给适当的中断处理程序。
阅读全文