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:如何避免不必要的中断

Guru**** 2589265 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/792042/tms320f28069-how-to-avoid-the-unnecessary-interruption

器件型号:TMS320F28069

您好、香榭丽舍

 偶尔会出现不必要的中断。
是否有办法 忽略这种中断?

例如 、当 ETPS[INTPRD]的值从2更改为1且计数器值已为1时、中断发生在 ETPS 寄存器写入后。
我想避免这种中断。

我认为、如果 ETCLR.bit.INT 设置为1、中断事件将被清除。
在这种情况下、它将接受另一个中断、并且中断事件被锁存。

我有道理吗?

此致、
Hitoshi

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

    中断系统应该以这种方式工作。 为了避免产生中断、您必须使用 ETSEL.bit.INTEN 禁用中断、然后更改 ETPS、然后重新启用中断。

    ETCLR.bit.INT 被触发为'EDGE':向它写入1会清除现有的中断、但不会被锁存、因此以后将发生任何中断。 如上所述、禁用中断的最佳方法是在外设上执行此操作。

    此致、

    Richard
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Richard、
    但是、我们按照该过程操作、中断在 INTEN 启用后发生。
    除非计数器清零、否则这似乎是不可避免的。

    更改 ETPS 后、我们将忽略 ISR 中的一个中断。
    感谢您的友好支持。
    此致、
    Hitoshi