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.

[参考译文] AM13E23019:通过软件将 MCPWM 引脚设置为高阻抗

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1637428/am13e23019-set-mcpwm-pins-to-high-impedance-by-software

部件号: AM13E23019

您好团队:

是否有办法通过软件将 MCPWM 引脚置于高阻抗模式来将其关断?

在 AQSFRC 寄存器中、它只能配置为高或低空闲电平、而不能配置为高阻态

此致
Manuel

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

    您好 Manuel、

    正确的是、AQSFRC 寄存器(第 18 章、偏移 0x24)只能强制输出为高电平或低电平、本身不支持高阻抗(高阻态)状态。 但是、您有两种基于软件的方法来为 AM13E230x 实现这一点:

    选项 1:跳闸区 (TZ) 子模块(推荐)

    跳闸区子模块(第 18 章)设计为可以安全地禁用 PWM 输出、包括强制它们进入高阻抗状态。 按如下方式对其进行配置:

    1. 将跳闸操作设置为高阻态 在中 TZCTL 寄存器 (第 18 章、偏移量 0x12)。 将TZA AND/ORTZB 位域设置为0,0(请参阅下表):

      TZCTL 位字段
      输出状态
      注释
      0、0
      高阻抗
      跳变
      0、1
      强制高电平
      跳变
      1、0
      强制低电平
      跳变
      1、1.
      没有变化
      不执行任何操作
    2. 触发跳闸事件 方法是在中启用跳闸源 TZSEL 寄存器 (第 18 章、偏移 0xA0)。 您可以使用一次性 (OST) 或逐周期 (CBC) 跳闸信号。 通过 TZFRC(偏移 0x18)触发的软件强制跳闸事件会立即将输出置于高阻态

    这种方法提供每输出(A 和 B 独立)控制、并利用专为安全 PWM 关断而设计的硬件[1]。 跳闸区为低电平有效 — 要激活它们,需要为单次触发或逐周期运行设置相应的 TZSEL 位[5]。 已触发状态需要使用 TZCLR(偏移 0x16)清除 OST 源。

    选项 2:IOMUX 引脚重新配置

    在中、您可以通过重新配置引脚的模式来完全从引脚断开 MCPWM 信号 IOMUX 寄存器 最终目的 0(已断开连接) [7]。 例如:

    • PA7 (IOMUX_PA7 AT0x400C_C01C ):模式 0 =已断开连接
    • PA8 (IOMUX PA8 AT0x400C_C020):模式 0 =已断开连接
    • PA11 (IOMUX_PA11 AT0x400C_C02C ):模式 0 =已断开连接

    设置模式 0 可有效地使引脚处于 tri 状态[4]。 您必须写回适当的 MODE 值才能重新启用 PWM 功能。

    使用哪种方法?

    标准
    跳闸区
    IOMUX
    响应速度
    快速(硬件级)
    较慢(寄存器写入延迟)
    专为 PWM 控制而设计
    是的
    否(通用引脚多路复用器)
    每输出 A/B 控制
    是的
    仅每引脚
    最适合
    故障处理、运行时开启/关闭
    静态禁用、未使用的通道

    对于大多数用例、尤其是运行期间需要动态启用/禁用 PWM 输出的用例、跳闸区方法是更好的选择。 它是专为此目的而设计的、并以硬件级速度[5]进行响应。

    参考资料:

    AM13E230x TRM (SPRUJF2A)–MCPWM 模块概述、通道 18
    AM13E230x 数据表 (SPRSPC3)–MCPWM 基本地址
    AM13E230x TRM (SPRUJF2A)–TZSEL 寄存器、偏移量 0xA0
    AM13E230x TRM (SPRUJF2A)–TZCTL 寄存器、偏移量 0x12
    AM13E230x TRM (SPRUJF2A)–跳闸区域子模块
    AM13E230x TRM (SPRUJF2A)–MCPWM 寄存器映射
    AM13E230x 数据表 (SPRSPC3)–IOMUX 引脚配置

    此致、

    Zackary Fleenor