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.

[参考译文] TMS320F28069:SoC 使 CMPB 递减

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/596880/tms320f28069-soc-on-decrementing-cmpb

器件型号:TMS320F28069

您好!

除了递减 CMPB (EPwm1Regs.ETSEL.bit.SOCASEL = 0x7)之外、我可以使用 ETSEL 中的所有可用选项生成 SOCA 和 SOCB。 使用该值时是否有不同之处? CMPB 递增(0x6)以及 CMPA inc/dec (0x4、0x5)可以正常工作。 我的 PWM 计数器设置为递增/递减计数(EPwm1Regs.TBCTL.bit.CTRMODE = 0x2)。

这不起作用:

EPwm1Regs.ETSEL.bit.SOCAEN   = 1;             
EPwm1Regs.ETSEL.bit.SOCASEL   = 7;
EPwm1Regs.ETPS.bit.SOCAPRD   = 1;          

但是、这会:

EPwm1Regs.ETSEL.bit.SOCAEN   = 1;             
EPwm1Regs.ETSEL.bit.SOCASEL   = 6;
EPwm1Regs.ETPS.bit.SOCAPRD   = 1;          

对于 SOCA 和 SOCB、我的 PWM1和 PWM2都有这个问题。

任何帮助都很好。

谢谢

Benriah

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

    没有区别。 它在我的测试台上工作正常。

    您能否在代码运行时(即初始化后)检查 CTRMODE 位的设置? 我想知道它是否配置为0x0、这将提供您描述的行为。

    此致、

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

    您好 Richard、

    感谢您的回复。

    EPwm1Regs.TBCTL.bit.CTRMODE 和 EPwm2Regs.TBCTL.bit.CTRMODE 均配置(和保持)值为2。

    我目前正在使用 CCS 中的调试器重新创建问题、只需更改 EPwm2Regs.ETSEL.SOCASEL 和/或 EPwm1Regs.ETSEL.SOCASEL 的值即可

    我将使用连接到 GPIO32的示波器测量 SOCA、GPIO32配置为 SOCA。

    TBPRD = 529;

    CMPA.half.CMPA = 264

    CMPB = 264

    SOCAPRD = 1;

    SOCASEL =(1-6正常工作)、7不会(根本没有 SOCA 脉冲)。

    HRPCTL = 0;

    我将控制卡 v0.2与 TMS320F28069UPZPS 配合使用。

    谢谢

    Benriah

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

    CMPCTL.bit.LOADBMODE 等于3 (冻结(不能加载))

    CMPCTL.bit.SHDWAMODE=0;

    因此、即使我更改了 CMPB、它也只是影子寄存器。
    奇怪的是 SOCASEL = 6有效... 我想默认的 CMPB 必须为零?

    警告:
    将 SHDWAMODE 更改为 CC_IMMETER (1)会覆盖影子寄存器。 如果您写入 CMPB、那么将 SHDWAMODE 更改为 CC_IMMETERE CMPB 将被覆盖。

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

    Benriah、

    是的、没错。  在立即更新模式下、不存在隐藏;对 CMPB 的写入直接进入活动寄存器。

    很高兴知道您发现了问题。

    此致、

    Richard

x 出现错误。请重试或与管理员联系。