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.

[参考译文] CCS/TMS570LS3137:通过 SYSESR 跟踪 PORST 的发生

Guru**** 2481465 points


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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/699838/ccs-tms570ls3137-tracking-porst-occurrence-by-sysesr

器件型号:TMS570LS3137

工具/软件:Code Composer Studio

您好!

根据技术参考手册(SPNU499C)、任何 PORST 的出现都将反映在 SYSES 寄存器(位15)上。 嗯,在调试会话期间,即使 SYSES 与0不相同,如果我按下 PORST 按钮,控制台也会返回以下消息,调试的状态当然是“已断开连接”:

DAP:错误:(错误-242 @ 0x0)无法访问路由器子路径。 电路板配置文件可能不正确。 (仿真包6.0.576.0)
CortexR4:错误:(错误-2063 @ 0x0)无法复位器件。 对电路板进行下电上电。 如果错误仍然存在、请确认配置和/或尝试更可靠的 JTAG 设置(例如、较低的 TCLK)。 (仿真软件包6.0.576.0)
CortexR4:错误:(错误-1170 @ 0x0)无法访问 DAP。 重置设备、然后重试此操作。 如果错误仍然存在、请确认配置、对电路板进行下电上电和/或尝试更可靠的 JTAG 设置(例如、较低的 TCLK)。 (仿真包6.0.576.0)
CortexR4:20次尝试后无法确定目标状态
CortexR4:在断开连接之前无法从目标删除调试状态。 程序存储器中仍可能嵌入了断点运算代码。 建议您在连接之前重置仿真器、并在继续调试之前重新加载程序 

当我重新连接(Ctrl+Alt+C)时 ,SYSES 寄存器为零。 我希望改为0x8000或更多。

如何验证 SYSES 的位15是否实际由 PORST 置位?

此致、

-Marco

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

    闪存中可能存在一些测试代码、用于检查 ESR 并清除 ESR 中的位。 请擦除闪存、执行测试、并使用存储器浏览器窗口读取 ESR 值。 我刚刚做了一个测试、该值是 ESR 为0x8008。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我通过读取存储器来执行测试、没有任何变化。 我忘记了在重新连接后、它会在 中止的 for 循环(文件 exit.c)上挂起。 我不知道这是否与问题有关。

    到目前为止获得该结果的唯一方法是注释掉 SYS_EXception = 0xFFFFFFU 时的 ESR 复位。 即使在线路调试之前发生复位、也能正常工作:

    if ((SYS_EXception & powerON_RESET)!= 0U) 

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

    我想闪存中的代码读取 SYSESR 寄存器、位15被清零。 请擦除整个闪存并将其留空、然后通过 JTAG 重新连接 MCU、然后使用 CCS 存储器刷写器检查 SYSESR。 应设置 SYSESR 的位15。