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.

[参考译文] RM48L940:ESMSR3寄存器读取

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/830334/rm48l940-esmsr3-register-read

器件型号:RM48L940

当我尝试读取 ESM 组3状态寄存器(地址0xFFFFFF520)时、我从 RAM (堆栈位置)中获取垃圾内容。 我能够从 ESM 模块读取 Grp 1和 Grp 2状态寄存器以及其他寄存器、而不会出现任何问题。 在读取 Grp 3寄存器之前、我需要做什么特殊的事情吗?

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

    您好!

    读取 ESM 状态寄存器3 (esmREG->SR1[2])时应该没有问题。

    此致、
    米罗

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

    这就是我的想法、因此也是我的问题。

    当我读取 esmREG->SR1[2]时,我从堆栈中获得 RAM 的内容。 使用 esmREG 结构或硬编码地址 0xFFFFFF520无关紧要。

    我可以读取 esmREG->SR1[0]和 esmREG->SR1[1]以及其他 ESM 模块寄存器而不会出现任何问题。 是否有关于检查内容的建议?

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

    好的。 我再把这一点缩小了一些。 当我调用 sl_SelfTest_Flash()然后在 sl_seltest.c 中的行之后

    flashread =*(volatile UINT32 *) flashBadECC1;

    我无法读取 sl_esmREG->SR1[2]

    在读取 SR1[2]之前,该测试需要在闪存读取之后读取 esmREG->SR1[2],以确定通过/失败条件。 可能发生什么事了?

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

    您好!

    遗憾的是、我没有相同的 MCU、我使用其他2个 MCU 进行了测试、但我无法重现此问题。

    您是否在解决此问题方面取得了一些进展?

    此致、
    米罗

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

    您好!

    您是否解决了此问题?

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

    您好!

    我假设您已经解决了这个问题、现在我将关闭这个主题。 您始终可以在结尾处通过写操作重新打开它、也可以打开新的线程。