大家好、我叫 Iulian Popa。
我是´m 萨拉戈萨大学的学生。 我´m 您的开发板'LAUNCHXL-F280049C'、当我尝试控制某些 PWM 信号时、我有一些问题和疑问。
首先、我使用:
- CodeComposer 版本9.3
- C2000Ware 版本3.1.0.00
我的问题与使用高分辨率相移有关。 借助不同模块和 PWM 输出的配置、我可以使用函数"ePWM_setPhaseShift (ePWMx_BASE、xxxU)"在 PWM 输出之间执行相移、并且我还可以对所有 PWM 信号执行高分辨率可变相移。 具体的问题是、我无法通过在"主循环"内或甚至在程序执行期间更改寄存器"EPwmXRegs.TBPHS.bit.TBPHS"来执行可变相移。
总结:
-我可以将 ePWM 模块配置为仅使用自己的配置进行同步和偏移
-我设法配置 MEP 和 HRPWM 寄存器以使该功能正常工作。
-我不明白我必须做些什么才能执行 ePWM_setPhaseShift (ePWMx_BASE、xxxU);在主循环内部、以获得变化的相移(因为我只能获得我放置在配置内部的相移)。 程序运行后是否可以写入该寄存器? 我是否必须做一些特殊的事情才能写入该寄存器
我希望你能理解我的问题:D
问候语。 Iulian