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 斜坡发生器(RAMP Generator) 触发信号的问题

这是斜坡发生器的框图,从图中可以看出触发信号是 PWMSYNCx

问题是 PWMSYNC信号是什么信号 整个一千多页的文档都未提及

我猜测是 EPWMxSYNCI 或者 EPWMxSYNCO ?

希望有人能够解答

如果的 EPWMxSYNCI 的话,那么我用软件产生 EPWMxSYNCI 脉冲 然后触发RAMP是否可行?

调了一天了 也没出来,好捉急。。

  • 都没人用过斜坡发生器吗? T^T  T^T 

  • PWMSYNCOUT.

    PWM SYNC Related Enhancements
    ePWM Type 4 allows PWM SYNCOUT generation based on CMPC and CMPD events. These events
    can also be used for PWMSYNC pulse selection

    Eric

  • 又调试了两天 

    发现 无论是PWMxSYNCI 和 PWMxSYNCO 都不能触发。。

    反而 当TBCTR的值达到设定的TBPRD 时会触发RAMP

    能令设定的值RAMPMAXREF_SHDW 和 RAMPDECVAL_SHDW写入RAMPMAXREF_ACTIVE和 RAMPDECVAL_ACTIVE寄存器

    并且RAMPSTS的值也开始跳动

    我将触发PWMxSYNCO的通道都设定过 同时也试过禁止PWMxSYNCO和PWMxSYNCI 

    都是以上的结果。

    _____________________________________________________________________

    搞不清所以然 我就想 那就用TBCTR来触发吧

    而调试的时候又发现。。 当设为UP-COUNT的时候

    我直接给TBCTR赋值是不能触发的(TBCTR的值是可以写入)

    只有当TBCTR自然的增加到TBPRD 时才能触发。。

    _____________________________________________________________________

    好吧,那我就通过设定TBPRD(也就是设定PWM的周期)来使用RAMP Generator吧

    到头来发现 虽然RAMP被触发了 也被加到内部模拟比较器的负极上了,

    RAMPSTS值也可以按自己的意愿来控制了

    反而! 比较器无法识别RAMPSTS的值

    比较器负极一直维持在RAMPMAXREF_SHDW 这一个值。

    _____________________________________________________________________

    好吧 我崩溃了 再也不相信爱情和DSP C2000了。。