【Silver_zero】 CPSQ5206 DC-DC 电压调节方案调试

一、 前言

本文以世平集团推出的 NXP Echoes-S32K144 评估板为例,驱动基于 CPSQ5206 的 DC/DC 电压调节方案 Silver_zero。Silver_zero 是大联大世平集团推出的一款 DC/DC 电压调节方案,采用数字控制式 Buck_Boost CPSQ5206,提供包含输入/输出过压保护、输出短路保护、MOSFET 逐周期限流和热关机等全面保护,符合 AEC-Q100 规范适用于汽车应用。
本文将各模块独立介绍并在各模块章节中讲解初始化函数代码,最后在主函数代码章节中调用各模块初始化函数。由于模块头文件为各函数声明,所以本文默认各头文件声明已创建并编写无误,若未有头文件,可创建 .h 文件并将各函数名复制到 .h 文件中编译成功即可。

二、 Silver_zero

2.1 Silver_zero 介绍

Silver_zero 是大联大世平集团推出基于易冲 CPSQ5206 的 DC/DC 电压调节方案, 本方案支持 3.8V 至 36V 的宽输入电压范围,并提供2.0V至36V的可编程输出电压,分辨率为 10mV。CPSQ5206 符合 AEC-Q100 适用于汽车应用,提供全面的保护,包括输入输出过压保护、输出短路保护、MOSFET 逐周期限流和热关机。所有这些保护旨在确保变流器的安全运行。

使得此方案可以提供低于、高于或完全等于输入电压的调节电压,基于不同的输入电压和输出电压组合,转换器以降压升压或降压模式运行,实现不同操作模式之间的动态无缝切换。

关键特性:

  • 符合 AEC-Q100 适用于汽车应用。
  • 单电感器,4 开关降压升压控制器,用于高效升压/降压 DC/DC 转换。
  • 从 8V 到 36V 宽输入电压范围。
  • 无缝转换 Buck、Buckboost 和 Boost 模式。
  • 可选择 200kHz、400KHz、600kHz 和 800kHz 开关频率。
  • 可编程 0V 到 36V,步长 10mV 的输出电压。
  • 可选高达 8A,步长为 50mA(带有 5mΩ 输出电流传感电阻器)的输出电流调节。
  • 可选 VOUT 转换速率符合 USB PD 3.0 规范。
  • 可选的外部时钟同步,以避免频率干扰和串扰。
  • 可编程输入过压保护与输出过压保护。

2.2 方案框图

Silver_zero 方案框图

2.3 电气特性

Parameter

Description

Minimum

Typical

Maximum

Unit

VIN

Input voltage range

2.8

12

36

V

FSW

inverter switching frequency

 

120

 

KHz

 IIN_NOR

Normal board input current @ 5W

 

0.25

 

A

@ 15W

 

0.75

 

@ 50W

 

2.5

 

:供电电流值 IIN_NOR 是VIN = 12V 时采样得到的平均值,具体以实际测量值为准。

2.4 各模块分布

整板尺寸为:55 * 36 mm(4 层板),板上留有多个接口可独立使用或与其它板连接使用。

 

本方案中的功率传输途径:

  • 外部输入直流电压(DC Voltage),经过全桥整流 CPSQ5206。
  • 由 CPSQ5206 接收 I2C 信号并按照信号调压输出。
  • 由外部给予 EN、SCL、SDA 信号驱动 CPSQ5206 工作。

从各模块分布可以看出,本方案的布局布线合理,大功率与小信号之间隔离较为充分。综合低功耗元件、合理的 layout、充分散热等因素,使得转换效率能够达到 95% 以上。

三、  方案板调试

3.1 调试工具准备

硬件资源

  • 直流电源 * 1
  • 示波器 * 1
  • Silver_zero、S32K144 EVB(含J-link烧录工具) * 1

注:S32K144 EVB 需要额外购买,当然如果你没有 S32K144 EVB 开发板可以使用其它具有 I2C 功能的任意单片机开发板进行调试。S32K144 基于 32位 ARM Cortex-M4F 内核,最快内核频率达 112MHz。NXP Echoes-S32K144评估板采用 14×14mm LQFP100 封装,引脚间距 0.5mm,具有丰富的外设资源。

