c - 当前在任何任务或另一个 ISR 中的 RTOS 中发生中断时会发生什么情况?

标签 c embedded rtos

我读过这个question ,当一个中断正在执行时,这不是一个有效的答案,它不会始终禁用所有其他中断。它基于中断类型(在某些情况下我们需要在我们的程序中手动执行)。

My Question is what happens when a interrupt occurs while executing a interrupt ??? If Low priority interrupt is executing then High priority interrupt occurs the what will happen ?

最佳答案

这取决于系统。如果微 Controller /中断 Controller 支持嵌套中断并且应用程序启用该功能,则优先级较高的中断将中断优先级较低的中断。在这种情况下,低优先级中断将在高优先级中断完成时恢复。但如果系统不支持嵌套中断,则后续中断请求将挂起并在主动中断服务程序完成时得到服务。

关于c - 当前在任何任务或另一个 ISR 中的 RTOS 中发生中断时会发生什么情况?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44127830/

相关文章:

c - 使用 scanf() 的管道的意外行为

c - 字符串创建时的段错误

c - Arduino (AVR ATMega328) Timer1 似乎没有在正确的时间触发

java - 我可以在 QNX 上使用 Java 吗?

c - 硬件启发循环。废话?

stack - 在 FreeRtos 或 TI rtos 中计算堆栈大小

c - 使用宏定义简化编码

c - 使用 std=c99 强制 gcc 中的内联函数

arm - 实时操作系统中的实时操作系统

rtos - 使用 MSP430f5438 时 FreeRTOS sleep 模式的危险