程序段1: 开机之后设置 IntPrioritySet(INT_WATCHDOG,1<<5);//最高优先级 IntPrioritySet(INT_GPIOA,2<<5);//第二级中断优先级 很明显,看门狗的优先级较GPIOA的优先级要高,即看门狗可以中断GPIOA
程序段2: 开机之后设置,但是没有设置GPIOA的优先等级(即为默认优先级 PRI_0 为0x00) IntPrioritySet(INT_WATCHDOG,7<<5);//最高优先级 那么问题是:看门狗和GPIOA的中断等级谁更高?
------- 我的程序中有一个现象: IntPrioritySet(INT_GPIOA,2<<5);//第二级中断优先级 而我的INT_TIMER0A没有设置优先级,按理说应该是GPIOA的中断等级比TIMER0A的高,但是却发现GPIOA的中断服务程序却可以被TIMER0A中断
-------- 请帮忙解释一下上述现象,谢谢
|