软件资源

  • 代码开发软件:S32 Design Studio for ARM v2.2(推荐);Keil

3.2 硬件连接与输出计算

CPSQ5206 使用 I2C 通信接收数据执行调压操作,因此我们将 S32K144 配置一个 I2C 接口。由于 CPSQ5206 的数据手册说明 ADDR 引脚决定 CPSQ5206 的从机地址是 60H 或者 62H,Silver_zero 方案设计中 CPSQ5206 的 ADDR 引脚通过一个 0 欧姆电阻连接到地所以从机地址为 60H。

Silver_zero ADDR 设计

CPSQ5206 的输出由 0x06、0x07 寄存器控制,对这两个寄存器进行写入可以改变转换器的输出电压。这两个寄存器的输出数据计算根据转换器选择的不同输出反馈而有区别,输出反馈的选择通过 FB 引脚的硬件连接来进行选择,通常情况如果只用自定义的输出分压反馈只需将 FB 引脚连接到需要的分压电路,如果使用 CPSQ5206 内部集成的输出分压反馈则需要将 FB 引脚连接到 VDD 引脚上。


Silver_zero 部分原理图

Silver_zero 的 FB 的引脚通过一个 0 欧姆电阻连接到 VDD 引脚上,使用内部输出分压反馈。当 CPSQ5206 使用内部输出分压反馈时,计算输出寄存器值的将输出电压值(2V-36V)以毫伏为单位除以10.06 后取整数,并将取得整数装换成 2 进制数,将低 8 位数赋予 0x07 寄存器,剩下的 4位赋予 0x06 寄存器。例如,我们需要输出电压为 5V,那么将 5V 转换成 5000mV,使用 5000 除以 10.06 约等于 497.0179,取 497 转化为二进制数得 0001 1111 0001,那么低 8 位的 1111 0001 写入 0x07 寄存器,剩下的 0001 写入0x06 寄存器,为了方便编写程序将二进制数写作十六进制数,即向 0x06 寄存器写入数据 0x01,向 0x07 寄存器写入数据 0xF1,其它输出电压值以此类推即可。 

3.3 寄存器列表

ADDR

REGISTER

R/W

Bit7

Bit6

Bit5

Bit4

Bit3

Bit2

Bit1

Bit0

0x00

Product_ID

RO

Product_ID

0x01

Device_ID

RO

Device_ID

0x02

Device_config0

R/W

RESERVED

LATCHOFF_EN

VIN_OVP[1:0]

IIN_OCP[1:0]

RESERVED

0x03

Device_config1

R/W

VOUT_SLEW[1:0]

FREQ_DITHER[1:0]

FORCE_DISCHG

ILIM_DIS

HICCUP_DIS

FCCM_EN

0x05

Device_config2

R/W

RESERVED

SW_RST

0x06

VOUT_0

R/W

RESERVED

VOUT[11:8]

0x07

VOUT_1

R/W

VOUT[7:0]

0x08

ILIM

R/W

ILIM[7:0]

0x09

Device STAT

RO

CRC_ERR_STAT

BIST_ERR_STAT

FREQ[1:0]

DVS_DONE_STAT

PGOOD_STAT

RESERVED

ILIM_STAT

0x0A

Device FAULT

RO

VOUT_ABS_OVP_STAT

VOUT_UVP_STAT

TSHUT_STAT

IIN_OCP_STAT

RESERVED

VOUT_SCP_STAT

VIN_OVP_STAT

VOUT_OVP_STAT

0x0B

FAULT FLAG

RO

VOUT_ABS_OVP_FLAG

VOUT_UVP_FLAG

TSHUT_FLAG

IIN_OCP_FLAG

RESERVED

VOUT_SCP_FLAG

VIN_OVP_FLAG

VOUT_OVP_FLAG

0x0C

FAULT MASK

R/W

VOUT_ABS_OVP_MASK

VOUT_UVP_MASK

TSHUT_MASK

IIN_OCP_MASK

RESERVED

VOUT_SCP_MASK

VIN_OVP_MASK

VOUT_OVP_MASL

