00:00 / 00:35
连播
清屏
智能
倍速
点赞0
00:00 / 00:32
连播
清屏
智能
倍速
点赞0
00:00 / 00:30
连播
清屏
智能
倍速
点赞3
00:00 / 00:32
连播
清屏
智能
倍速
点赞4
00:00 / 00:30
连播
清屏
智能
倍速
点赞0
00:00 / 00:28
连播
清屏
智能
倍速
点赞0
00:00 / 00:39
连播
清屏
智能
倍速
点赞0
00:00 / 00:31
连播
清屏
智能
倍速
点赞1
00:00 / 00:16
连播
清屏
智能
倍速
点赞0
00:00 / 00:24
连播
清屏
智能
倍速
点赞0
00:00 / 00:34
连播
清屏
智能
倍速
点赞0
00:00 / 00:33
连播
清屏
智能
倍速
点赞2
00:00 / 00:31
连播
清屏
智能
倍速
点赞1
00:00 / 00:31
连播
清屏
智能
倍速
点赞0
00:00 / 00:35
连播
清屏
智能
倍速
点赞0
00:00 / 00:19
连播
清屏
智能
倍速
点赞0
00:00 / 00:28
连播
清屏
智能
倍速
点赞0
00:00 / 00:30
连播
清屏
智能
倍速
点赞0
00:00 / 00:15
连播
清屏
智能
倍速
点赞0
红线配置:configMAX_SYSCALL_INTERRUPT_PRIORITY,别乱改 这是FreeRTOS里最容易被忽略、后果最严重的配置项,很多新手不知道它的作用,随手乱改,直接导致系统不稳定。 一句话说清它的作用:不是所有中断都能调用RTOS API。只有中断优先级,数值上大于这个配置项的中断,才能调用FromISR API;优先级太高的中断,不允许触碰RTOS内核。 比如空调的紧急停机中断,优先级极高,必须保证实时响应,就不能调用任何RTOS API,只能做最基础的状态读取和标志清除;而传感器采集中断,优先级较低,才能调用FromISR API通知任务。 如果在高优先级中断里调用了FromISR API,系统行为就会变得不可预测——不是一定崩,而是你再也推理不出它会怎么运行,现场翻车概率极高。 3个灵魂拷问,判断你的中断代码是否安全 写空调RTOS中断代码时,反复问自己3个问题,能避开80%的坑: 1. 这段逻辑,真的必须在中断里做吗?比如解析数据、打印日志,交给任务做完全可以; 2. 把它放到任务里,会发生什么?只要不影响实时性,就坚决移出中断; 3. 它是否触碰了RTOS的边界?比如调用了普通API、操作了共享资源,都是越界。 最后总结一下,空调RTOS开发中,中断的核心就是“克制”。 中断是系统的“强制插队者”,RTOS允许它插队,但不允许它在队伍里乱搞——只做最基础的通知工作,把复杂逻辑交给任务,尊重中断与RTOS的边界,系统才能稳定运行。 很多空调RTOS项目崩溃,不是任务设计得不好,而是中断越过了自己的边界。吃透今天讲的规则,避开这些坑,你的空调MCU系统,稳定性会提升一个档次。
00:00 / 06:22
连播
清屏
智能
倍速
点赞5
00:00 / 00:34
连播
清屏
智能
倍速
点赞0
00:00 / 00:38
连播
清屏
智能
倍速
点赞0
00:00 / 00:39
连播
清屏
智能
倍速
点赞0
00:00 / 00:30
连播
清屏
智能
倍速
点赞7
00:00 / 00:31
连播
清屏
智能
倍速
点赞1
00:00 / 00:37
连播
清屏
智能
倍速
点赞0
00:00 / 01:40
连播
清屏
智能
倍速
点赞198