ESP32 喂狗

1、背景

下载大文件时,碰到喂狗问题。因此需要对任务喂狗事情做一些了解。

1.1 参考资料

ESP32 任务看门狗(TaskWDT)组件与用户任务监控 https://blog.csdn.net/abc517789065/article/details/80169825

ESP32 官方手册 https://docs.espressif.com/projects/esp-idf/zh_CN/latest/api-reference/system/wdts.html

2、原因+解决方法

感谢群友戒毒所,给我的启发。 

原因

从打印出的警告内容可知:由于SM_HttpFile_tas任务在CPU0一直在运行,导致IDLE0任务时间耗尽,没有初始化。

IDLE0 任务得到没有跑一圈,它的钩子函数没有执行。

static bool idle_hook_cb(void)
{
    esp_task_wdt_reset();
    return true;
}

尝试方法

在长时间的下载process中加入延时,让IDLE任务得空执行。

如:vTaskDelay(500);

结果:失败,可能有其他任务抢了这个时间。

如何确保IDLE任务能跑一圈,是目前要解决的问题。

3、ESP32 看门狗

3.1 看门狗类型+作用

3.2 任务看门狗注意点

 

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值