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.

[参考译文] TMS320F28377D:F28377D 来自/TZN 示例代码的 F28377D 操作限定器模块 T1/T2? 不清楚中断使用情况、与其他 TZ 功能的交互。

Guru**** 2616675 points

Other Parts Discussed in Thread: C2000WARE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/696940/tms320f28377d-f28377d-action-qualifier-module-t1-t2-from-tzn-example-code-unclear-about-interrupt-usage-interaction-with-other-tz-functionality

器件型号:TMS320F28377D
主题中讨论的其他器件:C2000WARE

是否有任何用于使用到操作限定符的 T1/T2输入的示例代码?  对于如何使用/TZ1作为 AQ 的 T1输入、是否必须选择 OST 或 CBC、我有很多问题-数据表和硬件参考手册显示了 t1和 t2进入动作限定符、就像魔术一样、 因此 、对于我来说、/TZN 或 DcnEVT 是如何衍生出来的关系现在有点神秘。  我将 TZFRC 用于不同的用途、但我确实需要内置的死区和通过 GPIO XBAR 对我放置的事件进行极快的响应时间。  我已经确信 T1/T2是这方面的最佳机制、因为我迄今为止尝试过的所有其他器件(eCAP、XINT、AQSFRC)甚至对于150MHz 处理器和75MHz TBCLK、都满足了2至8uSec 的不一致响应时间。  感谢您的任何帮助。  如果可能、我特别希望能够通过直接沟通与 FAE 进行讨论。

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

    Susan、

    我认为没有有关如何使用 T1/T2的好示例、您应该能够从 C2000Ware 中的任何 PWM 示例开始。(C:\ti\c2000\C2000Ware_1_00_04_00\device_support\f2837xd\examples\cpu1)  

    1. 您正在尝试使用 T1输入对 PWM 执行什么操作?
      1. 如果它像关闭 PWM 一样简单、那么您是否使用了所有跳闸区域 TZ1-3?
    2. T1只是操作限定符快速响应源的一种方式。 可以通过修改 AQTSRCSEL 寄存器来配置事件源。

    希望这对您有所帮助、
    Cody  

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

    您好、Cody、

    我已经尝试了几种方法来在 ePWM 上实现快速电流限制跳闸(使用 CMPA 生成 PWM 信号的向上/向下计数模式、使用死区模块在 ePWMA 和 ePWMB 上生成高电平有效互补对。  到目前为止、我已经尝试过通过 GPIO 输入 XBAR 和 AQCSFRC 使用 TZ、ECAP、XINT (持续软件强制)。  虽然我可以让每种方法都正常工作、但我一直遇到各种各样的延迟、从最低2uec 到最高10uec 不等。   我需要 在5 μ s 内检测电流限制并翻转 ePWM (上开关、下开关打开、需要死区来防止击穿电流)、持续时间至少为25 μ s、或周期的一半。  

    我认为仍然可以提供死区的最佳解决方案(最低延迟)是 AQCSFRC (仍然需要 ISR 和一些代码、因此效率不是最高的) 或者更好地将/TZ1用作 AQ 的 T1输入源、以生成我在跳闸区域中所做的操作(使用 OST 或 CBC 强制 A 为低电平、强制 B 为高电平)、但由于缺少死区而无法执行。

    我在论坛上读到的关于 T1的所有内容都让我认为它不起作用-有一个冗长的线程、在这个线程中、其他人也在做同样的事情、但使用数字比较器、而不是 TZ 作为 T1的来源。   另一个线程让我认为 、T1/T2可能更多地用于比较器、而不是用于跳闸事件、我不知道如何 从我的/TZ1事件到达 T1。  

    我通过示例代码了解如何将 TZ 配置为 T1的源、以及如何在 T1向上、T1向下配置 AQ 操作、 但我不明白 T1事件的定义是什么-是原始/TZ1、还是我产生的"事件"、它在跳闸区域模块中设置了所有 TZ1寄存器设置、即使我不想对事件采取跳闸区域操作?  因此、如果我将/TZ1配置为下降沿或上升沿触发、这是否意味着我在 T1上收到针对/TZ1上下降沿和上升沿的事件?   我不希望/TZ1在跳闸区域模块中引起任何操作或生成中断、只需帮助我在特定时间段内改变 PWM 信号(死区仍然有效)。

    谢谢、

    Susan

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    • 以生成我本来应该对跳闸区域执行的操作(使用 OST 或 CBC 强制 A 为低电平、强制 B 为高电平)、但由于缺少死区而无法执行此操作。

    TZ 操作设置如何: A =高电平、 B =未 采取任何操作? 高侧开关将关闭、低侧开关将保持运行。

    Edward

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

    尊敬的 Edward:

    当电流限制发生时、A 为高电平、B 为低电平(通过 DB 模块设置为高电平有效互补模式)。 我希望尽快切换到 A 为低电平、B 为高电平。 这需要死区延迟、否则会产生不良情况。 这里没有"不采取行动"的情况-他们都需要被迫进入相反的状态。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    很清楚、我知道器件内有许多方法可以实现这一点。 我已经实现了大多数(ECAP、XINT、tz、aqcsfrc)、成功程度各不相同。 跳闸区域由于死区而无法工作-它们同时切换、这不是很好。 我想、如果 T1/T2允许您对跳闸事件做出相同的反应、但不需要 ISR 和相关的开销、这将是我迄今为止的最佳选择。 但是、我无法从数据表和 HRM 的组合中找出当您将/TZ1连接为 T1的源时、确切定义"事件"的内容。 如果我不知道事件是什么(极性边沿、电平边沿、CBC、OST 等)、那么当我需要清除事件时、除了通过移除/TZ1作为 T1的源之外、我将无法清除或清除事件、 当必须存在更简单的方法时、哪种方法看起来像是真正的黑客方法、对吧?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    这就是我建议仅关闭高侧开关的原因。 由于 TZ 位于 DB 单元之后、因此触发区触发时、TZ 之后不能有适当的死区。 我知道、仅关闭高侧开关可能并不适合所有应用、但如果您仅关闭高侧开关、则可以保证死区。 如果这不合适、那么我会考虑具有内置 DB 的 MOSFET 驱动器。

    Edward
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    由于 TZ 位于 DB 之后、因此我不仅不会获得所需的死区、而且也不会获得所需的信号补码、这就是我们消耗电流的方式。

    因此、TI 无法向我解释如何通过 AQ 的 T1输入来使用/TZ1、以便执行我想要的操作并仍然具有死区? 对于这种类型4 ePWM 的所有功能、最好的建议是、我应该让我的硬件人员打开一个不同的桥式驱动器 IC? 我正在寻找有关如何在芯片中实现/TZN 到 T1/T2功能的说明。 数据表和 HRM 为我提供了寄存器设置、但对事件配置的解释不多。 在放弃之前、我想了解该功能是什么、并告诉硬件人员、我们无法实现该功能、他必须找到不同的 IC。