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.

[参考译文] TPS544C20:使用 I2C 接口更改输出电压的 TPS544C20问题

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/960755/tps544c20-question-for-tps544c20-using-i2c-interface-to-change-output-voltage

器件型号:TPS544C20

大家好、

我们的客户希望使用 TPS544C20通过 I2C 接口动态更改输出电压、目前我们可以通过读取/写入寄存  器成功实现 I2C 通信、但我们不了解如何通过 STEP_VREF_MARGIN_HIGH 和 STEP_VREF_MARGIN_LOW 寄存器设置输出电压。 您能帮我们提供更详细的解释和示例、说明如何设置它们以通过 I2C 接口更改输出电压吗?

非常感谢!

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

     

    有2种方法可以通过电源管理总线(PMBus)接口更改 TPS544C20的输出电压。

    第一个是 VREF_TRIM (命令代码 D4)命令、它以 2mV/LSB 步长上下更改基准电压。

    如果您设置 VREF_TRIM = 0001h (+1 LSB)、基准电压将从600mV 增加到602mV、输出电压将以相同比例增加 VOUT_TRIM = VOUT_nom *(600mV + Vref_TRIM * 2mV)/ 600mV。

    例如、当输出为0.9V 时、基准电压增加2mV 将使输出电压增加3mV (2mV * 0.9V/0.6V = 3mV)。  对于1.2V 输出、每个2mV 的 VREF 调节都会改变输出电压4mV。  (2mV * 1.2V/0.6V = 4mV)

    VREF_TRIM 还使用16位2的补码格式支持负值、因此 FFFFh =-1LSB、将基准电压降低2mV。

    使用 VREF_TRIM 更改 VOUT 仅需要发送1条命令。

    第二种方法是使用 Margin 命令。  这需要2条命令。  OPERATION (命令代码01h)命令用于选择是增大裕量、增大 VOUT 还是减小裕量、减小 VOUT、以及 STEP_VREF_MARGIN_HIGH (命令代码 D5h)或 STEP_MARGIN_LOW (命令代码 D6h)命令。  由于这需要两条命令、因此会稍微复杂一些、但即使 STORE_USER_ALL (命令代码15h)函数将更改存储到 NVM 中、TPS544C20也将返回默认输出电压、因为 OPERATION 命令不支持 NVM、并且始终在不启用裕量的情况下加电。

    STEP_VREF_MARGIN_HIGH 和 STEP_VREF_MARGIN_LOW 的工作方式与上面的 VREF_TRIM 命令类似、将 FB 上的基准电压调整2mV / LSB、并使用相同的有符号2的补码格式、除了 STEP_VREF_MARGIN_LOW 只能接受负值、STEP_VREF_MARGIN_HIGH 只能接受正值。

    示例:

    使用 VREF_TRIM 调节1.0V 输出的 VOUT

    1) 1) TPS544C20在 Vref = 0.6V 和 Vout = 1.0V 时加电

    2) 2)要将 VOUT 从1.0V 增加到1.05V、我们会将基准电压从0.6V 增加到0.6V x (1.05/1.0V)= 0.630V、这会增加+30mV、因此我们需要向命令代码 D4写入+15LSB (000Fh)。  如下所示:  

    开始//器件地址+写入位//命令代码= D4 //低字节数据= 0Fh //高字节数据= 00h //停止

    3)为了将 VOUT 从1.0V 降低到0.95V、我们将基准电压从0.6V 衰减到0.6V x (0.95/1.0V)= 0.570V、这会降低30mV、因此我们需要将-15lbs (FFF1h)写入 VREF_TRIM、如下所示:

    开始//器件地址+写入位//命令代码= D4 //低字节数据= F1h //高字节数据= FFh //停止

    要使用 STEP_VREF_MARGIN_HIGH 值执行相同的操作、我们需要:

    1) 1)将调整值写入命令代码 D5 (数据低字节= 0Fh、高字节= 00h)

    2) 2)将10101000'b (A8h)写入操作(命令代码01h)、以选择"on"和"Margin High、对故障执行"

    这会将 输出电压更改为1.05V。  将操作写入00h 或80h 将使输出电压返回到1.0V。

    要将输出电压更改为0.95V、我们需要:

    1) 1)将调整值写入命令代码 D6 (日期低字节= F1h、数据高字节= FFh)

    2) 2)将10011000'b (98h)写入命令代码01以选择"on"和"Margin Low、对故障执行"  

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

    尊敬的 Peter:

    理解、感谢您的友好且非常清楚的解释!