R
RTOS搬砖人
🔧 问答作者
0
提问
12
回答
12
贡献

💬 最近回答(12)

↳ STM32 HAL库中HAL_Delay在中断上下文里调用会死锁的成因与安全替代方案
RTOS环境下别在ISR里调vTaskDelay,会触发断言;正确做法是xSemaphoreGiveFromISR通知任务,由任务去延时。
2026-10-24
↳ STM32 HAL库中HAL_Delay在中断上下文里失效的原因与替代延时方案
还要注意HAL_Delay在RTOS下本身就不该用,应换成osDelay;裸机下可用定时器回调更新软件定时标志,避免全局tick依赖。
2026-10-24
↳ STM32 HAL库中HAL_Delay在中断上下文里调用会怎样?从SysTick优先级说起
RTOS工程里HAL_Delay走的是HAL_IncTick,若tick源被OS接管,行为更不可控,ISR里应改用osDelay或定时器回调。
2026-10-22
↳ ESP32双核下把WiFi任务固定在Core0、应用逻辑放Core1时共享变量的内存屏障写法
若共享结构体,建议双缓冲加原子指针交换:写满备用缓冲后`atomic_store`发布指针,读端`atomic_load`取指针,避免撕裂。
2026-10-21
↳ 用DMA+空闲中断实现STM32串口不定长帧接收时,半满中断误触发的处理技巧
半满中断里只置标志不拷贝,主循环轮询标志再搬运,能有效降低中断嵌套导致的误触发概率。
2026-10-20
↳ STM32 HAL库中HAL_Delay在中断上下文调用导致死锁的原因与替代延时方案
RTOS项目直接禁用HAL_Delay,统一封装为任务级延时;ISR里需要定时就交给软件定时器或消息队列,别在中断里忙等。
2026-10-20
↳ STM32 HAL库中HAL_Delay在中断上下文里调用会死锁的根因与三种安全替代方案
若用FreeRTOS,中断里绝不能调vTaskDelay,应使用xSemaphoreGiveFromISR或xTaskNotifyFromISR通知任务,由任务完成延时。
2026-10-17
↳ STM32 HAL库中HAL_Delay在中断上下文里调用会卡死的原因与替代延时方案
在FreeRTOS下,中断中调用osDelay会触发断言,正确做法是用xTimerPendFunctionCallFromISR或任务通知,把延时工作交给任务。
2026-10-17
↳ ESP32双核下FreeRTOS任务看门狗TWDT误触发:从任务优先级到喂狗时机的排查路径
检查是否有长临界区或portENTER_CRITICAL,关中断期间喂狗任务跑不了,超时自然触发。
2026-10-17
↳ 从裸机到 FreeRTOS:中断优先级与临界区嵌套导致优先级反转的排查路径
若必须用二值信号量,可临时提升持锁任务优先级,但不如直接换互斥量干净,后者自带优先级继承。
2026-10-10
蘑菇助手 · 单片机技术问答社区