我正在使用 Code Composer Studio 生成 两个脉冲之间的相移、使用 MATLAB C2000 VLOCKSET 我能够获得脉冲中的相移和死区。 但在 Code Composer Studio 中、我无法这样做。 我在下面给出了我所做的编码。 求你帮我。
进行编程

*作者: Deepti
*/
#ifndef PWM_H_
#define PWM_H_
#include "driverlib.h"
#include "device.h"
//#include "board.h"
//声明
#define EPWM4_TIMER_TBPRD 5000UL
#define EPWM5_TIMER_TBPRD 5000UL
#define EPWM6_TIMER_TBPRD 5000UL
#define EPWM7_TIMER_TBPRD 5000UL
//函数原型
void initEPWM4 (void);
void initEPWM5 (void);
void initEPWM6 (void);
void initEPWM7 (void);
//调用 PWM4函数
void initEPWM4()
{
//设置 TBCLK
ePWM_setTimeBasePeriod (EPWM4_BASE、EPWM4_TIMER_TBPRD);
//同步输出事件
EPWM_setSyncOutPulseMode (EPWM4_BASE、EPWM_SYNC_OUT_PULSE_ON_COUNTER_ZERO);
EPWM_setPhaseShift (EPWM4_BASE、0u);
EPWM_setTimeBaseCounter (EPWM4_BASE、0U);
//同步事件
//ePWM_setCountModeAfterSync (EPWM4_BASE、ePWM_COUNT_MODE_DOWN_AFTER_SYNC);
//设置比较值
EPWM_setCounterCompareValue (EPWM4_base、EPWM_COUNTER_COMPARE_A、2500);
EPWM_setCounterCompareValue (EPWM4_base、EPWM_COUNTER_COMPARE_B、0);
//设置计数器模式
EPWM_setTimeBaseCounterMode (EPWM4_BASE、EPWM_COUNTER_MODE_UP_DOWN);
EPWM_disablePhaseShiftLoad (EPWM4_BASE);
EPWM_setClockPrescaler (EPWM4_base、EPWM_CLOCK_DIVIDER_1、EPWM_HSCLOCK_DIVIDER_1);
//设置隐藏
EPWM_setCounterCompareShadowLoadMode (EPWM4_base、EPWM_COUNTER_COMPARE_A、EPWM_COMP_LOAD_ON_CNTR_ZERO);
EPWM_setCounterCompareShadowLoadMode (EPWM4_base、EPWM_COUNTER_COMPARE_B、EPWM_COMP_LOAD_ON_CNTR_ZERO);
//设置操作
EPWM_setActionQualifierAction (EPWM4_BASE、EPWM_AQ_OUTPUT_A、EPWM_AQ_OUTPUT_HIGH、EPWM_AQ_OUTPUT_ON_TIMEBASE_PERIOD);
EPWM_setActionQualifierAction (EPWM4_BASE、EPWM_AQ_OUTPUT_A、EPWM_AQ_OUTPUT_LOW、EPWM_AQ_OUTPUT_ON_TIMEBASE_ZERO);
}
//调用 PWM5函数
void initEPWM5()
{
//设置 TBCLK
ePWM_setTimeBasePeriod (EPWM5_base、EPWM5_TIMER_TBPRD);
EPWM_setTimeBaseCounter (EPWM5_base、0u);
//同步事件
ePWM_setCountModeAfterSync (EPWM5_base、ePWM_COUNT_MODE_DOWN_AFTER_SYNC);
//相移值
EPWM_setPhaseShift (EPWM5_base、2000u);
//
ePWM_setSyncOutPulseMode (EPWM5_base、EPWM_SYNC_OUT_PULSE_ON_EPWMxSYNCIN);
//设置比较值
EPWM_setCounterCompareValue (EPWM5_base、EPWM_COUNTER_COMPARE_A、2500U);
EPWM_setCounterCompareValue (EPWM5_base、EPWM_COUNTER_COMPARE_B、0U);
//设置计数器模式
EPWM_setTimeBaseCounterMode (EPWM5_base、EPWM_COUNTER_MODE_UP_DOWN);
ePWM_setClockPrescaler (EPWM5_base、ePWM_CLOCK_DIVIDER_1、ePWM_HSCLOCK_DIVIDER_1);
//设置隐藏
EPWM_setCounterCompareShadowLoadMode (EPWM5_base、EPWM_COUNTER_COMPARE_A、EPWM_COMP_LOAD_ON_CNTR_ZERO);
EPWM_setCounterCompareShadowLoadMode (EPWM5_base、EPWM_COUNTER_COMPARE_B、EPWM_COMP_LOAD_ON_CNTR_ZERO);
//设置操作
EPWM_setActionQualifierAction (EPWM5_base、EPWM_AQ_OUTPUT_A、EPWM_AQ_OUTPUT_HIGH、EPWM_AQ_OUTPUT_ON_TIMEBASE_PERIOD);
EPWM_setActionQualifierAction (EPWM5_base、EPWM_AQ_OUTPUT_A、EPWM_AQ_OUTPUT_LOW、EPWM_AQ_OUTPUT_ON_TIMEBASE_ZERO);
}
//调用 PWM6函数
/*void initEPWM6()
{
//设置 TBCLK
ePWM_setTimeBasePeriod (EPWM6_BASE、EPWM6_TIMER_TBPRD);
EPWM_setPhaseShift (EPWM6_BASE、0u);
EPWM_setTimeBaseCounter (EPWM6_BASE、0u);
//设置比较值
EPWM_setCounterCompareValue (EPWM6_BASE、EPWM_COUNTER_COMPARE_A、2500);
EPWM_setCounterCompareValue (EPWM6_BASE、EPWM_COUNTER_COMPARE_B、0);
//设置计数器模式
EPWM_setTimeBaseCounterMode (EPWM6_BASE、EPWM_COUNTER_MODE_UP_DOWN);
EPWM_disablePhaseShiftLoad (EPWM6_BASE);
ePWM_setClockPrescaler (EPWM6_BASE、ePWM_CLOCK_DIVIDER_1、ePWM_HSCLOCK_DIVIDER_1);
//设置隐藏
EPWM_setCounterCompareShadowLoadMode (EPWM6_BASE、EPWM_COUNTER_COMPARE_A、EPWM_COMP_LOAD_ON_CNTR_ZERO);
EPWM_setCounterCompareShadowLoadMode (EPWM6_BASE、EPWM_COUNTER_COMPARE_B、EPWM_COMP_LOAD_ON_CNTR_ZERO);
//设置操作
EPWM_setActionQualifierAction (EPWM6_BASE、EPWM_AQ_OUTPUT_A、EPWM_AQ_OUTPUT_HIGH、EPWM_AQ_OUTPUT_ON_TIMEBASE_UP_CMPA);
EPWM_setActionQualifierAction (EPWM6_BASE、EPWM_AQ_OUTPUT_A、EPWM_AQ_OUTPUT_LOW、EPWM_AQ_OUTPUT_ON_TIMEBASE_DOWN_CMPA);
}
//调用 PWM7函数
void initEPWM7()
{
//设置 TBCLK
ePWM_setTimeBasePeriod (EPWM7_BASE、EPWM7_TIMER_TBPRD);
EPWM_setPhaseShift (EPWM7_BASE、2000u);
EPWM_setTimeBaseCounter (EPWM7_BASE、0u);
//设置比较值
EPWM_setCounterCompareValue (EPWM7_BASE、EPWM_COUNTER_COMPARE_A、2500);
EPWM_setCounterCompareValue (EPWM7_BASE、EPWM_COUNTER_COMPARE_B、0);
//设置计数器模式
EPWM_setTimeBaseCounterMode (EPWM7_BASE、EPWM_COUNTER_MODE_UP_DOWN);
// ePWM_disablePhaseShiftLoad (EPWM6_BASE);
EPWM_setClockPrescaler (EPWM7_BASE、EPWM_CLOCK_DIVIDER_1、EPWM_HSCLOCK_DIVIDER_1);
//设置隐藏
EPWM_setCounterCompareShadowLoadMode (EPWM7_BASE、EPWM_COUNTER_COMPARE_A、EPWM_COMP_LOAD_ON_CNTR_ZERO);
EPWM_setCounterCompareShadowLoadMode (EPWM7_BASE、EPWM_COUNTER_COMPARE_B、EPWM_COMP_LOAD_ON_CNTR_ZERO);
//设置操作
EPWM_setActionQualifierAction (EPWM7_BASE、EPWM_AQ_OUTPUT_A、EPWM_AQ_OUTPUT_HIGH、EPWM_AQ_OUTPUT_ON_TIMEBASE_UP_CMPA);
EPWM_setActionQualifierAction (EPWM7_BASE、EPWM_AQ_OUTPUT_A、EPWM_AQ_OUTPUT_LOW、EPWM_AQ_OUTPUT_ON_TIMEBASE_DOWN_CMPA);
}
*/
#endif PWM_H_
