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.

F28022多个ePWM模块同步后调整频率不再同步的问题



按照文档配置ePWM模块,两个模块之间做主从同步,不改变PWM频率而只改占空比时同步没有问题(改变相位后能看出波形相位变化),但是改变频率后就会出现不同步的现象(两个模块的TBPRD都 改成一样的),我设置成1ms步进逐步提高频率(100~200KHz之间变化,相位偏差似乎也会逐步变化,到一定时间相位又能同步,然后又慢慢便宜),不知道是哪里设置不对还是在改变频率时不能同步?

  • 你好. 你的主从同步是怎么做的. 是ePWM1 -> out -ePWM2 in 吗? 能否把代码发出来.
  • 改变频率有可能需要将相关的寄存器都重置一次
  • 需要考虑周期信号的装载点是ZERO还是PERIOD,以及同步信号选取的同步源是ZERO还是PERIOD,同时要结合PWM模式是COUNT_UP_DOWN,还是COUNT_UP等综合考虑。
    出现你说的情况在周期值更新的当前周期会有发生,所以如果每个PWM周期都会改变PWM周期值,并要求多个PWM同步的话,那么有可能会损失同步的表现性能,因为所有操作都需要时间,如果每个周期都要调整周期值,系统会处于一直调整的状态,同步信号也会一直在找跟随点。