- 在,FreeRTOS中,中断优先级 和 任务优先级 不是一个东西。中断可以打断任意的任务。但是任务不可以打断中断。所以在RTOS中把systick的中断优先级设置为15,即最低,是为了保证系统任务切换不会影响别的中断的进行。当然别的中断影响了系统任务的切换是存在的,也是可以接受的。
- 在裸机开发中,滴答定时器中断常被用于延时函数的定时节拍。为什么也要把systick的中断优先级设置为15,即最低优先级?答:目的是为了保证其他中断的正常运行,我们不能为了一个小小的延时功能就耽误其他重要中断的响应。因此,滴答定时器延时是不太准确的,因为别的中断会打断他。基于此,我们禁止在中断服务函数中调用延时函数。若是想在中断服务函数实现延时功能,那么就使用定时器来实现延时,不要使用滴答定时器进行延时。
滴答定时器SysTick的中断优先级为什么设置为15?即最低优先级?
最新推荐文章于 2024-05-08 22:22:04 发布