[资料分享] TPS546D24_C23动态调压

qwqwqw2088   2020-9-27 08:46 楼主

根据PMBUS 1.3.1版本协议,第二节8.2部分,本文将简述如何通过VOUT_COMMAND进行动态输出电压调节的方法,该方法适用于linear格式的所有PMBUS设备(TPS546C23, TPS546D24和多相控制器)。调压有几个步骤,以TPS546C23为例。TPS546C23的调压实质上是调节其内部的参考电压(EA_REF)。

image-20200926214941-1.png

1. 确定输出电压调压需求:对于一个750mV典型输出,设定其调压需求为15%,即:

image-20200926215020-3.png

2. 由外围硬件电阻分压比值,确定内部参考电压EA_REF的范围:

image-20200926215006-2.png

 

假设为8.5kΩ,为1.5kΩ,则比值为0.85。由上式可以确定EA_REF范围为:

image-20200926215044-4.png

3. 由EA_REF算式,确定VOUT_COMMAND范围,EA_REF的算式如下,出厂默认设置时,VOUT_SCALE_LOOP为1,VREF_TRIM,STEP_VREF_MARGIN_HIGH×OPERATION[5]和STEP_VREF_MARGIN_LOW×OPERATION[4]为0。一般而言,STEP_VREF_MARGIN_HIGH和STEP_VREF_MARGIN_LOW这两个寄存器是用来在量产时进行拉偏测试用,预先设定好STEP_VREF_MARGIN_HIGH拉偏上限,STEP_VREF_MARGIN_LOW拉偏下限,在产线上仅需要置位OPERATION寄存器[5]和[4]即可进行拉偏测试,非常简便。

image-20200926215058-5.png

由算式可知,VOUT_COMMAND的范围为:

image-20200926215113-6.png

本帖最后由 qwqwqw2088 于 2020-9-27 08:46 编辑

回复评论

4. 确定VOUT_COMMAND的最小步进值LSB。LSB可由VOUT_MODE(20h)确定。VOUT_MODE在PMBUS的定义中,是一个1 byte的寄存器,地址为20h,用于定义和输出电压有关的寄存器值的格式和步进值。

image-20200926215223-1.png

Bit[7]定义数据是相对值还是绝对值(影响过压和欠压保护相关值的定义),Bit[6:5]定义数据格式,Bit[4:0]定义步进值指数N。步进值计算方法如下,注意Bit[4:0]为补码形式,转化为十进制时需要先转化为原码。步进值计算方法为:

image-20200926215302-3.png

例子:以TPS546C23为例,VOUT_MODE=0x17。二进制为:0 00 10111,数据格式为绝对值,Linear格式,步进值指数补码为10111,首位为1,该值为负数,负数的原码是补码取反再+1,为01001,十进制为-9,则步进值为2-9,为0.001953125V,1.953mV。

注:TPS546C23的VOUT_MODE不可更改,为0x17。

5. 由3~4步的结果确定VOUT_COMMAND寄存器中的值。VOUT_COMMAND寄存器只能存二进制值,所以需要通过3~4步将得到的调压范围进行转化成计算机语言。算式为:

image-20200926215241-2.png

即:计算结果需要取整。

image-20200926215320-4.png

十进制二进制转化,打开计算器,进入到“programmer”码农页面。其中HEX代表16进制(HEXadecimal),DEC代表十进制(DECimal),OCT代表八进制(OCTonary),BIN代表二进制(BINary)。

image-20200926215340-5.png

在DEC分别输入277和375,得到其二进制分别为0001 0001 0101和0001 0111 0111,十六进制为0115h和0177h。

image-20200926215355-6.png

则VOUT_COMMAND的范围为0115h~0177h。

6. 写寄存器,用WRITE WORD格式写入VOUT_COMMAND(21h),即可完成调压操作。

image-20200926215411-7.png

image-20200926215445-8.png

点赞  2020-9-26 21:54
暂无评论,赶紧抢沙发吧
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复