有两个 H 桥、第一个臂由 CH1/CH2驱动、第二个臂由 CH3/CH4驱动。两个 H 桥的频率相同、但死区不同、死区在两个臂之间切换。
如下图所示、前驱动器是死区时间大于 CH3/CH4的 CH1/CH2、而第二驱动器是死区时间大于 CH1/CH2的 CH3/CH4。
从波形图中可以看出、函数已经实现、但调试过程中存在这样的问题。
在调试过程中、会出现以下波形、即开关后的第一个 CH1/EPWM1A 只有一半的驱动波形、随后的波形正常。
尝试分析 EPWM1A 出现这种现象的原因、因为 EPWM1A 和 EPWM3A 的配置是完全相同的、并且后 EPWM1A 波也是正确的、因此不清楚为什么第一个驱动器出现这种现象的一半。
最后、修改 EPwm1Regs。 HRPCTL。 位。 HRPE = 1;EPwm1Regs。 HRPCTL。 位。 HRPE = 0;获得以下波形
1、目前使用 TMS320F28035PN。
通过配置寄存器 AQCTLA/AQCTLB 可实现封锁和恢复,即在每次封锁或恢复之前配置 AQCTLA/AQCTLB。
我们在固定频率开环下实现死区开关。 这两个波形由同一环路计算、但在发出波形后、会根据波形配置对波形量进行微调。 以 EPWM1A 和 EPWM3A 为例、它们都是 EPwmRegs.AQCTLA.bit.CAD = AQ_SET;EPwmRegs.AQCTLA.bit.CAU = AQ_CLEAR;如果环路计算结果为 CMP1、则为递增。 ePWM 3A 的死区时间为 CMP delta、这需要 ePWM 1Regs。 CMPA = CMP 1 - CMP 差值、ePWM 3Regs。 CMPA = CMP 1。 相反、ePWM 3A 的死区时间大于 ePWM 1A、ePWM 1Regs 的死区时间。 CMPA = CMP 1、ePWM 3Regs。 CMPA = CMP 差值。
目前,所测试的现象是:在 EPwm1Regs 配置下。 HRPCTL。 位。 HRPE = 1时、每次重构 AQCTLA/AQCTLB 后固定的第一个驱动器时都会发生这种现象、并且后续的驱动波形正常。
EPWM1A COMP 加载模式的当前配置如下:EPwm1Regs。 CMPCTL。 位。 LOADAMODE = CC_CTR_ZERO _PRD;EPwm1Regs。 CMPCTL。 位。 SHDWAMODE = CC_SHADOW;。
结合上述现象、我想知道为什么启用高精度时 EPWM1A 的第一个驱动器将丢失一半、而高精度 EPWM1A 的屏蔽将恢复正常。 这之间的关系是什么、谢谢。