基于TPS61170与PIC18F86J50的高效DC-DC升压方案设计

1. 项目背景与核心器件选型

在工业控制、医疗设备和新能源系统中,经常需要将较低的直流电压(如3.3V或5V)升压至更高电压(如12V/24V)为特定负载供电。TPS61170作为TI推出的高压升压转换器芯片,配合PIC18F86J50微控制器,可以构建一个高效、可靠的DC-DC升压解决方案。

TPS61170的关键特性包括:

  • 输入电压范围:3V至18V
  • 输出电压最高可达38V
  • 集成1.2A/40V功率MOSFET
  • 固定1.2MHz开关频率
  • 轻载时采用跳周期模式提升效率
  • 6引脚2x2mm QFN封装

PIC18F86J50作为主控MCU的优势:

  • 内置12位ADC便于电压采样
  • 多个PWM输出适合控制环路调节
  • 64KB Flash存储空间可存储校准参数
  • 支持USB接口方便调试

2. 电路设计与关键参数计算

2.1 升压拓扑基础原理

Boost电路通过控制开关管(TPS61170内部MOSFET)的导通/关断时间比来实现升压。当开关管导通时,电感储能;关断时,电感能量通过二极管释放到输出端。输出电压Vout与输入电压Vin的关系为:

Vout = Vin × (1 / (1 - D)) 其中D为占空比(0 < D < 1)

2.2 电感选型计算

电感值直接影响电流纹波和转换效率。对于1.2MHz开关频率,推荐使用4.7μH至10μH的屏蔽功率电感。具体计算公式:

L = (Vin × D) / (ΔIL × fsw)

其中:

  • ΔIL通常取负载电流的20%-40%
  • fsw=1.2MHz
  • 以Vin=5V, Vout=12V为例: D = 1 - (Vin/Vout) = 0.583 若Iout=300mA, 取ΔIL=120mA L = (5×0.583)/(0.12×1.2e6) ≈ 6.8μH

2.3 输出电容选择

输出电容需满足两个要求:

  1. 抑制输出电压纹波
  2. 提供负载瞬态响应

陶瓷电容ESR低,适合高频应用。纹波电压估算:

ΔVout ≈ Iout × (D / (fsw × Cout))

若允许纹波50mV,则: Cout ≥ 0.3 × 0.583 / (1.2e6 × 0.05) ≈ 22μF 建议使用两个10μF/50V X7R陶瓷电容并联

3. PCB布局与EMI优化

3.1 关键路径布线

  1. 功率回路最小化:

    • Vin→电感→SW引脚→GND的路径要短而宽
    • 使用实心铜皮降低阻抗和热阻
  2. 反馈网络布线:

    • FB分压电阻靠近芯片放置
    • 走线远离开关节点防止噪声耦合
  3. 散热处理:

    • 芯片底部焊盘必须良好焊接
    • 建议使用4层板,中间层为完整地平面

3.2 噪声抑制措施

  1. 输入滤波:

    • 添加10μF+0.1μF陶瓷电容组合
    • 必要时串联磁珠
  2. 开关节点处理:

    • SW引脚到电感的走线长度<5mm
    • 可添加1-5Ω栅极电阻减缓开关边沿
  3. 辐射控制:

    • 电感选用闭磁屏蔽型号
    • 敏感信号远离电感至少5mm

4. 软件控制策略实现

4.1 PIC18F86J50配置步骤

  1. 初始化ADC模块:
ADCON0 = 0b00000001; // AN0通道, ADC开启 ADCON1 = 0b00001110; // 右对齐, Fosc/8 ADCON2 = 0b10101010; // 采集时间4TAD
  1. 配置PWM输出:
PR2 = 0x4E; // PWM周期≈50kHz CCP1CON = 0b00001100; // PWM模式 T2CON = 0b00000100; // 定时器2开启

4.2 电压闭环控制算法

采用增量式PID控制输出电压:

int PID_Update(int setpoint, int actual) { static int last_error = 0; static int integral = 0; int error = setpoint - actual; integral += error; int derivative = error - last_error; last_error = error; return KP*error + KI*integral + KD*derivative; }

4.3 保护功能实现

  1. 过压保护:
if(ADC_Read(OVP_PIN) > OVP_THRESHOLD) { EN_PIN = 0; // 立即关闭输出 Fault_LED = 1; }
  1. 软启动控制:
for(int i=0; i<100; i++) { PWM_Duty(i); Delay_ms(10); }

5. 实测数据与性能优化

5.1 效率测试对比

输入电压输出电压负载电流效率
5V12V100mA89%
5V12V300mA85%
12V24V150mA82%

效率优化建议:

  • 选择DCR<0.1Ω的电感
  • 使用低VF肖特基二极管
  • 轻载时启用跳周期模式

5.2 负载瞬态响应

测试条件:负载从50mA阶跃到300mA

  • 输出电压跌落:<200mV
  • 恢复时间:<100μs

改善方法:

  • 增加输出电容至47μF
  • 调整补偿网络(在FB引脚添加前馈电容)

5.3 常见问题解决

  1. 启动失败:

    • 检查EN引脚电平
    • 确认Vin不低于UVLO阈值(2.7V)
  2. 输出电压振荡:

    • 检查补偿网络RC值
    • 确保反馈走线远离噪声源
  3. 芯片过热:

    • 确认电感未饱和
    • 检查PCB散热设计

6. 进阶应用扩展

6.1 多路输出设计

通过添加变压器绕组,可从单一TPS61170获得正负输出电压:

  1. 采用SEPIC拓扑
  2. 使用耦合电感替代普通电感
  3. 增加负压整流电路

6.2 数字调压接口

利用CTRL引脚实现动态调压:

  • 通过PWM占空比调节输出电压
  • 或使用Easyscale™单线协议
void Send_Easyscale(uint8_t code) { CTRL_PIN = 1; Delay_us(10); for(int i=0; i<8; i++) { CTRL_PIN = (code>>i) & 1; Delay_us(10); } }

6.3 电池供电优化

针对电池应用的特殊处理:

  1. 低电量时降低开关频率
  2. 实现输入电流限制
  3. 添加库仑计功能

在调试过程中,建议先用EVM评估板验证设计,再移植到自定义PCB。TI提供的TPS61170EVM-280评估模块包含完整原理图和布局参考,可显著缩短开发周期。