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.

[参考译文] TMS320F28386D:在异步模式下配置 CMPSS、以实现峰值电流模式控制

Guru**** 2448780 points
Other Parts Discussed in Thread: TMS320F28386D, SYSCONFIG, C2000WARE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1459110/tms320f28386d-config-cmpss-in-async-mode-for-peak-current-mode-control

器件型号:TMS320F28386D
主题中讨论的其他器件: SysConfigC2000WARE

工具与软件:

尊敬的专家:

我将以异步模式对 TMS320F28386D 器件上的 CMPSS4进行编程、以实现峰值电流模式控制。

我无法禁用 CMPSS 中的锁存器以获得异步模式。

下面是我的 CMPSS4的配置

如您所见、已选择异步路径(CTRIPOUTxSEL = 0、CTRIPxSEL = 0)。

每次模拟信号超过阈值时、都会相应 地跳闸相应的 PWM。  

但是、当模拟信号取消重复密封达到0时、PWM 保持跳闸、因为比较器的输出被锁存。

最后、如果我通过位 HLATCHCLR 将 COMPHLATCH 位清零、则会消除 PWM 的跳闸。

因此、似乎尽管我的配置、锁存器始终处于启用状态...

为什么 CMPSS 的锁存器不能旁路?

等待反馈、

此致、

贝尼托

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

    您好!

    如果需要锁存路径、请使用 COMPSTSCLR 清除 COMPSTS 锁存器。 有关 LATCHCLR 的更多信息、请参阅器件 TRM: https://www.ti.com/lit/ug/spruii0f/spruii0f.pdf  、第22.6.1章 LATCHCLR、EPWMSYNCPER 和 EPWMBLANK 信号

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

    尊敬的 Stevan:

    锁存路径是有害的。

    我无法禁用 CMPSS 中的锁存以获得异步模式。

    我想实施峰值电流模式控制。 因此、CMPSS 必须配置为异步模式。

    [报价 userid="471199(1998) url="~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1459110/tms320f28386d-config-cmpss-in-async-mode-for-peak-current-mode-control 最后,如果我通过位 HLATCHCLR 清除位 COMPHLATCH ,将删除 PWM 的跳闸。[/QUOT]

    我的 PWM 配置为逐周期模式。  

    此外、我通过示波器观察到、如果模拟信号重新变为0、则信号 CTRIPOUTH 会恢复为低电平。

    所以、我的 CMPSS 异步配置是正确的。。

    不过、 为了恢复 PWM 并消除跳闸、必须 通过位 HLATCHCLR 来清除 COMPHLATCH 位。

    如果不清除该位、PWM 将保持跳闸。。。

    还有其他建议吗?

    贝尼托

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

    您好 Benito、

    我明白你现在的意思了。 您是否这样设置了 SysConfig?   在这种情况下、您不应该有锁存输出。 此外、C2000Ware 中还有异步跳闸的 CMPSS 示例: C:\ti\c2000\C2000Ware_5_03_00_00\driverlib\f2837xs+ examples\cpu1\cmpss

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

    尊敬的 Steven:

    感谢您的答复。

    您是否按此方式设置了 SysConfig?

    是的、我做到了。 正如您在我的配置中看到的那样、即寄存器 COMPCTL。 CTRIPOUTHSEL= 0x0和 COMPCTL.CTRIPHSEL=0x0。

    这是用于配置异步比较器的位字段值。  

     

    [报价 userid="580964" url="~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1459110/tms320f28386d-config-cmpss-in-async-mode-for-peak-current-mode-control/5600442 #5600442"]此外、C2000Ware 中还有异步跳闸的 CMPSS 示例: C:\ti\c2000\C2000Ware_5_03_00_00\driverlib\f2837xs+ examples\cpu1\cmpss

    我将研究该示例、并且会给您提供反馈。

    非常感谢。

    贝尼托