核心原则是把WiFi/协议栈固定在Core 0,用户实时任务放Core 1,并避免在用户任务里长时间关中断或忙等。具体做法:1) 用xTaskCreatePinnedToCore创建用户任务时指定core=1,WiFi由系统默认在Core 0运行,不要手动改协议栈亲和性;2) 用户任务中所有阻塞操作(如vTaskDelay、队列等待、信号量)都要让出CPU,禁止while(1)空转;3) 对耗时计算分段处理,每段后调用vTaskDelay(1)或taskYIELD(),防止单任务长期占用Core 1导致IDLE任务无法喂狗;4) 若用户任务优先级高于IDLE,确保其阻塞时间小于看门狗超时(默认5s),必要时调大CONFIG_ESP_TASK_WDT_TIMEOUT_S;5) 共享资源用互斥量/队列,避免自旋锁长时间持有;6) 监控uxTaskGetStackHighWaterMark和看门狗复位原因,定位是任务饿死还是中断延迟。这样WiFi与用户任务各占一核,互不抢占,看门狗可正常喂狗。