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.

[参考译文] TMS320F28027:无法在触发区事件上创建死区

Guru**** 2774775 points

Other Parts Discussed in Thread: C2000WARE, CONTROLSUITE

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1187573/tms320f28027-not-able-to-create-dead-band-on-trip-zone-event

器件型号:TMS320F28027
Thread 中讨论的其他器件:C2000WAREcontrolSUITE

您好、E2E 专家、

你好。

我将28027用于 PCMC 的同步降压操作。

PWM 1A 用于高侧开关、而 PWM 1B 用于低侧开关。

但是、我能够控制峰值电流、在发生跳闸事件时、当 PWM 1A 变为低电平且 PWM 1B 变为高电平时、我无法插入死区。 这将创建 直通实例。

PWM 配置如下所示。 注释可能不匹配、因为存在实验。 但是 PCMC 正在工作。

EPwm1Regs.TBCTL.bit.PRDLD = TB_Immediate;      //设置立即加载
  EPwm1Regs.TBPRD =周期;
  EPwm1Regs.CMPA.half.CMPA = 290;         //固定占空比为50%
  EPwm1Regs.CMPB = 290;
  EPwm1Regs.TBPHS.Half.TBPHS = 0;
  EPwm1Regs.TBCTR = 0;
  EPwm1Regs.TBCTL.bit.CTRMODE = TB_COUNT_UP;
  EPwm1Regs.TBCTL.bit.PHSEN = TB_DISABLE;
  EPwm1Regs.TBCTL.bit.SYNCOSEL = TB_CTR_ZERO;     //用于同步 ePWM (n+1)"下流"
  EPwm1Regs.TBCTL.bit.HSPCLKDIV = TB_DIV1;
  EPwm1Regs.TBCTL.bit.CLKDIV = TB_DIV1;
  EPwm1Regs.AQCTLA.bit.ZRO = AQ_SET;
  EPwm1Regs.AQCTLA.bit.CAU = AQ_CLEAR;
  EPwm1Regs.AQCTLB.bit.ZRO = AQ_SET;
  EPwm1Regs.AQCTLB.bit.CBU = AQ_CLEAR;
  EPwm1Regs.DBCTL.bit.IN_MODE = 0;
  EPwm1Regs.DBCTL.bit.POLSEL = DB_ACTV_HIC;      //主动高电平辅助
  EPwm1Regs.DBCTL.bit.OUT_MODE = 2;
  EPwm1Regs.DBRED = 20;                //现在的虚拟值
  EPwm1Regs.DBFED = 20;                //现在的虚拟值
  //中断,我们将在其中更改死区
  EPwm1Regs.ETSEL.bit.INTSEL = ET_CTR_ZERO;   //选择零事件时的 INT
  EPwm1Regs.ETSEL.bit.INTEN = 1;         //启用 INT
  EPwm1Regs.ETPS.bit.INTPRD = et_3rd;       //在发生第三个事件时生成 INT
//比较器配置
  SysCtrlRegs.PCLKCR3.bit.COMP1ENCLK = 1;
  //启用比较器和 DAC
  Comp1Regs.COMPCTL.bit.COMPDACEN   = 1;    //本地启用 DAC /加电比较器1
  //---- DAC 配置---  //
  COMP1Regs.DACCTL.bit.FREE_SOFT   = 2;     //自由运行
  COMP1Regs.DACCTL.bit.RAMPSOURCE   = 0;     // PWMSYNC1
  Comp1Regs.DACCTL.bit.DACSOURCE   = 1;     // 0 - DAC、1 -斜坡
  //---- COMP 配置---  //
  Comp1Regs.COMPCTL.bit.SYNCSEL    = 0;    //比较器的异步输出
  Comp1Regs.COMPCTL.bit.QUALSEL    = 2;    //比较器同步输出的限定周期
  Comp1Regs.COMPCTL.bit.COMPSOURCE  = 0;    //将反相输入连接到内部 DAC
  Comp1Regs.COMPCTL.bit.CMPINV     = 0;    // 0 -直接、1 -反相比较器输出直接传递
  EPwm1Regs.HRPCTL.bit.PWMSYNCSEL   = 1;    //斜坡同步源:TBCTR = 0时的 PWMSYNC3
  EPwm2Regs.HRPCTL.bit.PWMSYNCSEL   = 1;    //斜坡同步源:TBCTR = 0时的 PWMSYNC3
  EPwm3Regs.HRPCTL.bit.PWMSYNCSEL   = 1;    //斜坡同步源:TBCTR = 0时的 PWMSYNC3
  EPwm4Regs.HRPCTL.bit.PWMSYNCSEL   = 1;    //斜坡同步源:TBCTR = 0时的 PWMSYNC3
  //---- 数字比较配置--- //
  EPwm1Regs.DCTRIPSEL.bit.DCAHCOMPSEL = 8;     // COMP1输出作为输入
  EPwm1Regs.DCACTL.bit.EVT2SRCSEL   = 0;     // DCAEVT2是源信号选择
  EPwm1Regs.DCACTL.bit.EVT2FRCSYNCSEL = 1;     //异步信号
  //---- PWM TRIPZONE 配置--- //
  EPwm1Regs.TZSEL.bit.DCAEVT2 = 1;         // CBC 源到 ePWM
  EPwm1Regs.TZDCSEL.bit.DCAEVT2 = TZ_DCAH_HI;          //4.
  EPwm1Regs.TZCTL.bit.TZA = TZ_FORCE_LO;
  EPwm1Regs.TZCTL.bit.TSB = TZ_FORCE_HI;
提前感谢您的建议。
此致、
CSC
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    由于假期,专家不在办公室。 请在星期二之前回复。

    谢谢。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Pranali、您好!

    谢谢你。 以下是其他信息:

    如何使用数字比较模块在 PWM 1a 和1b 跳闸事件转换中插入死区?
    此致、
    CSC

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、TI-CSC、

    目前、对于该器件采用 ePWM、跳闸事件转换后不存在在 PWM 中插入死区的可配置选项。 当触发区子模块出现故障时、输出将立即强制进入4种状态之一。 (高、低、高阻抗且未采取任何措施)

    不过、本主题中讨论了一个解决 方案。 这将使用事件筛选 器功能。

    最棒的

    Ryan Ma

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Ryan、

    你好。

    2802x 系列中不提供谷底开关功能。
    此外、还有一个由 TI HVPSFB_V1.1开发的参考设计、该设计在发生跳闸事件时使用此死区。
    但是、我无法从逻辑上了解如何实现它。
    您能否在该参考设计中仅解释比较器和同步整流器 PWM 与死区的链接?
    此致、
    CSC
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、TI-CSC、

    我将就此与另一位专家进行讨论、并在明天结束时向您汇报最新情况。

    最棒的

    Ryan Ma

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    请使用我们更新的 MCU F28004x、F28002x 系列来实现峰值电流模式控制、您可以在触发区事件中轻松插入死区。

    我们还提供了 TIDM-2000参考设计来说明这一点。 为此、请下载 C2000Ware 以查看此 TIDM-2000

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Shamim、

    你好。

    我的设计已处于测试阶段。 它是在 Hrushikesh Nene 提到 HVPS FB 的基础上完成的。
    我需要为同样的解决方案制定解决方案、我认为 这在 HVPSFB 的实施中是可用的。
    此致、
    CSC
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Hrishi 不再在 TI 工作。 controlSUITE 中没有人支持此旧代码。 您必须了解该死区插入是如何实现的、然后遵循相同的步骤。