ST意法半导体
直播中

李桂兰

7年用户 1474经验值
私信 关注
[问答]

是否可以使用PPS来改变输出电压而无需来自接收器的RDO?

您好,我正在设计一个移动电源温度控制器,它通过改变 PPS 功率曲线来控制加热元件的温度。我正在使用 STM32G071RB mcu 来处理 PD 通信。我知道在电池充电应用中,PPS RDO 从接收器发送到源,但如果源(带有 G0 mcu 的移动电源)可以在没有接收器请求的情况下改变它的 PPS 电压,那么在我的应用中会更简单。这是可能的还是我必须从接收器发送 RDO?
水槽是一个 100W (20V 5A) 加热元件,带有热电偶,通过其 usb-c 连接器的 usb 2.0 引脚中继其数据。温度控制器代码将在移动电源上运行。如果 PPS 只能在接收器发送 RDO 时工作,那么移动电源将需要使用 RDO 向接收器中的 G0 mcu 发送消息,然后将消息发送回移动电源。这似乎是多余的,因为这不是接收器定向充电应用程序。相反,我想跳过这一步,让移动电源在其自己的温度控制器代码指示时更改 PPS PDO。安全在这里不是问题,因为电阻加热器具有 USB-C 规格的最大功率,因此 PDO 不能超过它。
回顾一下,是否可以使用 PPS 来改变输出电压而无需来自接收器的 RDO?如果可能的话,我应该怎么做呢?

回帖(1)

张倩

2022-12-6 10:09:58
让我们以为EVAL- G081提供的演示为例。
该演示在 EVAL 板上有 2 个 USB-C PD 端口(端口 0 上有 1 个 DRP,端口 1 上有 1 个接收器)。
默认情况下,源的 PDO 列表在usbpd_pdo_defs.h中设置。
在此演示中,默认情况下,端口 0 有 3 个 FIXED PDO (5/9/15V) 和 1 个 APDO (3.3V -> 5.9V)。
您可以根据您的用例动态更改此列表:
1) 默认情况下,当堆栈启动时,它会将 SRC_CAPA 发送到 Sink,其中包含 PWR_Port_PDO_Storage[USBPD_PORT_0].SourcePDO.ListOfPDO 中可用的 PDO 列表(初始化时 PORT0_PDO_ListSRC 的副本


  • 您只能放置 3 个 FIXED PDO,然后 Sink 应该选择其中一个 PDO

2) 建立合同后,您可以在添加 APDO 时更改此 PDO 列表,并通过 DPM 函数发送新的 SRC_CAPA 消息:' USBPD_DPM_RequestSourceCapability '。


  • 如果sink 支持PPS,它可以选择APDO。

请找到动态发送 SRC_CAPA 消息的过程:
举报

更多回帖

发帖
×
20
完善资料,
赚取积分