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.

[参考译文] AM5728:AM5728 eCAP/PWM 使用风扇速度控制

Guru**** 2917860 points

Other Parts Discussed in Thread: AM5728, TL5209

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1646735/am5728-am5728-ecap-pwm-usage-fan-speed-control

器件型号: AM5728
主题: TL5209 中讨论的其他器件

尊敬的团队:

我们正在构建一个基于 AM5728 且具有以下风扇相关连接的定制电路板:

  • GPIO3_1 用作 AUXFAN_EN、用于启用/禁用为 FAN_3V3 供电的 TL5209 稳压器
  • GPIO6_30 连接到 FAN_DET
  • 原理图注释:“GPIO6_30 [eCAP 引脚多路复用模式:10]“

从 AM572x TRM 第 29.3.1.2 节中、我们了解当未用于捕获模式时、eCAP 模块也可以在 APWM 模式下运行。

我们想澄清一下、是否可以通过现有硬件连接实现基于 PWM 的风扇转速控制、或者当前设计是否仅用于风扇使能控制和转速计监测。

具体来说:

  1. 在此设计中、GPIO6_30/eCAP 是否可实际用于基于 APWM 的风扇速度控制?
  2. 由于 GPIO6_30 连接到 FAN_DET、将该引脚配置为 APWM 输出是否会产生任何电气或功能冲突?
  3. 此设计的预期用途是:
    • GPIO3_1、用于风扇开/关控制
    • GPIO6_30/eCAP、用于转速计捕获和 RPM 监测

请分享有关在此硬件上实施风扇转速控制的建议。

