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.

[参考译文] TMS320F280039C:CMPSS 不能通过使用 SysConfig 来处理 ePWM。

Guru**** 2265200 points
Other Parts Discussed in Thread: TMS320F280039C, C2000WARE, SYSCONFIG
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1268254/tms320f280039c-cmpss-is-not-working-for-epwm-by-using-sysconfig

器件型号:TMS320F280039C
主题中讨论的其他器件: C2000WARESysConfig

大家好、

我正在使用 TMS320F280039C Launchpad 并启用 CMPSS3、EPWM 通道1和2、ADC、EPWMXBAR。  我的总体想法是、如果在某个 DAC 值 PWM 应该关闭后、ADC 值升高。

我将多路复用器信号用于 LP 输入-23:A0/B15/C15/DACA_OUT、当向 VCC 提供此引脚时、PWM 不会进入关闭状态。

以下是所需模块的配置。

CMPSS1:

高比较器配置:

CMMPSS 多路复用器选择:

低比较器配置:

CMPSS 多路复用器选择

REST 所有 CMPSS 配置为默认值。

EPWMXBAR 设置:

PWM 配置:

EPwm1Regs.TBPRD = PWM_PERIOD;//针对100KHz PWM 频率将周期设置为600个计数

EPwm1Regs.TBCTR = 0;

EPwm1Regs.TBCTL.bit.CLKDIV = TB_DIV1;
EPwm1Regs.TBCTL.bit.HSPCLKDIV = TB_DIV1;
EPwm1Regs.TBCTL.bit.CTRMODE = TB_COUNT_UPDOWN;//向上向下计数模式
EPwm1Regs.TBCTL.bit.PHSEN = 0;
EPwm1Regs.EPWMSYNCINSEL.bit.SEL = SYNC_IN_SRC_DISABLE_ALL;//同步输入已禁用
EPwm1Regs.TBPHS.bit.TBPHS = PH_ANG_CNT_R;
EPwm1Regs.EPWMSYNCOUTEN.bit.ZEROEN = 1;

EPwm1Regs.CMPA.bit.CMPA = 300;
EPwm1Regs.CMPB.bit.CMPB = 0;
EPwm1Regs.CMPCTL.bit.SHDWAMODE = 0;
EPwm1Regs.CMPCTL.bit.SHDWBMODE = 0;
EPwm1Regs.CMPCTL.bit.LOADAMODE = 0;
EPwm1Regs.CMPCTL.bit.LOADBMODE = 0;
EPwm1Regs.CMPC = 0;
EPwm1Regs.CMPD = 0;

//输出 A 的动作限定器控制寄存器
EPwm1Regs.AQCTLA.bit.CBD = AQ_NO_ACTION;
EPwm1Regs.AQCTLA.bit.CBU = AQ_NO_ACTION;
EPwm1Regs.AQCTLA.bit.PRD = AQ_NO_ACTION;
EPwm1Regs.AQCTLA.bit.ZRO = AQ_NO_ACTION;
EPwm1Regs.AQCTLA.bit.CAD = AQ_CLEAR;
EPwm1Regs.AQCTLA.bit.CAU = AQ_SET;

//输出 B 的动作限定器控制寄存器

EPwm1Regs.AQCTLB.bit.CAU = AQ_NO_ACTION;
EPwm1Regs.AQCTLB.bit.CBD = AQ_SET;
EPwm1Regs.AQCTLB.bit.CBU = AQ_CLEAR;
EPwm1Regs.AQCTLB.bit.PRD = AQ_NO_ACTION;
EPwm1Regs.AQCTLB.bit.ZRO = AQ_NO_ACTION;*/

//触发区
EALLOW;
EPwm1Regs.TZCTL.bit.tZA = TZ_FORCE_LO;
EPwm1Regs.TZSEL.bit.OSHT1 = 1;
EPwm1Regs.TZEINT.bit.OST = 1;
EDIS;

//死区
EPwm1Regs.DBRED.bit.DBRED = DEADBAND_200;//200ns
EPwm1Regs.DBFED.bit.DBFED =死区_ 200;//200ns
EPwm1Regs.DBCTL.bit.POLSEL = DB_ACTV_HIC;//低电平有效
EPwm1Regs.DBCTL.bit.OUT_MODE = 3;

//事件触发
EPwm1Regs.ETSEL.bit.inten = 1;
EPwm1Regs.ETSEL.bit.INTSEL = ET_CTR_ZERO;
EPwm1Regs.ETPS.bit.INTPSSEL = 1;
EPwm1Regs.ETINTPS.bit.INTPRD2 = 1;

//adc SOC
EPwm1Regs.ETSEL.bit.SOCAEN = 1;
EPwm1Regs.ETSEL.bit.SOCASEL = 4;
EPwm1Regs.ETPS.bit.SOCAPRD = 1;

我能够读取 ADC 值、以将接地和 VCC 提供给相应的外周引脚编号(23:A0/B15/C15/DACA_OUT)。

在主函数内部完成 PWM 初始化和 GPIO 初始化、while 循环中不运行任何内容。

请告诉我缺少什么。

谢谢!

沙山克

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

    大家好、Shashank、

    感谢您的耐心。

    您能告诉我为  应用程序中的函数 DAC_setShadowValue ()指定了什么值吗?

    这是用于设置 DAC 输出的函数。

    此致、

    哈迪

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

    Hadi、您好!

    感谢您的答复。

    我没有在主应用程序中使用此函数、只使用了我之前附上的函数。

    我们是否必须使用该函数?

    谢谢!

    沙山克

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

    Shashank,

    您提到了"我的总体想法是、是否在某个 DAC 值 PWM 关闭后 ADC 值变为高电平。"  

    如果您使用 DAC 模块、则应该使用它。

    请使用 C2000ware 目录中提供的示例: C2000Ware_5_00_00_00\driverlib\f28003x\examples\DAC

    此致、

    哈迪

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

    Hadi、您好!

    感谢您的答复。

    我错误地提到了、实际上我采用了高比较器配置中的"高比较器 DAC 值"。

    谢谢。

    沙山克

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

    Shashank,

    C2000ware 似乎有问题。 请下载 C2000Ware 的最新版本。 (https://www.ti.com/tool/C2000WARE)

    让我知道它是如何工作的。

    此致、

    哈迪  

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

    Hadi、您好!

    请您确认 C200 ware 有何错误。

    我已经在寄存器级配置了 PWM 和 ADC、以及通过 SysConfig 配置的模块的其余部分。

    此外、您能否确认配置、配置是否正确或其他需要添加的信息?

    谢谢。

    沙山克

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

    Shashank,

    您与我共享的 CMPSS 设置看起来不正确。 如果使用的是 DAC 值、则不应存在 CMPHNMXSEL。 CMPSS MUX Select 窗口应如下所示:

    请下载最新版本。

    此致、

    哈迪