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.

[参考译文] TMS320F28P550SJ:CLBXBAR 输出不工作

Guru**** 2693955 points

Other Parts Discussed in Thread: SYSCONFIG

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1589119/tms320f28p550sj-clbxbar-output-not-working

器件型号: TMS320F28P550SJ
主题: SysConfig 中讨论的其他器件

我最初使用覆盖功能来针对 ePWM 信号生成栅极脉冲序列。 所有 6 个栅极脉冲没有足够的覆盖信号、因此建议使用 CLBXBAR 和 XBAR 输出以仅输出状态机。 之后、我发现引脚上不再有输出。 所有 A 信号都在 CLB1 的 TILEA 中完成、B 信号在 TILEB 中从 CLB2 完成。 输出引脚无法改变。 这是我使用 SysConfig 编程的内容。

  1. ePWM1A - CLB1 OUT1(多路复用器 01)连接到 GPIO0/79(使用 CLBXBAR 输出)
  2. ePWM2A - CLB1 OUT4(多路复用器 01)连接到 GPIO2/77(使用 XBAR 输出)
  3. ePWM3A - CLB1 OUT5(多路复用器 05)连接到 GPIO4/75(使用 CLBXBAR 输出)
  4. ePWM1B - CLB2 OUT1(多路复用器 01)连接到 GPIO1/78(使用 CLBXBAR 输出)
  5. ePWM2B- CLB1 OUT5(多路复用器 05)连接到 GPIO3/76(使用 XBAR 输出)
  6. ePWM3B - CLB1 OUT5(多路复用器 05)连接到 GPIO5/89(使用 CLBXBAR 输出)

是否正确配置 XBAR 输出?

谢谢

