gpt4 book ai didi

c - Stellaris Launchpad LM4F120 上的看门狗配置

转载 作者:太空宇宙 更新时间:2023-11-04 02:10:40 25 4
gpt4 key购买 nike

我尝试在 Stellaris Launchpad LM4F120 上配置看门狗定时器。

代码如下:

void configure_watchdog(void) {
SYSCTL_RCGCWD_R = 0x1; /* Enabling Clock for WD0 */
WATCHDOG0_LOAD_R = 0xffffffff; /* Setting initial value */
WATCHDOG0_CTL_R = WDT_CTL_INTEN; /* Enabling interrupt generation */
}

根据数据表,这应该足够了。

问题是 Controller 总是落入 FaultISR 并在它之后重置。我不明白为什么。

我做错了什么?

编辑: Controller 没有重置。它只是转到 FaultISR

最佳答案

当看门狗过期时跳转到 ISR 听起来是正确的行为。您在 ISR 代码中到底在做什么?如果您在 ISR 中重置看门狗,那么您不应该看到微 Controller 自行重置(至少根据您发布的配置代码)。设置看门狗后,重新读取配置寄存器并确保它包含您期望的值。该寄存器中的某些位只能在特定情况下设置,并且您可能没有使用您认为正在使用的设置运行。

您提到您正尝试将看门狗定时器用作通用递减计数器。您可以使用通用定时器之一代替看门狗吗?时间到期时您仍然会收到中断,但常规计时器无法重置整个系统。

关于c - Stellaris Launchpad LM4F120 上的看门狗配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14569224/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com