FreeRTOS-中断相关坑
FreeRTOS-中断相关坑
1. FreeRTOS中断的配置
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,如果使能则优先级必须配置在规定的范围内。
分类:
FreeRTOS
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律