FreeRTOS-中断相关坑


FreeRTOS-中断相关坑

1. FreeRTOS中断的配置

image
LIBRARY_LOWEST_INTERRUPT_PRIORITY:配置FreeRTOS最低优先级,SysTick和PendSV默认在此优先级
LIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY:高于该配置的优先级中断中都不能调用freertos的任何API,但是同时他也不会受freertos的内核影响而可以得到最实时的响应。如这里配置为5,uart1配置为4优先级,则uart1不受系统接管并且不能调用FreeRTOS的API。

2. 注意

如果LIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY配置为5。并且NVIC中配置的优先级符合接管条件(优先级大小为FreeRTOS可以接管的大小),那么在freertos运行之前(osKernelStart之前)配合相关中断的开关是不起作用的。
需要注意

  • 中断资源需不需要系统管理
  • 被系统管理的中断资源的控制应在系统运行起来之后
  • 不受系统管理的中断资源不能调用系统的API

下图中Uses FreeRTOS functions为是否要使用freertos的API,如果使能则优先级必须配置在规定的范围内。

image


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM