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.

[FAQ] [参考译文] [常见问题解答] TMS570LC4357:如何使用数字看门狗

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1301477/faq-tms570lc4357-how-to-use-digital-watchdog

器件型号:TMS570LC4357
主题中讨论的其他器件:HALCOGEN

解释如何在无法馈入看门狗的情况下、使用数字看门狗创建 NMI 中断和生成复位!

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

    1. NMI 中断:

    实际上、在 HALCoGen 中有一个关于此用例的示例。 但这段代码中有一个小错误。

    在本例中、您可以看到它们正在启用 IRQ 中断、但问题是看门狗 NMI 不是 IRQ 中断、而是 FIQ 中断。

    您可以看到 NMI 中断在中断通道0上

    看门狗 NMI 中断将 进入 ESM2.24通道。 因此、只要看门狗时间到期、您就会通过设置 ESM2.24通道来获得"esmHighInterrupt"。

    但您可以看到该 ESM High 中断是一个 FIQ 中断:

    此处、我们应启用 FIQ 中断、然后只要看门狗无法 馈送、就只会生成 NMI 中断。

    您会看到我调用 _enable_interrupt_而不是 _enable_IRQ 来启用 IRQ 和 FIQ 中断。

    下面是在 TMS570LC4357 Launchpad 上测试的项目:

    e2e.ti.com/.../6433.Digital_5F00_Watchdog_5F00_NMI_5F00_Test_5F00_LC4357.zip

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

    看门狗复位:

    只需对上面的代码进行很少的更改、我们就可以创建用于复位的代码而不是 NMI 生成:

    但此复位生成也有以下几个问题:

    i) 看门狗复位只能工作一次、在首次看门狗复位后将无法正常工作(我的意思是不会创建中断、因此这意味着第二次之后将不会发生馈送)

    ii)在 HDK 电路板上、"EXTRST"标志在看门狗复位后不会被置位、仅"WDRST"将被置位、但在 Launchpad 上、这两个复位都将被置位。  

    下面的主题中介绍了上述问题的根本原因、还针对这两个问题建议了必要的权变措施:

    (+) TMS570LC4357:看门狗复位时的 WDT 处理-基于 Arm 的微控制器论坛-基于 Arm 的微控制器- TI E2E 支持论坛