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.

[参考译文] c2000-digitary-control-library:在 TI 示例 C2000数字电源代码中对控制算法的困惑

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/988911/c2000-digital-control-library-confusion-about-control-algorithm-in-ti-example-c2000-digital-power-code

器件型号:C2000数字控制库

您好!

 在 https://www.ti.com/lit/ug/tidueg2c/tidueg2c.pdf?ts=1616667110428&ref_url=https%253A%252F%252Fwww.google.com%252F 的第35页 上、有一个包含3个中断的软件例程。  

我的问题很简单-为什么 solution.h 文件执行第一个 ISR 两次? 如果 RUN_ISR1专用于使用新值更新 PWM 寄存器、那么为什么再次调用 RUN_ISR1来执行完全不同的函数、即读取新的 ADC 值等?

这应该是第二个 ISR、即 RUN_ISR2吗?  

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

    第二个 ISR 需要禁用到次级侧的相位同步。 这样可以减少抖动。 当使用高分辨率模式时、PWM 同步脉冲需要被最小化。

    请参阅第31页的注释

    "每次启用 ISR1时、都会触发两次。 在第一个 ISR1中、更新 PWM 寄存器并启用同步。 在第二个 ISR1中、PWM 同步被禁用、CMPC 被设置为一个值、这样 ISR1不会再次触发。 为简单起见、软件图和结构仅显示首次触发的 ISR1。"

x 出现错误。请重试或与管理员联系。