尊敬的社区:
在哪里可以找到高级版的高级信息
我在EMS1SR2寄存器中总是得到一个0x0.0008万,表示发生了一个错误,导致属于错误中断组2的HighESMInterrupt。
但是 ,在《技术参考手册》中找不到,哪一个错误会导致此确切中断。
是否有一个列表列出了哪个HighESMInterrupt代表哪个错误?
祝你好
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.
尊敬的社区:
在哪里可以找到高级版的高级信息
我在EMS1SR2寄存器中总是得到一个0x0.0008万,表示发生了一个错误,导致属于错误中断组2的HighESMInterrupt。
但是 ,在《技术参考手册》中找不到,哪一个错误会导致此确切中断。
是否有一个列表列出了哪个HighESMInterrupt代表哪个错误?
祝你好
ESMSR2 = 0x0.0008万 --> ESM状态寄存器2的位3已设置。 数据表的表6-45显示此错误通常是 由闪存中不正确或不完整的ECC值引起的。
闪存 受单错误纠正双错误检测(SECDED)的保护,该检测 在重置时启用。
必须将所有闪存空间(闪存库0至6)的ECC值编程到 闪存中,然后才能读取程序/数据。 这可以通过使用 链接器命令文件生成正确的ECC值来实现。
Cortex R5F CPU可能会对闪存空间内的任何位置产生推测性数据。 推理提取到具有无效ECC的位置(随后未使用)不会创建中止,但会为可纠正或不可纠正的错误设置ESM标志。 不可纠正的错误将无条件地导致nError引脚切换为低电平。 因此,必须小心为整个闪存空间生成正确的ECC,包括各部分之间的孔和任何未使用或空白的闪存区域。
以下是有关使用链接器cmd生成ECC的说明:
https://software-dl.ti.com/hercules/hercules_docs/latest/hercules/How_to_Guides/index.html
这是我的例子: