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.

[参考译文] TMS320F28069:进入 ISR 时处于 EALLOW 状态?

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/772530/tms320f28069-eallow-state-when-entering-an-isr

器件型号:TMS320F28069

根据针对这个器件的 TRM 和 CPU 以及指令集文档、在进入一个 ISR 时、EALLOW 应该被禁用(至少请见 SPRUH18G 的图1-94)。  我们有许多 ISR 不调用 EALLOW、但似乎仍然能够写入受 EALLOW 保护的寄存 器、特别是 PieCtrlRegs (但也包括外设特定的 ISR)。  到目前为止、我们遇到问题的唯一时间就是在中断结束之前(在写入受 EALLOW 保护的寄存器之前)专门调用 EDIS。

我在调试模式中的一个 ISR (第一行)内停止、并且即使我们不调用 EALLOW、EALLOW 也确实被启用。

为什么感知行为与文档之间存在差异?

在 ISR 中、我们所做的某种初始化或配置是否可以忽略此保护?

或者在进入 ISR 或其他操作时将 EALLOW 设置为启用而不是禁用?

谢谢!

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    看起来有问题的特定寄存器是 HRCap2 HCCLR。 它没有被记录为受 EALLOW 保护、但它似乎需要它。 是否存在实际情况、但没有正确记录? 我看到 HRCap2 HCTL 寄存器受 EALLOW 保护。

    对于具有类似 ECap2行为的中断(未调用 EALLOW、它实际上是专门禁用的、但 ECCLR 寄存器和 PIEACK 寄存器都可以正常工作)、这不是一个问题。

    阅读更多内容后、我看到 PieCtrlRegs 实际上不受 EALLOW 保护、它只是 PIE 矢量表。 这可能解释了没有 EALLOW 被称为正常工作的中断的原因(尽管在我的调试情况下、为什么 EALLOW 看起来被启用的问题仍然存在)。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    感谢您的报告。 我看到 HCCLR 似乎受到该器件上 EALLOW 的影响、但没有记录在案。 我将进一步研究这一点、并返回给您。

    在我的所有测试用例中、我无法在 EALLOW 入口为1的位置找到中断。 我所做的就是在 ISR 中的第一行 C 代码上设置一个 BP 并检查 ST1寄存器-在我的情况下 EALLOW 始终为0。 这是预期的条件、因为 EALLOW 在中断时被硬件强制为0。 您能给我一些关于 ISR 的信息吗?如果可能的话、更好的是、我可以在一个紧凑的测试案例中复制它吗? 谢谢。

    此致、

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

    感谢您确认 HCCLR 毕竟受 EALLOW 保护!  您是否知道其他人可能会这样?

    对于 ISR 内部的 EALLOW 1、它是 ADCINT1 ISR。  我只是重新测试以确认它、但现在似乎没有这样做。  我会密切关注它。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    只需让您知道我们正在处理其他寄存器的 EALLOW 状态、并将很快确认。 感谢您的耐心等待。

    此致、

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

    设计中的响应是 HCCLR 和 HCLIFIC 寄存器在 F28069上受 EALLOW 保护、但在 TRM 中没有如此标记。  在下一版文档中、这些内容已标记为可更正。  再次感谢您的报告。

    此致、

    Richard

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

    好的、非常感谢您的确认!