谁知道 为什么 NVIC设置 中断优先级分组时 SCB->AIRCR 要或上 0X05FA0000; 吗???
0x05FA0000 = 0000 0101 1111 1010 0000 0000 0000 0000
你设置的的优先级组 值 与 0x05FA0000 按位或关系。
也就是说,你只能修改bit值为0 的位,
bit值为1 的,不论你设置的是1 还是0 最后与MASK或关系之后,都为1.
内核规定就是这样的,必须这样操作。
AIRCR这个寄存器是STM32的内核cm3内部的寄存器,所以在stm32的参考手册上是没有的。你查不到。在cm3的权威指南手册上就有的。
0x05FA 是访问钥匙:任何对该寄存器的写操作,都必须同时把 0x05FA 写入此段,否则写操作被忽略。若读取此半字,则 0xFA05。
你看看cm3权威指南手册的第112页。