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.

[参考译文] PROCESSOR-SDK-AM62X:M4看门狗

Guru**** 2399305 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1483103/processor-sdk-am62x-m4-watchdog

器件型号:PROCESSOR-SDK-AM62X

工具与软件:

你(们)好

我想在 AM62x 的 M4中使用 RTI 看门狗。  它似乎 MCU+ SDK 源代码/drivers/watchdog/v0/watchdog_rti.c 中的代码适合此情况。  但是、当我查看 source/drivers/lib 中的二进制库时、A53库中有看门狗函数、但 M4库中没有。

为什么 RTI 看门狗不能由 M4设置并定期接通(Watchdog_Clear ())?

我的目标是确保 M4软件继续正常运行、如果停止、则会对处理器进行复位。

谢谢!
   Steve

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

    Steve、您好!

    我正在查看您的问题,您可能希望在一两天内得到回复。

    此致、

    Anil。

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

    Steve、您好!

    目前、我们在 MCU+SDK 中不支持 M4F 上的 WDT。

    但是、SOC 支持这种协议。

    如果您要在 M4F 内核上启用 WDT、请参考下面的。  

    另一个问题是 SOC 不能在 WDT 到期后仅重置 M4F 内核,一旦 WDT 到期,就可以让 SOC 获得重置。

    要进行 SOC 重置、用户需要使用 ESM 模块、下面的常见问题解答有助于将此功能集成到您的应用程序中。

    下面的链接有助于满足您的要求。 即使这在其他器件上、对 AM62X 仍然有效。

    https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1362747/am6442-wdt-on-m4f

    https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1414222/faq-am6442-watchdog-debug-and-configuration-guide-for-all-sitara-am6x-mpu-devices

    https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1283237/faq-am64x-am62x-how-to-reset-the-soc AM64x-and-am62x-white-wdt-timer-expires-in-am64x-and-am62x

    此致、

    Anil。

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

    感谢 Anil 的快速响应。

    我在发布问题之前在 E2E 搜索中找到了第一个链接。  这似乎取决于在库二进制文件中实现 Watchdog_函数、而 AM62x 上的 M4则不是如此。  或者我是否误解了这一参考?

    最后一个链接看起来很有希望。  但我需要花一些时间来消化和整理细节、看看它是否具有我所需的所有内容。  希望,通过 Juggling ,我可以在未来几天做到这一点。

    再次感谢您的帮助。
      Steve

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

    Steve、您好!

    在发布问题之前、我在搜索 E2E 时找到了第一个链接。  这似乎取决于在库二进制文件中实现 Watchdog_函数、而 AM62x 上的 M4则不是如此。  或者我是否误解了引用?

    您需要按照上述链接中的相同步骤进行操作。

    即使这些步骤属于 AM64X、相同的方法也适用于 AM62X。

    集成所有步骤后、如果您遇到任何问题、请告诉我。

    此致、

    Anil。

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

    您好、Anil。

    参考您所说的第一个链接:

    您需要执行与上述链接相同的步骤。

    我不明白这一点。  第一个链接提供调用 Watchdog_Clear()、Watchdog_open()、Watchdog_Close()函数的代码(empty.c)。  正如我所指出的、这些函数不存在于 AM62x MCU+ SDK 的 M4库中。  如何按照该链接中的步骤进行操作?

    关于 第三个链接:

    我是否理解正确、由于 ESM0_INTERRUPT_MAP 中没有 WKUP_RTI0_INTR_WWD_0的中断 ID 、而 WKUP_ESM0_INTERRUPT_MAP 中没有、因此只能通过 M4看门狗过期来从定制 R5固件二进制文件启用系统复位、而不能通过 M4固件本身来启用?

    谢谢!
      Steve

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

    Steve、您好!

     Watchdog_clear、open 和 close API 位于 MCU+SDK 驱动程序中。

    现在、我们需要针对 M4F 内核驱动程序进行编译。

    请在 Link1中集成以下注释中的 make 文件更改和 driver.h 文件。

    然后编译驱动程序和应用程序。  

    https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1362747/am6442-wdt-on-m4f

    我建议不要将上述更改集成到 SDL 组件中、而是将 WDT 集成到现有组件中。

    请使用 SDL M4F 示例、并将其集成到您的应用程序中、此外、还应借助 MCU_CTRL_MMR 寄存器而不是 MAIN_CTRL_MMR 寄存器启用 SOC 复位设置。

    请尝试这些步骤、并告诉我在 WDT 到期后是否复位 SOC。

    C:\ti\mcu_plus_sdk_am62x_10_00_00_14\examples\sdl\rti\UC1\am62x-sk\m4fss0-0_nortos

    此致、

    Anil。