两个定时器做测试,timer1优先级为4,timer2优先级为13
下面:都配置为11
#define configMAX_SYSCALL_INTERRUPT_PRIORITY 191 /* equivalent to 0xb0, or priority 11. */
#define configLIBRARY_KERNEL_INTERRUPT_PRIORITY 11
当在一个任务里调用portDISABLE_INTERRUPTS(); 时,两个定时器都无法关闭。
但是调用vPortEnterCritical();时却可以正常关闭timer2,这个是正确的。
为何用portDISABLE_INTERRUPTS(); 不能关闭timer2呢?正点原子的视频里也提到portDISABLE_INTERRUPTS(); 是可以正常关闭的,求解 |