TWDT误触发通常不是看门狗本身问题,而是某个核的idle任务长期得不到调度。定位步骤:1) 先确认触发源,打开CONFIG_ESP_TASK_WDT_PANIC或注册twdt回调,打印触发时正在运行的任务名与core id,区分是CPU0还是CPU1饥饿。2) 用vTaskGetRunTimeStats或esp_timer打点统计各任务CPU占用,重点查是否有高优先级任务死循环、忙等(如while(!flag))、或关中断/临界区过长。3) 检查是否在任务中调用了vTaskSuspendAll、portENTER_CRITICAL或禁用调度器,导致idle无法运行。4) 确认TWDT订阅情况:esp_task_wdt_add订阅的任务若未及时reset也会触发,需与idle饥饿区分。5) 若是单核被独占,可将耗时任务拆分并主动vTaskDelay(1)让出,或把TWDT超时从默认5s适当放宽,但根治要靠消除忙等。建议先用回调+运行时统计锁定饥饿核与元凶任务,再针对性优化。