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.

[参考译文] TMS320F28069M:ECAP2:CAN#39;t 在1个事件上中断、但可以在2个或更多事件上中断。

Guru**** 2590580 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/666806/tms320f28069m-ecap2-can-t-interrupt-on-1-event-but-can-interrupt-on-2-or-more-events

器件型号:TMS320F28069M

您好!

我正在使用 ECAP2模块捕获 GIO25上相当慢的 PWM 信号(50Hz)。

我的信号包括一个下降沿、一个1.25ms 延迟、一个上升沿以及另一个下降沿之前的另一个8.75ms 延迟。

我将 ECAP2模块设置为 OneShot 模式、并根据需要设置事件极性。

StopWrap 被设定为3个事件并且中断被设定为3个事件。  这个系统运行良好、我可以很精确地测量我的信号。 我也只能成功地记录两个事件。

但是、当我只想启用1个事件(第一个捕捉事件的下降沿)时、我将 Wrap 设置为1、中断为1事件、并且尽管 CAP2.ECEINT 和 CAP2.ECFLG 为第一个捕捉事件显示1、但不会生成中断。

我无法找到有关此问题的任何勘误表、并想知道是否有人以前遇到过类似的问题。

谢谢

太棒了!

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

    您是否介意为我澄清几点。 如果需要在发生1次捕获/1事件时中断、CEVT1设置为1、ECEINT 寄存器的所有其他位设置为0、则 STOP_Wrap 设置为0?

    ECFLG.CEVT1和 ECFLG.INT 的状态是什么?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Stomp、

    我们听到您的反馈已经有几天了。 您的问题是否已解决?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Frank、

    CEVT1和 ECEINT 设置正确、但我在 ECFLG 寄存器中看到了一些随机的标志时序。

    我可以放心地说、在 F28069器件中的启用 CEVT1中断指令和先清除后启用全局中断之间、我的中断正在发生、我正在清除它。

    更复杂的是、我使用 PWM 通道生成"仿真"信号以进行单元测试。 正因为如此、由于单元测试的精确重复性、我在中断使能代码中始终存在相同的缺陷。 完全是我的问题和时序操作的变化会发现该单元工作正常。

    感谢回答我的问题!

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

    很高兴听到您解决了问题! 如果您遇到任何其他问题、请告知我们