工具/软件:Code Composer Studio
是 可用于 Delfino TMS320F28379D 的高分辨率周期和高分辨率死区控制的示例代码。 我 已尝试修改示例代码 HRPWM_DEADBAD_SFO_V8.c、但运气不好。 我需要在13.56MHz 下运行全桥逆变器(H 桥、第二个电桥180度相移)、并具有50%占空比和死区控制。 频率和死区需要能够通过 Delfino 控制器的高分辨率进行精细调节。 谢谢你。
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.
工具/软件:Code Composer Studio
是 可用于 Delfino TMS320F28379D 的高分辨率周期和高分辨率死区控制的示例代码。 我 已尝试修改示例代码 HRPWM_DEADBAD_SFO_V8.c、但运气不好。 我需要在13.56MHz 下运行全桥逆变器(H 桥、第二个电桥180度相移)、并具有50%占空比和死区控制。 频率和死区需要能够通过 Delfino 控制器的高分辨率进行精细调节。 谢谢你。
您好 Devin、
是的、我无法使高分辨率周期控制工作。 我已放弃尝试修改示例代码。 而是使用 Simulink 来构建代码。 我能够生成平均频率为13.57MHz 的 PWM (在所附图像中以黑色显示)、 但是、可以看到5ns 的抖动会将瞬时频率和占空比更改为13.36MHz 和40.78%(在附加的图像中以蓝色显示)以及14.33MHz 和43.93%(在另一个附加的图像中以蓝色显示)。 我附加了 Simulink 模型和生成的 c 代码。 Simulink 中是否有一个选项或 c 代码中是否需要一行来缓解这种情况?
您好 Devin、
非常感谢。 通过在"General"选项卡下的 ePWM7块中更改 Simulink 模型、将同步输出(SYNCO)设置为"Pass Through (EPWMxXYNCI 或 SWFSYNC)"、我使 SYNCOSEL = 0。 在 HRPWM 选项卡下执行该加设置 ePWMxA 上的高分辨率 PWM (HRPWM)负载模式:'计数器等于零(CTR=ZERO)'、ePWMxA 上的高分辨率 PWM (HRPWM)控制模式:' uty or period control mode'、和 ePWMxA 上的高分辨率 PWM (HRPWM)边沿控制模式: "上升沿"、修复抖动频率。 剩下的所有占空比都是从37%变为43%(如附图所示)、即使占空比设置为50%。 是否有任何关于如何解决此问题的建议、最好在 Simulink 中解决? 非常感谢!
这是 F28379D LaunchPad 特有的、但我想知道 controlCARD 是否会出现类似的振荡器频率不匹配问题。 我觉得值得快速检查一下。
振荡器频率必须与 LaunchPad 的外部振荡器频率相匹配。 虽然 F28379D 具有一个振荡频率为20MHz 的内部晶体、但 LaunchPad 还具有一个运行频率为10MHz 的外部振荡器。 Simulink 的默认值为20MHz。 仅使用 F28379D 时、此设置适用。 但是、在 LaunchPad 上使用外部模式时、该频率值可能会导致问题。 请转至硬件实现->器件详细信息->计时并将"以 MHz 为单位的振荡器时钟(OSCCLK)频率"的值从20更改为10。
如果这不起作用、但您仍然卡住、请 联系 MathWorks 技术支持 以获取帮助。
谢谢、
-Brian
您好、Brandon、
我没有找到任何其他建议、我的开发人员本周就外出了。 请 联系 MathWorks 技术支持 以获取帮助。
谢谢、
-Brian