工具与软件:
你(们)好
我正在研究用于的代码 C2000 DPS BoosterPack 我有一个关于的问题 消隐窗口 (我在工作 开环 VMC )。 这是什么 CMPSS 模块 在配置之后结束:

-
CTRIPL 转至 ePWM X-Bar .
-
CTRIPOUTL 转至 输出 X-Bar .
配置了之后 跳变电流最低的器 和 数字滤波 、代码将选择 EPWM1BLANK 作为源、并启用 EPWMBLANK 常见。
// // Use the Blanking signal from Sync Buck EPWM to reject switching noise // CMPSS_configBlanking(BUCK_OC_CMPSS_BASE, BUCK_DRV_EPWM_NUM); CMPSS_enableBlanking(BUCK_OC_CMPSS_BASE);
然后、它会配置 ePWM 的消隐窗口
//BUCK_DRV_EPWM_TBPRD = 499 (100MHz/200kHz -1)
//BUCK_DRV_EPWM_DC_BLANK_EARLY (5)
#define BUCK_DRV_EPWM_DC_BLANK_OFFSET ((uint16_t)BUCK_DRV_EPWM_TBPRD - BUCK_DRV_EPWM_DC_BLANK_EARLY)//494
//BUCK_EPWM_NS = 10nS
//BUCK_DRV_EPWM_DC_BLANK_EARLY = 5
#define BUCK_DRV_EPWM_DC_BLANK_LENGTH ((uint16_t)(190 / BUCK_EPWM_NS) + BUCK_DRV_EPWM_DC_BLANK_EARLY)//24
//
// BUCK_HAL_setupSyncBuckBlankingWindow - Use ePWM blanking window (filter) to:
// A) Avoid boundary conditions originating from comparator trips arriving
// near the end of ePWM cycles, and
// B) Switching noise at the start of ePWM cycles (VMC)
//
void BUCK_HAL_setupSyncBuckBlankingWindow(void)
{
EPWM_setDigitalCompareFilterInput(BUCK_DRV_EPWM_BASE,
BUCK_DRV_EPWM_DC_BLANK_SOURCE);
EPWM_setDigitalCompareBlankingEvent(BUCK_DRV_EPWM_BASE,
BUCK_DRV_EPWM_DC_BLANK_PULSE);
EPWM_setDigitalCompareWindowOffset(BUCK_DRV_EPWM_BASE,
BUCK_DRV_EPWM_DC_BLANK_OFFSET);
EPWM_setDigitalCompareWindowLength(BUCK_DRV_EPWM_BASE,
BUCK_DRV_EPWM_DC_BLANK_LENGTH);
EPWM_enableDigitalCompareBlankingWindow(BUCK_DRV_EPWM_BASE);
}
我的问题是:
-
在第一个代码中、当您配置:
-
CMPSS_Reg.COMPDACCTL.BLANKSOURCE = 0 -
CMPSS_Reg.COMPDACCTL.BLANKSOURCE = 1
这是否意味着我要告诉 MCU 这一点 EPWM1 会在发生跳闸时阻止跳闸? 是这样吗?
-
-
我完全不了解的配置 消隐窗口 . 我知道消隐窗口很有帮助 DCAEVT1/2 和 DCBEVT1/2 避免干扰、错误标志(例如过流)等 但是、我如何知道是否 CTRIPL 或者 CTRIPOUTL 对应的温度 DCAEVT1 ?
检查 表9-2. 、我看到:
-
CMPSS1_CTRIPL = INPUTXBAR1 | CLB1_OUT12 | ADCCEVT1 -
CMPSS1_CTRIPH = ADCAEVT1
我如何确定哪个信号对应 DCAEVT1 ?
-

-
消隐窗口配置代码可选择:
-
ePWM_Reg.DCFCTL.PULSESEL = 1(脉冲选择时间TBCTR = 0x00) -
ePWM_Reg.DCFOFFSET = 494 -
ePWM_Reg.DCFWINDOW = 24
代码是如何选择这些值的? 我该如何确定什么 窗口值 和 0.5 μ V 适合我的应用?
-
