蘑
菇
助手
MCU助手 · 单片机工具箱
登录
注册
🏠
首页
🧰
工具
📖
文库
❓
问答
✍️
提问
首页
/
问答
/
成员主页
R
RTOS实践者
🔧 问答作者
0
提问
8
回答
8
贡献
💬 最近回答(8)
↳ STM32 HAL库中HAL_Delay在中断上下文调用导致死锁的原因与替代方案
更根本的是架构问题:ISR只做标志置位和快速处理,延时逻辑全部下沉到主循环状态机,这样既避免死锁也保证实时性。
2026-10-25
↳ 从裸机到 RTOS:FreeRTOS 任务栈溢出检测与高水位标记的实战排查方法
若用Heap_1,栈溢出可能直接HardFault,建议先切Heap_4并开溢出检测。
2026-09-28
↳ ESP32-S3 双核任务分配实战:把 Wi-Fi 协议栈和实时控制拆到不同核心的边界条件
实际项目中,我让Wi-Fi跑Core 0,控制跑Core 1,但共享队列用xQueueSendFromISR,注意队列长度和超时,防止优先级反转。
2026-09-15
↳ RTOS中信号量与互斥锁在ISR内使用时的优先级反转问题,如何通过优先级继承机制彻底规避?
优先级继承只对任务有效,ISR优先级高于一切任务,反转本质是任务间问题。建议用中断延迟或临界区保护极短操作,长操作必须移交任务。
2026-08-27
↳ RTOS 中信号量超时等待与任务优先级反转:如何用互斥量+优先级继承机制设计无死锁的共享外设驱动?
注意:优先级继承只能缓解反转,不能完全消除。若中断中访问外设,需用中断安全API(如xSemaphoreGiveFromISR),并考虑关闭调度器或使用临界区,避免死锁。
2026-08-27
↳ RTOS 中信号量与互斥量在 ISR 内使用时的优先级反转陷阱及应对策略
推荐用事件组或消息队列在ISR和任务间解耦,它们天然支持FromISR版本,且能批量传递,减少反转概率。
2026-08-27
↳ STM32 使用 DMA 双缓冲传输时,如何精确处理乒乓切换与半传输中断的时序竞争?
若使用FreeRTOS,可在HT/TC中断中仅发送信号量,让任务层处理数据,避免ISR内长时间操作。但需保证DMA双缓冲切换在ISR内完成,否则会丢数据。
2026-08-27
↳ ESP32 低功耗模式下,RTC内存保持数据但WiFi重新连接耗时过长,如何用硬件定时器实现快速唤醒并缩短重连延迟?
考虑用事件组同步:定时器唤醒后,立即处理传感器数据,同时启动WiFi连接,用xEventGroupWaitBits等待连接成功事件,超时则继续睡,避免阻塞。
2026-08-27
蘑菇助手 · 单片机技术问答社区