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.

[参考译文] TMS570LS1227:在 esmREG 检查中、代码经常被卡在_c_int00中。

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1005655/tms570ls1227-code-gets-stuck-too-often-in-_c_int00-on-esmreg-check

器件型号:TMS570LS1227

我现在在调试时进行了许多重新刷写、并且我经常遇到此问题-本节中的代码在引导时卡住:

Fullscreen
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
/* Check if there were ESM group3 errors during power-up.
* These could occur during eFuse auto-load or during reads from flash OTP
* during power-up. Device operation is not reliable and not recommended
* in this case.
* An ESM group3 error only drives the nERROR pin low. An external circuit
* that monitors the nERROR pin must take the appropriate action to ensure that
* the system is placed in a safe state, as determined by the application.
*/
if ((esmREG->SR1[2]) != 0U)
{
/* USER CODE BEGIN (24) */
/* USER CODE END */
/*SAFETYMCUSW 5 C MR:NA <APPROVED> "for(;;) can be removed by adding "# if 0" and "# endif" in the user codes above and below" */
/*SAFETYMCUSW 26 S MR:NA <APPROVED> "for(;;) can be removed by adding "# if 0" and "# endif" in the user codes above and below" */
/*SAFETYMCUSW 28 D MR:NA <APPROVED> "for(;;) can be removed by adding "# if 0" and "# endif" in the user codes above and below" */
for(;;)
{
}/* Wait */
/* USER CODE BEGIN (25) */
/* USER CODE END */
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

我认为没有实际的硬件错误,或者它不应该是.. 同时、我没有看到任何注释、即在调试时应禁用此测试。

有什么想法吗?  今天/现在我无法通过、可能需要对电路板进行下电上电、因为似乎没有大量的调试重启帮助。

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

    完整的电源周期将会关闭、但一旦我开始调试、它就会再次卡住、在第一个断点、它... 之后、通过调试器重新设置目标、使再次卡在完全相同的位置、不会出现故障、而是再次完全断电。

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

    您好 V01d、

    微控制器检测到错误。 此错误是 ESM 组3类型的严重错误。 请检查 ESMSR3寄存器并确定设置了哪个标志。  您是否还看到 nERROR LED 亮起? 您是否正在运行任何 ECC 测试?

    在调试器中、转至寄存器浏览器、在 ESM->STA3下、您将看到一些设置的标志。 您还可以通过向这些标志写入"1"来清除这些标志。

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

    似乎经常这样做。  我不确定、但这可能是由于调试器如何刷写闪存/可能未完全刷写(只是一个猜测)。

    如果我步出/强行将 PC 移出、似乎继续初始化正常、甚至在稍后通过 RAM ECC 检查-您知道、其中一个带有触发中止和句柄、它是否为 x2。   

    我不知道我在 HDK 上会遇到什么鬼影,但我 每天至少会遇到几次。  昨天、似乎是完全重新构建、然后重新闪存将其移除。 我不确定它到底是什么、但代码在重新刷新之后是相同的、只有在完全清洁后才能运行。