Dennis

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

    尊敬的 Dennis:

    您能否为我们提供用于 XBAR 配置的.syscfg 文件?

    我看不到您的预期配置详细信息有任何具体问题。

    在馈送到 CLB 之前、您能否确认 ePWM[1:3][A:B]信号按预期行为?

    您是否正确配置了 GPIO Pinmux 以启用正确的 XBAR 输出多路复用模式?

    此致、

    Zackary Fleenor

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

    Zackary、

    附件是我的.syscfg 文件。

    e2e.ti.com/.../Test1053.syscfg.zip

    使用 CLB 的覆盖功能时、EPWM1 和 EPWM2 的 EPWM 信号工作正常。 覆盖功能不适用于 EPWM3、这就是我最终使用 XBAR 输出的原因。 我认为我正确配置了 GPIO Pinmux、但您应该能够检查 SysConfig 文件。

    SysConfig 是否有问题? 我还有一个工单、当我有 CLA 模块时、无法使用 SysConfig 添加 DCL 控制器。

    谢谢

    Dennis

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

    尊敬的 Dennis:

    感谢您分享此文件。 我现在正在审查它。

    您能否确认要从原始线程实现的 EPWM3 信号流的确切预期结果? 某种方框图可能有助于澄清问题。

    此致、

    Zackary Fleenor

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

    Zackary、

    CLB 获取 ePWM 输出并将其转换为脉冲序列、该序列以 120uSec 脉冲开始、后跟 15kHz 脉冲序列。  

    谢谢

    Dennis

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

    尊敬的 Dennis:

    您能否提供有效和无效信号的示波器屏幕截图以供参考?

    您是否可以共享任何应用代码来显示当前的有效实现?

    此致、

    Zackary Fleenor

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

    Zackary、

    这是为 CLB 完成的仿真的输出。 三个输入是 ePWM 门信号、FSM 输出是脉冲序列。  

    下面是最新测试代码的副本。

    e2e.ti.com/.../3482.test1053_5F00_13.zip

    如果您需要任何其他信息、请告诉我。

    谢谢

    Dennis

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

    Zackary、

    在理解问题方面是否有进展??

    谢谢

    Dennis

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

    嗨、Dennis、

    对延迟的回复表示歉意。 感恩节过后,我被淹没了。

    您能否提供前一张票证的详细信息 、其中建议使用 CLBXBAR 和 XBAR 输出以仅输出状态机?

    这一切似乎都有效、我需要向 CLB 专家循环、以进一步深入了解 CLB 配置。

    此致、

    Zackary Fleenor

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

    Zachary、

    这里是指向上一个问题的链接。

     TMS320F28P550SJ:用于覆盖 ePWM 的 CLB 程序 

    谢谢

    Dennis

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

    尊敬的 Dennis:

    我将浏览您共享的文件。 感谢您的分享。 在 sysconfig 文件中、我可以看到 ePWM 模块中配置了 2、3、4、5、6、7 个。 CLB 的输入来自 ePWM 1、2、3。 如果我错了、请纠正我。  
    同时、我将尝试查找配置是否有任何问题。

    谢谢您、
    Praneeth

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

    Praneeth、

    CLB 使用的 ePWM 为 ePWM 1、2 和 3。 CLB 用于制作第一个脉冲为 120uSec 的栅极脉冲序列和 15kHz 脉冲序列。 我查看了在 ePWM 中使用斩波器模块的情况、但无法将频率降至足够低。 目前、我最初使用的是适用于 ePWM1 和 ePWM2 的 CLB 覆盖功能。 我无法使其用于 ePWM3、因此建议使用 XBar 输出将 CLB 输出发送到 EPWM 引脚。 这种情况下、输出从不开启、因此不会生成栅极脉冲。  

    希望这有助于解释问题。 如果我们可以使 ePWM1 工作、我相信其他寄存器也可以工作、因为 XBar 输出可进入 ePWM1、2 和 3 引脚。

    谢谢

    Dennis

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

    Dennis,

    感谢您向我介绍您所面临的问题。 我要求您澄清一点、在您共享的 SysConfig 文件中、未配置 ePWM1 模块。 但是、如您所述、ePWM1 将被 CLB 使用。 那么、是否在稍后进行配置?  

    谢谢
    Praneeth

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

    Praneeth、

    附件是我测试的最新软件。 它使用 CLB 覆盖而不是 XBAR 输出。 ePWM1 和 ePWM2 配置为 SCR1_2。 我想将其转换为使用 XBAR 输出。

    e2e.ti.com/.../test1053.zip

    谢谢

    Dennis

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

    尊敬的 Dennis:  

    我配置了一个简单的 CLB 逻辑块、该逻辑块从 PWM1A 获取输入并使用 CLB_OUTPUTXBAR 输出到 GPIO。 引脚、PWM 输出引脚和 CLB_OUTPUTXBAR GPIO 引脚均提供脉冲。 现在、我查看了您的代码、并尝试发现配置之间的差异(如果有)。 我会在一天或两天内回复您。

    谢谢
    Praneeth

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

    Praneeth、

    我发送给您的最新代码不具有 XBAR 输出、而只是 CLB 覆盖。 我尝试添加 XBAR 输出而不是 CLB 覆盖以测试 PWM1A、但在尝试将 XBAR 分配到 GPIO00 时会发生资源冲突。

    请说明添加 XBAR 的正确方法。

    谢谢

    Dennis

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

    嗨、Dennis

    在 ePWM 配置中将出现“Pin use Case“、选择 CUSTOM、在“Pins Used“字段中选择 None。 这不会将任何引脚分配给 ePWM、但仍会对其进行配置。 现在、这个配置的 EPWM 可供 CLB 使用。 CLB 输出可以路由到所需的 GPIO、而不会发生任何资源冲突。 我已经为 ePWM1A 尝试过该方法、结果是有效的。 也请在您的配置中进行此更改。  

    谢谢
    Praneeth  

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

    Praneeth、

    这使我能够使用 CLB XBAR 输出连接到引脚。 这确实会导致另一个问题。 EPWM 使用 XBAR INput5 与交流线路的零交叉同步。 当我将 CLB 用于输出而不是覆盖功能时、我会丢失同步。 同步是通过使用监控交流线路的 ADC 的 PPB 生成过零来完成的。 GPIO 引脚会导通和关断、以确认过零功能正常。 该 GPIO 引脚连接到 XBAR Input5、用于同步 ePWM1。

    是否有其他方法可以同步 ePWM 来消除问题? 我  使用 EPWM XBAR 根据 ADC 事件生成了 EPWM 跳闸、但无法使其同步 EPWM。

    谢谢

    Dennis

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

    尊敬的 Dennis:

    由于我们使用交叉开关而不是覆盖、因此可以延迟。 换句话说、这不是最快的方法。 不幸的是、除了使用优先权或透过 XBAR 外、我认为没有其他方法是可行的。

    谢谢
    Praneeth

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

    Praneeth、

    最初、我可以使用 CLB1 对 ePWM1A/B 进行覆盖、使用 CLB2 对 ePWM2A/B 进行覆盖、但不能对 ePWM3A/B 进行覆盖 是否有办法使用 CLB1 在 ePWM3A 上进行覆盖、使用 CLB2 在 ePWM3B 上进行覆盖?

    谢谢

    Dennis

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

    Dennis,

    遗憾的是、覆盖功能仅适用于此器件中的 ePWM1 和 ePWM2 模块。 ePWM3 模块不支持该功能。  

    谢谢
    Praneeth

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

    Praneeth、

    使用 CLB 覆盖函数时、CLB 会生成正确的门脉冲序列。 我需要将信号同步到 ADC 过零、我已经通过使用输入 XBAR5 或 EPWMXBAR 跳闸 10 来完成这两项操作。 我可以使用 CLB XBAR 输出生成栅极脉冲序列、这样不必使用 CLB 覆盖。 栅极脉冲序列正确、但当我使用 CLB XBAR 输出时、EPWM 同步会丢失。 我已经测试了输入 XBAR5 和 EPWMXBAR 跳闸 10 方法、但这两种方法都不起作用。 CLB 输出是状态输出、即 (s0 和边界输入 0)、其中边界输入 0 是 ePWM 信号。 EPWM 边界输入是否应该同步到过零、因此 s0 输出也会同步? 如果我可以使同步与 CLB XBAR 输出一起工作、则我不受 ePWM1 和 ePWM2 覆盖的限制。

    谢谢

    Dennis

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

    Dennis,

    从 CLB 的输入到状态输出将有一些延迟、加上 CLBXBAR 导致的延迟。 这些延迟可能是您遇到同步问题的原因。 覆盖将消除明显的 XBAR 延迟。  

    谢谢  
    Praneeth

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

    Praneeth、

    我知道会有一些延误、但我认为这些延误会如此之小、不会造成问题。 我看到的延迟可能以毫秒为单位。 同步是针对电力线的、与电力线相比、CLB 输出基本上会滑动。

    谢谢

    Dennis

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

    Dennis,

    我以前没有听说过几毫秒的延迟。 让我在内部检查是否有人遇到这种延迟。

    谢谢
    Praneeth

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

    Dennis,

    您能否分享详细信息、例如您如何测量延迟? 示波器屏幕截图将非常有用。  

    谢谢  
    Praneeth

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

    Parneeth、

    我发现、来自另一个具有相移的 EPWM 的同步输出 可与 CLB XBAR 输出配合使用。 该解决方案解决了我的问题。

    谢谢

    Dennis

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

    Dennis

    太棒了! 我现在正在关闭该主题。

    谢谢
    Praneeth