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.

[参考译文] TMS320F28384S:TMS320F2838x 看门狗复位卡在引导 ROM 中的 0x3FB114

Guru**** 2538950 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1552361/tms320f28384s-tms320f2838x-watchdog-reset-stuck-in-boot-rom-at-0x3fb114

器件型号:TMS320F28384S


工具/软件:

您好:

我正在使用 TMS320F2838x DK 板 和测试看门狗复位功能。 中配置了看门狗 复位模式 、当我故意停止服务时、设备将按预期重置。 但是、main()控制器不会从重新启动执行、而是在地址处停止 0x3FB114、它对应于 Boot ROM 函数_system_post_cinit()

我已经采取了以下步骤:

  • 设置*(uint32_t *)0xD00 = 0xA5FFFF为在 EMU 引导模式下强制闪存引导。
  • 已经过验证 BOOT0 和 BOOT1 引脚被拉高 选择闪存引导模式。
  • 已确认正确触发看门狗复位。

尽管如此、在看门狗复位后、器件还是会复位 不从闪存恢复执行 。 它似乎要输入 等待引导模式 、尤其是连接调试器时。

我的目标是使控制器复位、并在看门狗超时后从闪存中干净地重新启动。 有人能帮助我了解以下内容吗?
•为什么器件停止而不是从闪存引导?
•是否需要额外配置来确保看门狗复位后的启动行为正常?
•在调试会话期间处理看门狗复位的任何优秀实践?
提前感谢您的指导。

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

    您好、

    设置*(uint32_t *)0xD00 = 0xA5FFFF为在 EMU 引导模式下强制进行闪存引导。

    请在“Memory watch window“中检查值@D00、以确认其写入正确。 您正在写入值 0xA5FFFF、因为它应该是 0xA5FFFFFF

    Vivek Singh