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.

[参考译文] TPS25751:用于动态灌电流/拉电流角色切换的桶形插孔检测 — VIN_3V3 与用于控制的 GPIO

Guru**** 2476975 points
Other Parts Discussed in Thread: TPS25751

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/1555279/tps25751-barrel-jack-detection-for-dynamic-sink-source-role-switching---vin_3v3-vs-gpio-for-control

器件型号:TPS25751


工具/软件:

我正在使用 TPS25751 PD 控制器、需要 根据外部 9V 桶形插孔的存在情况实现双角色电源开关。

我当前的设置包括:

  • 分压器后跟连接到VIN_3V3 TPS25751 引脚的缓冲器。

  • 连接桶形插孔后、分压器向提供 3.3VVIN_3V3 电压。

  • 断开桶形插孔后、分压器向提供 0VVIN_3V3 电压。

我所需的电源角色行为是:

  • 桶形插孔断开连接:TPS25751 应充当接收端、从 VBUS 汲取 9V 电压。

  • 已连接桶形插孔:TPS25751 应用作电源、提供 5V 电压。

我知道这VIN_3V3是 TPS25751 内核电路的正常电源输入。  当 VIN_3V3为 0V(在我的设置中,桶形插孔断开连接)时、芯片进入“电池电量耗尽“状态。 在此状态下、它由 VBUS 供电并强制仅充当受电方、拒绝供电方请求。 这种仅受电方行为符合我对“桶形插孔断开连接“场景的要求。 我还理解、要使 TPS25751 能够在电池电量耗尽状态后供电、必须通过 I2C 命令 ('DBfg') 显式清除电池电量耗尽标志(在引导标志寄存器中)。

但是、我担心将VIN_3V3用作此目的的动态逻辑输入的含义和可靠性。

我的具体问题是:

  1. 是否一种可靠的推荐做法是VIN_3V3以这种动态方式(在 0V 和 3.3V 之间切换)使用引脚来根据桶形插孔检测来控制电源角色切换?

  2. 鉴于我所需的行为(桶形插孔断开连接时灌电流为 9V、连接桶形插孔时提供 5V) 、并且假设外部主机微控制器发出'DBfg' I2C 命令来清除电池电量耗尽标志、那么 TPS25751 能够在多快、可靠地转换到并保持供电角色 (5V)?

  3. 更适当和可靠的办法是否是:

    • VIN_3V3?提供连续、稳定的 3.3V 电源

    • 利用专用的可配置 GPIO 引脚(例如,如技术参考手册中所述映射到)Barrel_Jack_Event进行桶形插孔检测? 

    • 配置 TPS25751 的固件(通过应用程序自定义工具)、以根据此 GPIO 和的状态管理电源角色切换  

      PORT_CONTROL.UnconstrainedPower比特?  

我们非常希望就这种动态电源角色切换场景的正确实现提供任何指导或确认。 我附上了我们的执行情况的图像、因此也非常希望得到任何确认。 谢谢!

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

    您好、Colton、

    感谢您在 E2E 上联系我们!

    VIN_3V3以这种动态方式(在 0V 和 3.3V 之间切换)使用引脚来根据桶形插孔检测控制电源角色切换是否一种可靠且推荐的做法?

    不建议使用 PD VIN3v3 更改电源角色。 每次 PD 控制器失去该引脚的电源时、PD 都会丢失其应用配置、并需要重新加载固件。 建议在 APP 配置中控制 PD over I2C 的行为。

    考虑到我所需的行为(桶形插孔断开时灌电流为 9V、连接桶形插孔时提供 5V 电压)、假设外部主机微控制器发出'DBfg' I2C 命令来清除电池无电标志、那么 TPS25751 如何可靠、快速地转换到并保持供电角色 (5V)?

    实现这一点的最佳方法是始终启用 PD 控制器、并且如果系统在电池电量耗尽的情况下引导、只会发出一次 DBfg 命令。 使用端口配置、您可以使用 MCU 通过 i2c 连接到各种桶形插孔、从而根据需要配置端口角色。 如果存在连接、更改端口配置将导致连接的当前器件断开连接、并切换到所选的所需角色(供电方/受电方)。 这样就不需要不断地重新应用修补程序、也不需要发出 DBfg 命令。

    [报价 userid=“628233" url="“ url="~“~/support/power-management-group/power-management/f/power-management-forum/1555279/tps25751-barrel-jack-detection-for-dynamic-sink-source-role-switching---vin_3v3-vs-gpio-for-control

    更适当和可靠的办法是否是:

    • VIN_3V3?提供连续、稳定的 3.3V 电源

    • 利用专用的可配置 GPIO 引脚(例如,如技术参考手册中所述映射到)Barrel_Jack_Event进行桶形插孔检测? 

    • 配置 TPS25751 的固件(通过应用程序自定义工具)、以根据此 GPIO 和的状态管理电源角色切换  

      PORT_CONTROL.UnconstrainedPower比特?  

    [/报价]

    不受约束的功率位用于指示系统是否连接了交流电源、更多地用作远端受电设备的指示、不会更改端口上的当前连接、但正如我上面提到的、稳定的 VIN3v3 是首选方法。 请注意、桶形插孔连接的 GPIO 事件 不会自动导致电源角色交换、因此我建议 EC 执行该行为、因为此事件不会更改 PD 的端口角色。

    谢谢您、

    Kevin