1、stm32 进入中断服务之前 NVIC将哪些寄存器值保存到堆栈中呢?
2、假设中断3的优先级小于中断4 的优先级,当中断3在进行入栈操作是,中断4相应中断,这该如何处理
所有的特殊功能寄存器都是会保护的
应该是中断3处理完成后才会处理中断4的
1是的,
2这个属于中断嵌套,中断3的内容也会进去堆栈
应该是保存了所有运行时的RAM数据了吧
运行优先级高的程序先
将中断之前的所有寄存器内容存储下来。
中断进行嵌套后,高优先级的先运行
进入中断前会将当前的PC值,以及当前R0-R15寄存器的值放进堆栈
高优先级中断可以打断低优先级中断,低优先级中断对应的PC等值也会被入栈