根据我对参考手册中以下内容的理解,我遇到了意外的 WDOG 行为:
" 在 128 个总线时钟内
重置后,所有监视程序控制位、超时值和窗口值都只写入一次。这意味着,写入完成后,除非进行RESET
,否则无法对其进行更改。"
我对此的初步解释是,你必须在 RESET 后的前 128 个总线时钟内配置 WDOG,否则它将使用 UPDATE=0 的默认配置。这将防止您再次重新配置 WDOG。
然而,我却遇到了不同的情况。由于退出 RESET 的 KE1 以相同的频率运行总线和内核时钟,因此我决定在重新配置 WDOG 时查看 IAR 调试器中的 CYCLECOUNTER,因为我认为它能告诉我自 RESET 以来还经过了多少总线时钟。它显示自RESET释放以来已经过去了144个周期。于是,我开始在函数的起始位置添加越来越长的延迟循环,看看它是否还能让我在 144 个循环之后继续重新配置。
无论延迟时间有多长,只要低于 WDOG 默认的 8 毫秒超时时间,就能成功重新配置 WDOG。我在使用调试器和不使用调试器的情况下都观察到了这种行为,以确保调试器没有起到任何作用。我还能够通过使用Oscope闪烁RESET来确认计时。
因此,现在我对参考手册的理解是,RESET后,您可以重新配置 WDOG。而且,一旦您对 WDOG 执行了第一次写入,您将获得 128 个总线时钟来重新配置剩余的寄存器字段。
例如,假设我在重置时等待 1000 个总线时钟,然后配置 WDOG_CS 寄存器。在配置 WDOG_CS 来配置 WDOG_TOVAL 之后,我得到了 128 个总线时钟。TOVAL 配置完成后,新配置即生效。
这是对参考手册的正确解释吗?或者我之前的解释是否正确,你在 RESET 时获得 128 个总线时钟,或者默认配置生效?
谢谢你的帖子。
请参阅"第 30.4.3.2.1 节 解锁看门狗" 和第30 .5.2 节 配置看门狗 在KE1xFP100M168SF0RM 中。 "30.5.2 在 KE1xFP100M168SF0RM 中配置看门狗" 。
Celeste_Liu_0-1780382496259.png
Celeste_Liu_1-1780382807861.png
正确的解释似乎如下:
这种解释与您的测量结果一致:即使自RESET以来经过了超过 128 个总线时钟,WDOG 仍可以成功重新配置,前提是这种情况发生在默认监视程序超时到期之前。
换句话说,128 总线时钟配置窗口与解锁顺序相关,而不仅仅是自RESET释放以来经过的时间。
如果未完成任何新配置,WDOG 将继续使用其重置默认设置运行。
希望对您有所帮助。
BR
西莱斯特
------------------------------------------------------------------------------------------------------------------------
注:如果本帖回答了您的问题,请点击"ACCEPT AS SOLUTION" 按钮。Thank you!
------------------------------------------------------------------------------------------------------------------------
更新看门狗设置需要遵循一定的命令顺序。我不知道 128 个总线时钟来自哪里,但以 K80 子系列参考手册,2015 年 9 月 4 日修订版为例:
只要在监视程序控制寄存器中设置了 ALLOW_UPDATE,您就可以解锁和修改一次只写控制和配置寄存器:
1. 在 20 个总线时钟周期内将 0xC520 然后写入 0xD928 到特定的解锁寄存器 (WDOG_UNLOCK)。
2。等待一个总线时钟周期。在写入解锁序列之后,您无法在总线时钟周期内立即更新寄存器。
3.打开一个与看门狗配置时间(WCT)等长的更新窗口。在该窗口中,您可以更新配置和控制寄存器位。
这些寄存器位在解锁后只能修改一次。如果在更新窗口内没有更新任何配置和控制寄存器,监视程序会向系统发出RESET,即中断然后RESET。初始解锁后,尝试在 WCT 内解锁看门狗不会有任何效果。
谢谢你的澄清。
很高兴得知我有超过 128 个总线时钟脱离 RESET,无法配置 WDOG。
如果他们对 ke1xfp100m168sf0rm 进行了新的修订,我想建议在 128 个总线时钟内删除 "..."自第 30.4.3.1 节第一句。
感谢这个建议可能很愚蠢,但我之所以这样做,只是因为我在网上发现了一些错误信息,引用了这个措辞,暗示你只有 128 个总线时钟来配置 WDOG 而不 RESET。不幸的是,它还会让谷歌人工智能概述重复同样的错误信息(......不得不爱未来)。
明白。不幸的是,据我所知,Kinetis系列没有新的路线图。我们最近推出了MCX系列,如果你感兴趣,可以考虑探索这个系列。MCX Arm Cortex-M 工业和物联网微控制器 | 恩智浦半导体