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.

[参考译文] RM48L952:ESM 通道35和通道36故障注入

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/748615/rm48l952-esm-channel-35-and-channel-36-fault-injection

器件型号:RM48L952

我之前已经发布过故障注入方法、用于检查第1组故障行为。 对于其他故障、我的 ESM 处理程序按预期工作、nERROR 变为低电平并保持低电平、直到我在下一个下电上电周期复位故障记录。 我的 ESM 通道 ID 被保存到我的 ESM 处理程序中的闪存仿真 EEPROM 组7 (FEE)。  

我参考自检例程和安全 TI 库确定了注入故障的方法。 但我并不完全理解如何成功地为通道35和36注入故障、这样我就可以在触发 ESM 中断后完成对 FEE 的写入。 我对系统进入安全状态感到满意- nERROR 在通道35和36中都保持低电平、并且我们进入了应用程序故障状态。 但是、我想了解为什么我无法写入通道#来收费。  

这里是我的通道35故障注入代码的屏幕截图、我是否在这里缺少一些内部管理功能、以允许在生成故障后进行写入以收费? 我知道节省费用并不成功、因为下次上电时我们会再次触发 nERROR、通常、如果触发最后一个上电周期、我的测试逻辑将不会运行故障注入、并将 ESM 事件保存为 FEE。

这是通道36故障注入。 这很奇怪、下载后第一次上电时、我捕获了通道36、并获得了类似于通道35的 nERROR 活动。 下一次上电时、我获得 nERROR 活动、但我的 ESM 通道 ID 通过255、这表示没有调用 ESM 处理程序、因为这是我的初始化值。 那么、我突然得到一个通道35误差吗? 我只在进入主循环之前运行故障注入、因此突然的单个位误差必须是之前运行的剩余误差?

了解有关如何成功注入通道35和36故障的任何见解、以便我捕获通道 ID 并将其保存到 EEPROM 组7中。

谢谢

Jamie

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

    闪存 API 和 FEE 驱动器必须在特权模式下运行。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 QJ、

    当我运行故障注入时、我正在运行特权模式、并且我还更新了我的应用程序、以便在访问 FEE 驱动器之前始终切换到特权模式。

    Jamie

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

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

    没有,我没有机会再去一次。

     

    我们的应用环境中的故障是安全的。 有关如何调用通道35和36故障的清晰说明、以便我的应用程序继续运行、并且可以清除 nERROR、可以将费用写入。 在通道35或36的故障注入期间、我的 ESM 处理和 FEE 写入与其他通道相同。

     

    如有必要、我很乐意通过私人电子邮件共享代码以完成此主题。 也许我只是做了一些明显错误的事情!!

     

    Jamie