This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CC2640R2F:看门狗计时器超时后不会复位。

Guru**** 2318830 points
Other Parts Discussed in Thread: CC2640R2F
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1519939/cc2640r2f-does-not-reset-after-watchdog-timer-timed-out

器件型号:CC2640R2F

工具/软件:

您好:

我在我们的产品中实施了 WDT 、作为 watchdog.c 的示例

对于测试、我每10秒调用一次 Watchdog_clear、并确认在特定条件下通过不调用 Watchdog_clear (看门狗清除)超过60秒时调用看门狗回调。

(确认后、我将回调更改为 NULL、如下所示。)

但是、即使未调用 Watchdog_clear 的时间超过60秒、它也不会复位。 我应该检查一下吗?

我使用的是 SDK 5.30.00.03

谢谢、

卡尔文

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Calvin、

    我假设您参考 的是此看门狗 TI 驱动程序示例?  您的应用是否进入低功耗模式?  请注意 WatchdogCC26XX TI 驱动程序参考的电源管理部分

    启动后、看门狗将继续在活动或空闲模式下运行。 当器件进入待机模式时、看门狗计时器将停止递减计数、但将保留计数器值。 当器件从待机状态唤醒时、看门狗计时器将继续从之前的计数器值开始递减计数。

    这意味着、如果系统在50%的时间内进入待机状态、并且看门狗重新加载值设置为1秒、则看门狗计时器实际上会在2秒内超时。 如果系统仅在1%的时间内处于活动/空闲模式、看门狗计时器将在100秒内超时。 但是、如果错误将应用程序锁定在运行模式下、看门狗计时器将在配置的时间内超时。

    因此、请务必记住、在 CC2640R2F 处于待机低功耗模式期间、看门狗计时器不会计数。

    此致、
    Ryan

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Ryan、

    1.从 APP 工程中删除 power_saving 定义后、WDT 会工作。
    2.如果我不移除 power_saving、是否只有一种方法可以通过大致估算活动模式期间的倒计时总量来设置看门狗时间?
    3.如果系统在待机模式下挂起,看门狗复位不会发生,对吧?

    谢谢、

    卡尔文

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    1.这是预期的行为,并与我之前的答复一致。
    2.您可以将计时器设置为从您重新加载看门狗到设备进入待机状态时开始计数、然后在退出待机状态后重新启动计时器、但在软件解决方案中、默认情况下不考虑这一点。
    3、由于主内核没有主动处理代码指令,故不应将系统置于待机模式。 无源常开型元件可用于在收到指令时唤醒 MCU (例如中断引脚)。

    此致、
    Ryan