目录
configKERNEL_INTERRUPT_PRIORITY
configMAX_SYSCALL_INTERRUPT_PRIORITY
portDISABLE_INTERRUPTS(); 关中断 portENABLE_INTERRUPTS(); 开中断
taskENTER_CRITICAL() 和 taskEXIT_CRITICAL()
taskENTER_CRITICAL_FROM_ISR() 和 taskEXIT_CRITICAL_FROM_ISR()
(1)首先了解FreeRTOSConfig.h中的宏。
configKERNEL_INTERRUPT_PRIORITY
此宏是定义内核中断优先级的,决定了可以有多少个优先级。
configMAX_SYSCALL_INTERRUPT_PRIORITY
此宏是定义系统中断权限的。高于此中断优先级的中断,内核无法禁止.
举个例子:STM32 设置为16个优先级 ,0为最高,16为最低。配置为configKERNEL_INTERRUPT_PRIORITY=15,
configMAX_SYSCALL_INTERRUPT_PRIORITY=5.
则高级别的中断0-4,不会被内核屏蔽。