CPSQ5206 寄存器列表

  • 0x00:产品 ID 信息 —— 存储产品 ID 信息。
  • 0x01:设备 ID 信息 —— 存储设备 ID 信息。
  • 0x02:设备配置 0 —— 配置输入过压保护值、逐周期过流保护值等。
  • 0x03:设备配置 1 —— 配置电压转换速率、配置频率抖动等。
  • 0x05:设备配置 2 —— 寄存器复位 POR 值。
  • 0x06:输出配置 0 —— 输出电压高。
  • 0x07:输出配置 1 —— 输出电压低。
  • 0x08:极限电流密度 —— 配置极限电流密度。
  • 0x09:设备状态 —— 设备状态信息。
  • 0x0A:设备故障 —— 输出过压状态位、输出欠压状态位等故障位。
  • 0x0B:故障标志 —— 输出过压故障标志、输出欠压故障标志等故障标志。
  • 0x0C:故障代码 —— 输出过压故障码、输出欠压故障码等故障码。 

3.4 程序编写

S32DS 导入 I2C 主机例程后设置从机地址、操作模式、波特率等,设置完成后点击生成代码即可。


S32K144 I2C 设置


I2C 主机例程初始化

S32DS 导入 I2C 主机例程后设置完从机地址更新代码后无需对初始化代码进行修改即可使用。Silver_zero 仅需配置 CPSQ5206 的 0x06、0x07 寄存器设置输出电压,其它寄存器默认设置即可满足 Silver_zero 使用需求,我们创建一个数组来存储需要发送的寄存器地址与数据并且调用 I2C 发送函数来执行数据发送,下图给出输出电压为 5V 代码示例。


I2C 5V 输出电压代码

创建 drivers.h 与 drivers.c 文件将上述代码封装成函数以便更好地调用,在 .h 文件中定义 I2C 发送数据数组长度、枚举 CPSQ5206 的寄存器地址并声明输出函数。为了更好地观察Silver_zero 的工作状态同样声明读取 CPSQ5206 寄存器信息函数并引用串口与系统滴答计时器周期读取寄存器信息使用串口发送,串口发送信息为 13 十六进制数对应 CPSQ5206 13 个寄存器当前工作状态,可对应 CPSQ5206 数据手册了解详细信息(串口与系统滴答定时器为基础配置使用默认已存在)。


drivers.h





drivers.c


main.c

3.5 转换测试

按图将直流电源、Silver_zero 与S32K144 EVB连接。直流电源与 Silver_zero J1 的 VBUS 和 GND 连接为 Silver_zero 提供 12V 直流电,S32K144 EVB 与 Silver_zero J3 连接,各引脚的对应关系如下,Silver_zero 的J2 为 VOUT、GND。使用示波器测量 VIN、SW1(电感左侧)、SW2(电感右侧)与 VOUT 并记录波形,同时记录串口发送 CPSQ5206 当前工作状态。

设备连接图

S32K144 EVB 与 Sliver_zero 引脚对应表

Silver_zero

SDA

SCL

GND

INT

EN

GND

S32K144 EVB

PTA2

PTA3

GND

 

3.3V

GND

注:INT 引脚 CPSQ5206 分压反馈引脚,使用外部分压反馈时连接,Silver_zero 使用内部分压反馈无需连接。

VIN=12V,L=4.7uH, FSW=400KHZ,

  • CH1:VIN
  • CH2:OUT
  • CH3:SW1
  • CH4:SW2


VIN=12V,VOUT=5V


VIN=12V,VOUT=5V,工作log


VIN=12V,VOUT=12V



VIN=12V,VOUT=12V,工作 log

VIN=16V,VOUT=20V


VIN=16V,VOUT=20V,工作 log

4.  参考文献

[1] CP-D-31-CA01-Rev0.2 CPSQ5206_Datasheet, CPS

[2] S32K144 Reference Manual.pdf,NXP

[3] S32K144_IO_Signal_Description_Input_Multiplexing,NXP

欢迎在博文下方留言评论,我们会及时回复您的问题。如有更多需求,欢迎联系大联大世平集团 ATU 部门:atu.sh@wpi-group.com
作者:Hobo Xu / 许宁

★博文内容均由个人提供,与平台无关,如有违法或侵权,请与网站管理员联系。

★文明上网,请理性发言。内容一周内被举报5次,发文人进小黑屋喔~

评论