ESP32专栏四 任务看门狗

任务看门狗

主任务死循环

在app_main任务中死循环

#include <stdio.h>
#include "esp_log.h"
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"

const char *TAG = "COUNTER";

int count = 0;

void app_main(void)
{
    while (true) {
        ESP_LOGI(TAG, "count = %d", count++);
    }
}

测试结果:触发了任务看门狗
死循环触发任务看门狗
触发看门狗的原因:CPU一直在main任务中执行,IDLE空闲任务得不到执行。而IDLE空闲任务中会清除看门狗,因此5秒都一直没清除看门狗,定时器中断到来,触发软件看门狗。

###menuconfig配置软件看门狗
在menuconfig中输入watchdog
配置任务看门狗
如果勾选了panic handler,则会执行panic动作。默认会打印寄存器然后复位,也可以设置成打印寄存器然后停下来
panic动作

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值