主题中讨论的其他器件:TIDM-02000
工具与软件:
您好!
我的 dc2dc 转换器使用上述参考设计、我的 Lunchpad 上的 PCMC 控制装置尚不工作。 当斜坡值等于测量的电流电感器时、PWM 不会改变状态。 我不确定问题是来自 CMPSS 还是 ePWM 配置。 我已经将我的代码与数字电源库中的示例进行了比较、但它无法正常工作。 这可能是一个问题
您能不能看一下我的 cmpss 配置?
CMPSS 配置如下:
空 hw_cmpss:PSFBPCMCInitHV2LV (空)
{
SYSCTL_enablePeripheral (SYSCTL_PERIPH_CLK_CMPSS1);
/**<启用 CMPSS 并配置来自 DAC 的负输入信号*/
CMPSS_enableModule (CMPSS1_BASE);
CMPSS_CONFIGHighComparator (CMPSS1_BASE、CMPSS_INSRC_DAC);
/**<选择来自的 CMPSSH 正输入来自引脚10 CMPSSH1.3*/
ASysCtl_selectCMPHPMUX (ASYSCTL_CMPHPMUX_SELECT_1、3);
/**<使用 VDDA 作为 DAC 的基准、并将 DAC 值设置为1/2 (任意基准)*/
CMPSS_CONFIGDAC (CMPSS1_BASE、(CMPSS_DACREF_VDDA | CMPSS_DACVAL_PWMSYNC | CMPSS_DACSRC_RAMP));
/**< DAC 斜坡初始化*/
CMPSS_setDACValueHigh (CMPSS1_BASE、1000);
CMPSS_configRamp (CMPSS1_BASE、RAMP_MAX_VALUE、RAMP_DEC_VALUE、RAMP_DELAY_VALUE、CMPSS_PWMSYNC1、 USE_RAMP_VAL_SHDW);
/**<配置数字过滤器。 在本例中、maxiums 值将为*/
/**<用于时钟预分频、样本窗口大小和阈值。 */
// CMPSS_configFilterHigh (CMPSS1_BASE、0x3FF、32、31);
/**<初始化过滤器逻辑并开始过滤*/
CMPSS_initFilterHigh (CMPSS1_base);
/**<配置输出信号。 CTRIPH 将馈送到输出*/
CMPSS_configOutputsHigh (CMPSS1_base、CMPSS_TRIP_ASYNC_COMP);
CMPSS_configOutputsLow (CMPSS1_base、CMPSS_TRIP_ASYNC_COMP);
/**<清除所有锁存比较器事件*/
CMPSS_clearFilterLatchHigh (CMPSS1_base);
CMPSS_clearFilterLatchLow (CMPSS1_base);
/**<设置输出 X-BAR 到 OUTPUTXBAR 上的输出 CTRIP! */
xbar_enableEPWMMux (XBAR_TRIP8、0x00);//TODO vet
XBAR_setEPWMMuxConfig (XBAR_TRIP8、XBAR_EPWM_MUX00_CMPSS1_CTRIPH);
XBAR_ENABLEEPWMMUX (XBAR_TRIP8、XBAR_MUX00);
}
宏的值如下:
#define RAMP_DEC_VALUE 10u
#define RAMP_MAX_VALUE 3800u
#define RAMP_BLANCH_VALUE 999u
#define RAMP_DELAY_VALUE 10u
我需要对以下方面作出一些澄清:
1. CMPSS_setDACValueHigh ()函数。 它与 CMPSS 在斜坡模式下的运行是否相关
CMPSS_configRamp (uint32_t base、uint16_t maxRampVal、uint16_t decomVal、uint16_t delayVal、uint16_t pwmSyncSrc、 bool useRampValShdw);-最大 RampVal 是指递减计数斜坡的起始值? pwmSyncSrc 是指生成同步脉冲的 PWM、在本例中称为 ePWM 1
MP PWM 的代码包含在该文件中
e2e.ti.com/.../pwm_5F00_config.cpp
您能否查看代码、并告诉我其中有哪些错误。
我想知道 pwn 同步是否 配置了正确的设置。
谢谢