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.

[参考译文] TMS570LC4357:在 ESMIOFFHR 中没有挂起中断时发生 ESM 高中断

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1391740/tms570lc4357-esm-high-interrupt-occurs-with-no-pending-interrupt-in-esmioffhr

器件型号:TMS570LC4357

工具与软件:

我正在解决 ESM 高中断(VIM Init 表中的通道0)在任何复位后意外发生一次的问题、但当我检查 ESM 中断偏移量高寄存器以确定中断的原因时、其值为0 (无挂起中断)。  什么情况会导致出现这种情况?  

感谢您提供的任何帮助。

Cameron

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

    尊敬的 Cameron:

    您还能检查所有 ESM 状态寄存器是否其中有任何一个被设置吗?

    要验证此操作、请在 esmHighInterrupt 函数的开头设置断点。

    此外、请参考我的以下主题:

    (+) TMS570LS3137:我计划使用 TMS570LS3137芯片提供的 SL 自检功能进行自检。 -基于 Arm 的微控制器论坛-基于 Arm 的微控制器- TI E2E 支持论坛

    (+) TMS570LC4357:SDL ESM 配置(错误信令模块)-基于 Arm 的微控制器论坛-基于 Arm 的微控制器- TI E2E 支持论坛

    这里我提到了如何通过验证传递到通知函数的参数来验证导致中断的 ESM 通道。

    ——
    谢谢、此致、
    Jagadish。

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

    尊敬的 Jagadish:

    所有 ESM 状态寄存器在我在 esmHighInterrupt 开头设置的断点处读取0x00000000。

    由于 esmREG->IOFFHR 等于0、因此既不会调用 esmGroup1Notification、也不会调用 esmGroup2Notification 、因此 vec 的值 会设置为0xFFFFFFFF、并采用其他路径。

    你还有其他想法吗?

    谢谢!

    Cameron

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

    尊敬的 Cameron:

    进入 esmHighInterrupt 后、如果或其他条件、代码正在输入以下哪个条件?

    ——
    谢谢、此致、
    Jagadish。

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

    它正在达到最后一个其他:


    设计

    esmREG->SR7[0U]= 0xFFFFFFFFU;
    esmREG->SR4[0U]= 0xFFFFFFFFU;
    esmREG->SR1[1U]= 0xFFFFFFFFU;
    esmREG->SR1[0U]= 0xFFFFFFFFU;
    }

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

    尊敬的 Cameron:

    我不知道为什么会获得 没有任何 ESM 状态标志的 esmHighInterrupt?

    是否有可能共享您用于调试的代码? 或者其他任何最简单的项目? 您也可以通过私人聊天发送。

    ——
    谢谢、此致、
    Jagadish。

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

    再次嗨 Jagadish、

    我无法共享我的代码、但作为一个实验、我尝试在 其他三个器件上运行它、并且其中任何一个器件上都没有发生 ESM 高中断。 我开始怀疑我所使用的器件上的 MCU 可能有故障、尽管 启动时的异常中断可能 是唯一的症状。

    谢谢!

    Cameron  

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

    尊敬的 Cameron:

    我无法共享我的代码、但作为一个实验 、我尝试在另外三个设备上运行它、但其中任何一个设备上都未发生 ESM 高中断

    这很奇怪。

    我开始怀疑我所使用的设备上 MCU 可能有故障、尽管 启动时的恶意中断似乎 是唯一的现象、这很奇怪。

    也许你是对的。

    如果可能、请发送您的代码、以便我可以 在结束时对其进行一次测试 这将使用户对代码有一些信心。

    ——
    谢谢、此致、
    Jagadish。

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

    尊敬的 Jagadish:

    最后几天我就离开了办公室,所以我很抱歉这么晚才回复。

    我无法发送我的代码、但我们正在检查硬件以查看是否存在问题。

    谢谢!

    Cameron

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

    尊敬的 Cameron:

    我们正在检查硬件以查看是否存在问题。

    当然、请检查并告知我、平均时间我还将尝试验证此问题的其他可能性。

    ——
    谢谢、此致、
    Jagadish。

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

    硬件看起来检查正常、但我仍看到使用清除 ESM 状态寄存器和清除 ESM 高偏移寄存器调用了 ESM High Interrupt 处理程序。 是否有任何其他情况可导致 ESM 高中断?

    谢谢!

    Cameron

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

    尊敬的 Cameron:

    正如我所知道的那样、每个 ESM 中断应该在状态标志中设定相应的位、我认为任何中断将在没有状态位的情况下生成。

    我们能否设置一个实时调试会话、因为该问题不会在我的终端触发?

    我将于上午10点至下午7点 IST (印度标准时间)提供服务、因此请根据您的方便情况安排一次现场调试会议、以便更好地了解问题并提供我的建议。

    ——
    谢谢、此致、
    Jagadish。

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

    尊敬的 Jagadish:

    我不能有一个实时调试会话,但根据我可以知道的, ESM 高中断发生在 c_int00()函数的第一条语句之前。 这对您有什么建议吗?

    谢谢!

    Cameron

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

    尊敬的 Cameron:

    我以前从未见过这种问题、

    我会向我的一位高级同事查询、他以前是否有这类问题。

    ——
    谢谢、此致、
    Jagadish。