TI中文支持网
TI专业的中文技术问题搜集分享网站

CC2642R: cc2642 看门狗无法关闭问题

Part Number:CC2642R

问题描述:

1.看门狗开启成功,超时后也可以触发复位(看门狗触发到成功复位有一个比较长的时间间隔)

2.使用`Watchdog_close`将看门狗关闭后,达到看门狗的触发周期依然可以触发看门狗的复位.

看门狗相关代码:

“`

Watchdog_Params watchdog0Params;
Watchdog_Handle watchdog0Handle = NULL;

unsigned char set_watchdogs(unsigned char status)
{
    unsigned char ret = 0xFF;
    switch(status){
    case 0x00:
        ret = 0x00;
        if(watchdog0Handle != NULL){
            Watchdog_clear(watchdog0Handle);
            Watchdog_close(watchdog0Handle);
        }else{
            DBG_E("Watchdog isn`t enabled");
        }
       

        break;
    case 0x01:
        ret = 0x01;
        if(watchdog0Handle != NULL){
            Watchdog_open(CONFIG_WATCHDOG_0, &watchdog0Params);
            Watchdog_clear(watchdog0Handle);
        }else{
            DBG_E("Watchdog isn`t init");
            my_watchdog_config();
        }
       

        break;
    default:
        break;
    }
    DBG_F("%s watchdogs", status?"Enable":"Disable");
    return ret;
}

void WatchdogCallbackFxn(Watchdog_Handle handle)
{
    printf("Watchdog timer triggered!\n");
    // releaseResources();
}

int my_watchdog_config()
{
    int ret = 0;
    Watchdog_init();
    Watchdog_Params_init(&watchdog0Params);
    watchdog0Params.resetMode = Watchdog_RESET_ON;
    watchdog0Params.callbackFxn = (Watchdog_Callback)WatchdogCallbackFxn;
    watchdog0Handle = Watchdog_open(CONFIG_WATCHDOG_0, &watchdog0Params);
    if(watchdog0Handle == NULL){
        ret = -1;
    }else{
        ret = 0;
    }
    return ret;
}

“`

Galaxy Yue:

您好,

在复位的情况下,看门狗可以被关闭吗?

,

viys:

程序目前在调试看门狗,复位后看门狗不会初始化.当且仅当通过蓝牙开启看门狗后才会被初始化.关闭看门狗操作同样使用蓝牙控制.

在关闭看门狗后并出现复位的情况下,复位后看门狗是关闭的.

,

Galaxy Yue:

一旦启动,看门狗定时器只能通过硬件复位来停止

现在您的需求是解决什么?

,

viys:

我在进行程序升级时担心因为看门狗而导致升级失败,期望在进行ota时将看门狗关闭.

同时当我使用下载器时,看门狗是否会影响我的程序下载.

,

Galaxy Yue:

1.蓝牙协议栈中是OAD ZIGBEE中是OTA 

2.watchdog_close支持其他产品,CC2642不支持

3.关于

viys 说:,看门狗是否会影响我的程序下载.

可以查看一下watchdog 的readme

https://www.ti2k.com/wp-content/uploads/ti2k/DeyiSupport_Bluetooth_node

看门狗如果喂狗正确并且没有溢出,正常情况下不会影响下载

注:复位后需要清除已经溢出的看门狗标志位。

,

Galaxy Yue:

关于watchdog您可以参考这篇帖子

https://e2echina.ti.com/support/wireless-connectivity/bluetooth/f/bluetooth-forum/197426/cc2642-watchdog_close-watchdoghandle

正如我之前所说

一旦启动,看门狗定时器只能通过硬件复位来停止

这个是避免看门狗复位。

https://e2echina.ti.com/support/machine-translation/mt-bluetooth/f/mt-bluetooth-forum/299826/cc2642r

,

viys:

好的非常感谢

,

Galaxy Yue:

不用客气,有问题随时来论坛交流

赞(0)
未经允许不得转载:TI中文支持网 » CC2642R: cc2642 看门狗无法关闭问题
分享到: 更多 (0)