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.

[参考译文] TMS320F280041:F280041 -应用程序在看门狗复位后无法启动、但可与 XRS 配合使用(通过按钮下拉)

Guru**** 2538960 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1044503/tms320f280041-f280041---app-fails-to-start-after-watchdog-reset-but-works-with-the-xrs-pulled-down-by-a-button

器件型号:TMS320F280041

那么、看门狗复位后、应用程序无法正常工作的潜在原因是什么、但它可以与 XRS 配合使用?  也就是说、当 XRS 被一个外部按钮下拉时。

如果这会产生任何影响、我会打开安全部分。

这是100引脚器件 TMS320F280041PZS。

这是我的看门狗初始化例程:

SYSCTL_setWatchdogMode (SYSCTL_WD_MODE_RESET);
SYSCTL_setWatchdogPredivider (SYSCTL_WD_PREDIV_4096);
SYSCTL_setWatchdogPrescaler (SYSCTL_WD_PRESCALE_64);
// sysctl_setWatchdogWindowValue (0);
sysctl_serviceWatchdog();
sysctl_enableWatchdog();
// sysctl_clearWatchdogOverride();

我定期调用 sysctl_serviceWatchdog()来为其提供服务。

此外、我没有连接调试器仓体。

编辑:好的、那么看门狗应该将外部 XRSn 线路拉低吗?   (笑声) 还是仅供内部使用?   我在 XRSn 上看不到任何变化。  有一个将 XRSn 拉高的2k Ω 电阻器、并且在 XRSn 和接地之间有很多欧姆。

还可以。。。 因此、当看门狗触发并且系统变得不可恢复时、我会看到 XRSn 上持续每~146ms 出现大约0.5V 的极小下降。  它急剧下降了0.5V、然后电阻器可能会在20ms 内将其拉回、然后在146ms 后重复该操作。  这似乎是一个很好的线索

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

    您好!

    [引用 userid="51282" URL"~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1044503/tms320f280041-f280041---app-fails-to-start-after-watchdog-reset-but-works-with-the-xrs-pulled-down-by-a-button 命令]好的、看门狗是否应将外部 XRSn 线路拉低?

    是的、WD 应该将 XRSn 引脚拉至低电平。 如果您未看到 XRSn 为低电平、则表示 WD 未触发复位。 如果您维修 WD、则它不应发出重置。 对吧?

    此致、

    Vivek Singh

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

    在您回答以下问题后、我可能会更新:

    当看门狗触发并且系统变得不可恢复时、我会看到 XRSn 上持续每~146ms 出现大约0.5V 的极小下降。  它急剧下降了0.5V、然后电阻器可能会在20ms 内将其拉回、然后在146ms 后重复该操作。   

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

    看门狗肯定会触发... 在我停止处理看门狗之后、应用程序很快就变得无响应。  当前应用程序正常处理看门狗、但如果它在15秒内看不到串行端口上的活动、它将停止。  大约15秒、它停止响应并开始 XRSn 上重复的极轻微下降、直到重启。

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

    还可以。。。 因此、XRSn 线上的电容似乎过大。  非常奇怪的行为!   通常情况下、向复位线路添加电容以延迟启动、直到一切都非常稳定...  我们没有预料到这种问题!

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

    尊敬的 Darron:

    此类延迟不应导致器件启动问题。 当 XRSn 处于正确状态时、请检查引导模式引脚是否处于预期状态以释放复位。 您还可以连接到 CCS 并运行相同的测试、然后检查 WD 复位后 CPU 卡在何处。

    此致、

    Vivek Singh

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

    不、它肯定是多余的电容。  看门狗不但不能下拉 XRSn、而且它拧紧了整个芯片、将其置于复位环路中。  我们将电容降至0.1uF、而不改变任何其他参数、工作正常。  我现在可以看到数据表中有关这一点的注释、但这是非常奇怪的行为。  在复位时将电容增大以延迟启动是相当标准的做法。

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

    好的、如果器件过高、无法将其拉低、那么这肯定是一个问题。 很高兴知道您能够修复它。