针对一类Buck-Boost变换器,提出一种线性与非线性复合控制算法。在负载电流发生大的阶跃变化时,使用非线性电容电荷平衡控制算法,保证动态过程中输出电容上的放电量和充电量相等,并使动态过程中电容充放电量最少,在相应的时间点来控制开关管的动作,使Buck-Boost变换器快速恢复到稳态,从而优化动态性能的目的;在变换器处于稳定工作状态时,采用常规的线性电压模式控制。本文给出了非线性电容电荷平衡控制算法的详细计算公式,并利用FPGA数字控制平台实现所提的控制算法。最后的仿真实验和样机实验,验证了所提的线性与非线性复合控制算法能够提高Buck-Boost变换器的动态性能。