谢谢。

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

    ##摘要

    GPIO6_30/eCAP 可以使用 APWM 模式配置为基于 PWM 的风扇速度控制、但这样会与您的电流转速计监测设计产生功能冲突。 eCAP 模块无法在同一引脚上同时作为 PWM 输出和捕捉输入运行。

    ——

    ##您的特定问题的答案

    ### 1. 在此设计中、GPIO6_30/eCAP 是否可实际用于基于 APWM 的风扇速度控制?

    是的,在技术上 — 但有一个关键的限制。

    根据 AM572x TRM 第 29.3.2.1 节(捕获和 APWM 工作模式):

    >“当未在捕获模式下使用时、ECAP 模块可配置为单通道 PWM 输出…… CAP 和 APWM 功能之间共享单个引脚。 在捕获模式下、它是输入;在 APWM 模式下、它是输出。“

    APWM 模式下的 eCAP 模块提供:
    - 32 位计数器作为时基
    - PWMSS_eCAP_CAP1 寄存器作为有效周期(频率控制)
    - PWMSS_eCAP_CAP2 寄存器作为有效比较(占空比控制)
    - 非对称 PWM 波形生成

    不过、此模式与捕获模式是互斥的。 一旦为 APWM 输出配置 eCAP1、输入捕获功能将被禁用。

    ### 2. 由于 GPIO6_30 连接到 FAN_DET、将该引脚配置为 APWM 输出是否会产生任何电气或功能冲突?

    是—两个级别上的重大冲突:

    功能冲突:
    - 在捕获模式下: GPIO6_30 是一个接收来自风扇的转速计脉冲的输入
    - 在 APWM 模式下:GPIO6_30 变为由 PWM 逻辑驱动的输出
    - 您不能同时在同一个引脚上运行这两个引脚

    电气冲突(如果两者都尝试):
    - APWM 输出驱动器会主动以 PWM 频率驱动 GPIO6_30 高/低电平
    - 转速计输入脉冲(通过比较器电路从风扇的霍尔传感器发出)将与驱动的输出发生冲突
    - 结果:不可预测的引脚状态和信号不可靠的 PWM 和转速计

    ###3. 此设计的预期用途是 GPIO3_1 用于风扇开/关控制、GPIO6_30/eCAP 用于转速计捕获和 RPM 监控?

    这似乎是一种情况、并且它是一种有效的设计模式:

    您当前的架构可以清晰地区分各种问题:
    - GPIO3_1(GPIO 输出):通过 TL5209 稳压器启用/禁用控制
    - GPIO6_30 (eCAP 输入、引脚多路复用模式 10):RPM 测量的转速计输入捕获

    此设计允许进行风扇开/关控制和 RPM 监控、但不通过 PWM 提供可变速度控制。 当风扇运行时、您可以通过 eCAP 捕捉模块测量风扇 RPM。

    ——

    ##推荐选项

    如果您的系统除了转速计监控之外还需要基于 PWM 的速度控制、请考虑以下方法:

    ###选项 A:使用不同的 ePWM 实例进行速度控制

    如果您的系统同时需要 PWM 速度调制和实时 RPM 反馈:

    - PWM 速度控制:路由到可用的 ePWM 输出(每个设备的 ePWM 实例和 A 或 B 输出)
     - 提供可变占空比控制
     - 独立于转速表反馈
     
    - 转速计监控:保持 GPIO6_30/eCAP 在捕获模式
     - 通过捕捉输入进行连续的 RPM 测量
     - 速度控制和监测之间没有电气冲突

    查找 PWM 可用的 GPIO 引脚:

    请参阅您的 AM572x 数据表中的表 4.3(端子配置和功能-多路复用特性)。 该表枚举了 GPIO 引脚及其多路复用模式 (MUXMODE 0–15)、其中显示哪些引脚可以路由到 EPWM 输出(标记为 `epwm1A ``epwm1B `、`epwm2A`、` epwm2B `、`epwm3A`、 `epwm3B`μ s等)。 识别符合以下条件的 GPIO 引脚:
    - 路由到可用的 ePWM 实例(检查您的设备支持的实例)
    - 尚未用于您的电路板上的其他功能
    - 可以路由到您的风扇 PWM 驱动器电路

    配置相应的 IOMUX 控制寄存器、以便为所选的引脚选择合适的 MUXMODE。

    优点:保留速度控制和 RPM 反馈
    缺点:需要将电路板布线至具有 ePWM 功能的 GPIO;在软件中添加 IOMUX 配置

    ###选项 B:仅 PWM 速度控制(无实时 RPM 反馈)

    - 仅将 GPIO6_30/eCAP 配置为 APWM 模式
    - 提供 PWM 速度控制但失去实时转速计输入
    - 系统无法测量风扇转速或检测风扇停转

    ###选项 C:保持当前设计(仅限开/关控制)

    - 保留 GPIO3_1 以便通过 TL5209 启用/禁用
    - 保持 GPIO6_30/eCAP 以进行转速计输入和 RPM 测量
    - 无基于 PWM 的速度调制
    - 最简单的设计,最少的组件和最低的软件复杂性

    ——

    ##后续步骤

    如果您选择选项 A(带 RPM 监控的 PWM 速度控制):

    AM5728 器件集成了三个 PWMSS 实例(根据 TRM 第 29.1.3 节)、从而提供三个具有可用 A 和 B 输出的 ePWM 模块:
    - ePWM1 (PWMSS1):ePWM1A、ePWM1B
    - ePWM2 (PWMSS2):ePWM2A、ePWM2B  
    - ePWM3 (PWMSS3):ePWM3A、ePWM3B

    由于您当前的设计已经将 GPIO6_30 用于 eCAP1(转速计)、因此三个 ePWM 实例中的任何一个都可用于风扇速度控制。

    1.请参阅 AM572x 数据表表表 4.3(多路复用特性)以识别路由到 ePWM1、ePWM2 或 ePWM3 的 GPIO 引脚(A 或 B 输出)。
    2.选择一个尚未分配给您电路板上其他功能的 GPIO 引脚,该引脚可以路由到您的风扇 PWM 驱动器电路。
    配置 IOMUX 控制寄存器以设置所选引脚的 MUXMODE、从而将其路由到所选的 ePWM 输出。
    4. 实施软件以:
      - 配置选定的 ePWM 实例以生成 PWM(设置周期和占空比寄存器)
      - 保持 eCAP1 配置为 RPM 反馈的捕获模式
      - 实施速度控制算法

    此致、
    Jeff