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.

[参考译文] TMS320F28376S:在 ISR 内切换中断源

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1179395/tms320f28376s-switch-interrupt-source-within-isr

器件型号:TMS320F28376S

尊敬的先生:

我们正在开发基于28376S 的控制器

2.本软件有两个组件  ,主循环 和基于 XINT2的 ISR

在某些情况 下、我们需要替换中断源(而 不是 XINT2 成为 ePWM_INT)

  开关本身应该在 ISR 内部发生 ,但问题是我知道 C28x 执行 上下文保存和恢复 (进入和退出 ISR 时)

  因此,如果我想更新 ISR 中的 IER ,它将在退出 ISR (上下文恢复)后被覆盖 ,是否有解决方法?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [引用 userid="408463" URL"~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1179395/tms320f28376s-switch-interrupt-source-within-isr "]交换机本身应在 ISR 内部发生 [/引用]

    您能否简单地 从 XINT2 ISR 内部调用 ePWM_INT ISR?

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

    您好,Haresh,

    感谢您的响应 ,XINT2 和 EPWN_INT 以不同 的频率运行 ,它们都调用相同 的 ISR,

    它们 相互排斥 , 软件的步骤如下所示

    A.主  程序+ ISR (基于  20Khz 时的 XINT2)

    b.   在执行 ISR 期间一段时间后 ,我需要将  中断源代替  XINT2 (20Khz) 替换为 EPWM1 (40kHz)

      XINT2和 EPWM1_INT 的两个矢量 指向同一 ISR

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

    Eyal、

        我已请求软件专家帮助您研究您的问题。 感谢您的耐心等待。

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

    您好、Eyal、

    IER 寄存器将被压入栈。 在写入 IER 时、是否尝试更新保存 IER 的存储器位置?

    此致、

    Veena

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

    您好,Veena,

    感谢您的响应 ,我可以在哪里找到 IER 位于堆栈中的确切位置 ,如果还有其他风险,也会有风险

    寄存器/varibles 将被推入 Stuck (由于某些代码)   堆栈内 IER 的位置 也将发生变化,因此其位置 可以更改  

    我弄错了吗?

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

    进入 ISR 后、硬件会自动将一组寄存器(包括 IER)存储到堆栈中。 软件/编译器还会向堆栈添加其他内容、该内容也会根据函数具有的局部变量数量进行修复。  因此、从技术上讲、您应该能够以 (SP - fixedOffset)方式访问该位置

    但是、让我也向硬件专家咨询、看看在 ISR 中更改 IER 是否有任何问题

    此致、

    Veena。