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.

[参考译文] TMS320F28374D:在 SYNC 信号上加载 PWM 比较寄存器的帮助

Guru**** 2430620 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/735378/tms320f28374d-help-on-pwm-compare-registers-load-at-a-sync-signal

器件型号:TMS320F28374D

大家好,  

请我   在   PWM 比较的影子寄存器中写入值  ,并且最好 能够  在 选定的时间或 事件( 如同步 信号)加载。

在  这种情况下,我无法立即加载。  

现在 看 一下第1776页的 TRM ,我可以看到  14.14.2.7 CMPCTL 寄存   器的字段:  LOADASYS  和  LOADBSYNC  。

这些 似乎正是 我需要的  ,但 有问题:

-> 第  1776页提到的 SYNC 信号 :您能不能确认这是哪个信号?   我对此有点困惑  

--> SYNC 信号会影响 PWM 时序?   我无需触摸任何时基、只 需在软件需要时进行负载比较即可

非常感谢  

最好的平地机

卡洛

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    大家好,
    我做了一些步骤,
    我按照第1696页的 blcok 图操作,使用 TBCTL 同步负载:它工作正常,没有 PWM 时基变化,但我不时地会遇到这样的情况-- >某些时间段(即使是正确的比较值)完全变为1或0。
    请你弄错了吗?
    谢谢你
    此致
    卡洛
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    卡洛、

    每个 ePWM 都有一个同步输入、可将 ePWM 时基计数器重置为零(向上计数模式、向上向下计数模式、此时未启用相移、我猜您不使用该模式)。 此同步输入可以来自其他 ePWM、软件或其他源。 在一个简单的情况下、您的 ePWM 未连接到任何其他模块、下面我将对此进行解释。

    每个 ePWM 都可以配置为在不同的模式下运行、但最常见的模式是向上计数模式和向上向下计数模式。 在这种情况下、定时器 TBCTR 将从0开始计数到周期(在上-下模式0-PRD、然后返回到零)。 您可以在 CTR = 0、CTR = PRD 或 CTR = PRD 和0时设置 CMPA、要从影子寄存器更新的 CMPB 值。 这就是影子寄存器的更新方式。 另请注意、当软件同步发生且 CTR 复位时、影子寄存器也将更新。

    NIMA

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    你好,Nima,
    谢谢你,但我不能等待,需要提前加载(我的问题是“立即”导致了所谓的“完成1”或“完成0”期间,我仍在调查为什么...)
    在本例中,我有4个 PWM,一个90度,另一个@ 10kHz,死区时间为2us。
    所有这些器件必须具有相同的占空比,并且我必须每2.5uS 更新一次值(CLA 工作@ 400kHz)
    我需要的是:
    加载 CMP 寄存器(阴影模式)
    在活动寄存器中加载命令上的值,不等待 TBPRD 或 TBzero。

    有什么建议/想法?
    此致
    卡洛
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    强制软件同步是一个选项吗? 如果强制执行软件同步、计数器将重置、更新将会发生。

    NIMA

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 NIMA,
    它不是,我不能重置计数器。 我只需要更新比较寄存器。
    谢谢你
    此致
    卡洛
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    卡洛、

    好的、谢谢。 您能否提供以下信息、以便我的答案不是通用的?

    您使用向上计数模式还是向上向下计数模式?

    NIMA
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    另外、对于您提供的规格、您似乎必须使用立即模式。 我想我知道为什么你得到一个完整的高电平或低电平周期。 我认为问题是您使用立即模式更新 CMPA、B 值、然后由于存在相移、这些值不在 CTR 和 PRD 之间的范围内、从而导致 AQ 在一段时间内从未发生过事件。

    NIMA
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好,Nama,
    I m in up/down (向上/向下输入)。 是立即导致我问题。
    有什么想法吗?
    谢谢你
    重新分级
    卡洛
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您能否阅读上面的消息并验证是否未发生这种情况?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    你好,Nima,
    它很有效! 因此,我们将立即进行双重检查,以避免太接近重新加载点。
    非常感谢您
    此致
    卡洛