☰
基于51单片机的Boost升压斩波5-20V可调输出设计与Proteus仿真
2026/10/27 19:03:33 网站建设 项目流程

简介:基于51单片机的升压斩波5-20V(Boost)Proteus仿真设计资料包,面向电子工程、嵌入式系统学习者,适合需要完成直流升压电路课程设计或项目开发的人群;内含完整的原理图、流程图、物料清单、仿真文件及源代码,可实现5V至20V可调输出电压,通过按钮设定电压,LCD实时显示当前值与设定值,并采用DA转换加压控PWM方式控制Boost电路,采样输出电压后自动调整输出。压缩包内共44个文件,包含C语言源文件、头文件、Hex烧录文件、Proteus仿真DSN、原理图预览PDF、电路图SchDoc、元件清单Excel及流程图图片等,从代码到仿真到硬件清单一应俱全,包体大小约392KB,便于快速下载使用。已有1109人学习下载,兼具教学参考与工程实用价值;仿真高频率下会运行较慢且出现警告,属正常现象,电压较高时误差约1V,阅读文档即可提前规避。整份资源对深入理解Boost电路原理、闭环电压调整和单片机人机交互设计都有直接帮助。

1. 这个课题到底在做什么:51单片机、Boost 升压与 5-20V 可调输出的关系

把 5V 升到 20V,看起来只是换个电容的事,但要做成「输出电压可调、带载不掉压、有完整 Proteus 仿真和源码」的课设或毕设题,就不得不面对 Boost 斩波电路的本质:用 PWM 控制电感的储能与释放。基于 51 单片机的升压斩波 5-20V 项目,核心工作是把单片机当成 PWM 发生器和闭环控制器,配合 Boost 升压拓扑、电压采样网络,最终在 Proteus 里跑通整套逻辑,再整理出原理图、流程图、物料清单、仿真图和源代码。适合正在做课程设计、毕业设计,或者想快速验证一套可调升压电源控制逻辑的嵌入式方向学生。

这套方案里最容易让人误判的一点是:Proteus 仿真跑通并不等于实物能上电。仿真能证明你的占空比计算、闭环逻辑、ADC 采样链路是对的,但电感是否饱和、MOS 管栅极驱动是否到位、二极管开关速度够不够,仿真都不会替你发现。这也是下文要把参数计算、器件选型和调试坑分开讲的原因。

2. Boost 电路原理与参数计算:围绕 5-20V 的占空比公式、电感与开关频率选取

2.1 Boost 拓扑为什么适合 5-20V,而不是用 charge pump 或反激

Boost 升压斩波电路的基本结构是:电感串联在输入端,MOS 管在电感之后对地开关,二极管和输出电容组成整流滤波。MOS 管导通时,电源给电感充磁,电感电流线性上升,此时负载由输出电容供电;MOS 管关断时,电感电流不能突变,续流路径是二极管到输出电容和负载,此时输出电压等于输入电压叠加电感的反电动势。输出电压和输入电压的关系式是:

Vout = Vin / (1 - D)

D 是占空比。把这个公式变形就能算出目标电压对应的占空比:

D = 1 - Vin / Vout

5V 输入要升到 20V,理想占空比 D = 1 - 5/20 = 0.75。要升到 15V,D = 0.667。这说明占空比的变化范围要覆盖大约 0.7 左右到接近 0 的区间,PWM 分辨率至少要能表达 2% 以内的占空比变化,否则电压会一跳一跳的。选择 Boost 而不是 charge pump 的原因也很直接:charge pump 的带载能力差,输出电流超过几十毫安电压就垮掉,而课设通常希望输出 0.5A 左右给后续负载供电;反激则需要变压器,绕制麻烦、仿真模型复杂,对 51 单片机方案来说属于过度设计。Boost 拓扑结构简单、元件少、计算式直观,是最适合这个题目的升压路线。

2.2 关键参数计算与器件选型表:电感量、MOS、二极管、输出电容

开关频率的选择是第一道坎。常见的课设方案用 10kHz 或 20kHz,原因是 51 单片机定时器中断模拟 PWM 时,频率太高中断处理不过来。若用 12MHz 晶振,标准 51 一个机器周期 1us,20kHz 的 PWM 周期是 50us,留给中断处理的时间只有 50 个机器周期,C 语言写的中断服务程序加上现场保护和占空比比较逻辑,很容易超时。所以我建议按 10kHz 做设计,中断周期 100us,时间宽裕得多,代价是电感量要相应加大。

电感量按纹波电流公式估算:

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

取 f = 10kHz,Vin = 5V,D = 0.75,最大输出电流按 0.5A 计算,取纹波电流 ΔIL = 0.5A,代入后:

L = 5 × 0.75 / (10000 × 0.5) = 0.00075H = 750uH

实际取标称值 1mH,留出余量。如果坚持用 20kHz,同样条件下算出来是 375uH,取标称值 470uH 也可以。把这两档参数记牢,后面写定时器初值、换仿真参数时都用得上。

器件参数要求推荐型号参数依据
电感1mH / 0.8A 以上工字电感或功率电感纹波电流 0.5A,留 1.6 倍余量
MOS 管Vds ≥ 40V,Vgs(th) ≤ 4VIRF540N / IRF3205最大输出 20V + 二极管压降,耐压留两倍
二极管耐压 ≥ 40V,开关速度快1N5819 / SS24普通整流管 1N4007 恢复时间太长,必须用肖特基
输出电容100uF~470uF 电解并联 0.1uF 瓷片电解电容 + CBB抑制输出电压纹波,电解电容负责低频,瓷片负责高频
采样电阻30kΩ + 10kΩ 分压精密电阻20V 输出时分压到 5V,适配 ADC 满量程

MOS 管的选型这里埋着一个坑:IRF540N 的 Vgs(th) 是 2~4V,51 单片机引脚直接输出高电平只有约 4.5V(扣除拉电流压降),刚好擦着边。Proteus 仿真里模型是理想驱动,看不出问题,实物就可能在重载时 MOS 管不完全导通、发热严重。常见做法是加一级三极管推挽驱动,把栅极电压拉到接近 VCC,下文第 4 章会讲。

输出电容的取值也要说明白。升压电路在 MOS 管导通期间完全靠电容维持输出电压,电容太小电压跌落明显。按输出纹波要求估算,100uF 到 470uF 是常见范围,Proteus 仿真中电解电容的 ESR 模型不明显,实物上 ESR 压降会成为纹波的主要来源,因此实际板上必须在电解电容旁边并一个 0.1uF 瓷片电容吸收高频纹波。

2.3 开环验证代码:先让 PWM 波能稳定输出,再谈闭环

在还没有写 ADC 采样和 PID 之前,第一步是让单片机输出一个占空比固定的 PWM,用 Proteus 虚拟示波器确认波形正常。这个阶段的目标很单纯:排除定时器配置错误、引脚接错、晶振频率不匹配这三类低级问题。常见的做法是用定时器 0 产生 10kHz 中断,中断服务程序里对计数变量递增,和占空比比较后翻转输出引脚。

#include <reg52.h> #define PWM_PERIOD 100 // 10kHz: 100次中断为一个PWM周期 #define PWM_DUTY 75 // 占空比75%,对应5V升20V的初始值 sbit PWM_OUT = P1^0; unsigned int pwm_cnt = 0; void Timer0_Init(void) { // 12MHz晶振,12T模式,定时器0每100us中断一次 TH0 = 0x9C; // 65536 - 100us / 1us = 64536 = 0xFC18 TL0 = 0x18; TMOD &= 0xF0; TMOD |= 0x01; // 定时器0,方式1,16位手动重装 ET0 = 1; EA = 1; TR0 = 1; } void Timer0_ISR(void) interrupt 1 { TH0 = 0x9C; TL0 = 0x18; pwm_cnt++; if (pwm_cnt < PWM_DUTY) { PWM_OUT = 1; // 电感储能阶段 } else { PWM_OUT = 0; // 电感释放阶段 } if (pwm_cnt >= PWM_PERIOD) { pwm_cnt = 0; } } void main(void) { Timer0_Init(); while (1); }

代码里的 PWM_PERIOD 取 100,每 100 次中断构成一个 PWM 周期,10kHz × 100us = 1ms,周期正确。PWM_DUTY 取 75 对应 75% 占空比。这两个参数是联动关系:如果改了 PWM_PERIOD,DUTY 必须按比例重新算,否则真实占空比会变。注意这里 PWM 引脚空闲时的电平状态:PWM_OUT 默认输出 0,占空比小于 100% 时都能正常出波。如果想输出低电平有效,把 if 判断反过来即可。完成这个代码后,在 Proteus 里接上虚拟示波器,应该看到频率约 10kHz、高电平时间 75us 的方波,这才能进入下一步闭环控制。

3. 51 单片机产生可调 PWM:定时器模拟方案与闭环控制流程

3.1 用定时器中断模拟 10kHz PWM 的代码框架

上一章的代码是固定占空比,现在要把 PWM_DUTY 改成全局变量,这样 PID 计算代码能实时修改它。实际项目里减法计数比加法计数更直观:定义一个 PWM 周期计数器,每个周期开始先输出高电平,计数到当前占空比阈值后拉低。这种写法的好处是占空比变量不必在每个中断里做边界判断,漏掉一次更新也不会产生异常波形。

#include <reg52.h> #define PWM_PERIOD 100 #define PWM_MAX 90 // 占空比上限90%,避免电感持续磁饱和 sbit PWM_OUT = P1^0; volatile unsigned char pwm_duty = 20; // 当前占空比,0~100之间变化 volatile unsigned char pwm_cnt = 0; void Timer0_ISR(void) interrupt 1 { TH0 = 0x9C; TL0 = 0x18; if (pwm_cnt < pwm_duty) { PWM_OUT = 1; } else { PWM_OUT = 0; } pwm_cnt++; if (pwm_cnt >= PWM_PERIOD) { pwm_cnt = 0; } }

这里必须用 volatile 修饰 pwm_duty,否则 C51 编译器可能把它优化进寄存器,导致主循环改值不生效。pwm_duty 的初值给 20 是为了安全:第一次上电占空比从小往大调,输出电压缓慢爬升,避免 5V 输入直接按 75% 占空比冲击输出电容。上限 PWM_MAX 设为 90 同样是为了安全,占空比超过 90% 后 Boost 电路工作在临界状态,电感电流失控风险急剧增加,而且 5V 升 20V 的理论占空比 75%,90% 上限足够覆盖整个调压范围。

3.2 ADC 采样与增量式 PID:让 5-20V 输出随设定值走

AT89C52 内部没有 ADC 模块,这是 51 单片机做闭环控制必须解决的现实问题。常见的解决方案有两种:一是换用带 ADC 的 STC 系列单片机,12MHz 晶振下单片机型号依然是 51 内核,程序不用大改;二是在 Proteus 里外挂 ADC0832,双通道 8 位串行 ADC,正好一路测输出电压采样值,一路测电位器设定值。课设和毕设用 ADC0832 更多,因为 Proteus 元件库里直接有模型,原理图画出来也直观。ADC0832 的控制时序是典型的 SPI 兼容模式:拉低片选 CS,时钟上升沿把通道选择位写入,然后下降沿逐位读出数据。下面给出读单通道的函数。

sbit ADC_CS = P2^0; sbit ADC_CLK = P2^1; sbit ADC_DI = P2^2; sbit ADC_DO = P2^2; // ADC0832的DI和DO共用一根引脚 unsigned char adc_read(unsigned char channel) { unsigned char i, dat = 0; unsigned char ch = channel ? 0x01 : 0x00; ADC_CS = 0; ADC_CLK = 0; ADC_DI = 1; // 起始位 ADC_CLK = 1; ADC_CLK = 0; ADC_DI = ch; // 通道选择,0=CH0,1=CH1 ADC_CLK = 1; ADC_CLK = 0; ADC_DI = 0; // SGL/DIFF位,单端输入模式 ADC_CLK = 1; ADC_CLK = 0; ADC_DI = 1; // 释放数据线,后续转为读取 for (i = 0; i < 8; i++) { ADC_CLK = 1; dat <<= 1; if (ADC_DO) dat |= 0x01; ADC_CLK = 0; } ADC_CS = 1; return dat; }

读取函数里最关键的是时序顺序不能乱:起始位、通道位、单端模式位各占一个时钟周期,之后才是 8 个数据读出周期。很多同学第一次用 ADC0832 时输出数据不对,都是因为少送了单端模式位,或者通道选择位顺序反了。调用时 adc_read(0) 读 CH0,接输出电压分压后的采样值;adc_read(1) 接设定电位器。8 位分辨率对应 5V 满量程,每个码值约 19.5mV,反映到 20V 输出端约 78mV 步进,作为课设精度足够。

3.3 闭环控制逻辑:从占空比初值到稳压收敛

闭环控制的流程分四步:ADC 采样设定值和反馈值、计算误差、增量式 PID 更新占空比、限制占空比范围。流程图里要表达的就是这个循环。注意采样周期和 PWM 周期的关系:PWM 是 10kHz,采样周期不必那么快,10ms 采一次就够了,否则 PID 调节太快容易和 PWM 开关互相干扰。ADC 采样值还需要做滑动平均滤波,连续采 8 次取平均,滤掉开关噪声。

#define Kp 15 #define Ki 3 int error_now, error_last; int delta_pwm; unsigned int set_value, fb_value, tmp_value; void pid_control(void) { error_now = (int)set_value - (int)fb_value; delta_pwm = Kp * (error_now - error_last) + Ki * error_now; error_last = error_now; if (delta_pwm > 5) delta_pwm = 5; if (delta_pwm < -5) delta_pwm = -5; if ((int)pwm_duty + delta_pwm > PWM_MAX) { pwm_duty = PWM_MAX; } else if ((int)pwm_duty + delta_pwm < 10) { pwm_duty = 10; } else { pwm_duty += delta_pwm; } } void main(void) { Timer0_Init(); while (1) { set_value = adc_read(1); tmp_value = 0; for (unsigned char i = 0; i < 8; i++) { tmp_value += adc_read(0); } fb_value = tmp_value >> 3; pid_control(); // 等待约10ms后进入下一轮采样 for (unsigned int j = 0; j < 5000; j++); } }

增量式 PID 的整型写法里,Kp=15、Ki=3 不是凭空来的。误差的单位是 ADC 码值,最大约 255,Kp 乘上误差变化量后得到占空比增量。Kp 太大会导致占空比剧烈抖动,输出电压在目标值附近来回冲;Ki 太大则收敛慢且容易超调。从 15 和 3 开始调,观察输出电压波形,如果衰减振荡就同时减小两个系数,如果响应太慢就适当增大 Kp。delta_pwm 限幅在 ±5 是抗积分饱和的手段,防止占空比在电压误差大时猛跳,这在 51 这种计算能力有限的平台上比完整抗饱和逻辑更实用。pwm_duty 的上下限设置也有讲究:下限 10 是为了防止占空比过小时 Boost 输出电压低于输入电压,上限 90 是保证电感不会因为占空比接近 1 而磁饱和。

4. 在 Proteus 里把原理图、仿真图和波形一次跑通

4.1 元件选型与 Proteus 元件名对照表

Proteus 仿真和实物最大的差异是元件模型。Proteus 的 AT89C52 模型可以直接加载 Keil 生成的 HEX 文件,双击单片机在 Program File 里指定路径即可。电感元件在 Proteus 里的默认模型没有饱和特性,这意味着仿真中电感电流可以无限大而不会发热,仿真波形看起来一切正常,实物上同样的参数可能 5 秒就冒烟。元件对照表按电源、主功率、控制、显示四类整理,照着画原理图不会乱。

功能模块Proteus 元件名关键参数设置
单片机AT89C52双击加载 HEX 文件,晶振设为 12MHz
功率 MOSIRF540NVgs(th) 默认 2~4V,仿真用默认即可
二极管1N5819肖特基二极管模型,正向压降约 0.2V
电感INDUCTOR双击设置 Inductance 为 1m,R 设 0.1
输出电容CAP-ELEC容量 220uF,电压额定 25V
采样电阻RES30k、10k 各一个,分压比 4:1
ADCADC0832接 AT89C52 的 P2 口
设定电位器POT-HG电阻值 10k,调节产生设定电压
示波器OSCILLOSCOPE观察 PWM 输出和输出电压纹波

4.2 Proteus 仿真搭建步骤与示波器观察点

搭建顺序建议从左到右:先放单片机最小系统,再放 Boost 主回路,最后接采样和 ADC。主回路接线是 Boost 电路最容易画错的地方,正确的是:电源正极接电感一端,电感另一端接 MOS 管漏极和二极管阳极,二极管阴极接输出电容正极和负载,MOS 管源极接地,输出电容负极接地。51 单片机的 PWM 引脚不能直接驱动 MOS 管栅极,Proteus 仿真也需要在中间加一级三极管推挽,常见做法是用一个 NPN 和一个 PNP 组成图腾柱:PWM 信号同时接两个三极管基极,NPN 的发射极接 PNP 的发射极作为输出,两个集电极分别接 VCC 和 GND。

三极管型号选 2N2222 和 2N2907,Proteus 元件库里有现成的。接好之后给单片机加载 HEX,点击左下角运行,先看 P1.0 引脚的波形,确认频率和占空比;再看输出电容正极对地的电压,万用表模式显示约 20V。示波器观察输出电压纹波时,把通道 A 接输出端,通道 B 接 PWM 引脚,时间轴调到 1ms/格,会发现输出波形稳定但带有锯齿状纹波,这是正常的,因为储能电容在 MOS 导通期间放电,电压略有下降,等到 MOS 管关断时又被电感电流补回去。

仿真过程中改占空比可以用电位器:旋转 POT-HG 改变 CH1 的设定值,观察输出端电压跟随变化。如果输出电压和设定值相差较大,先检查 ADC 两个通道的输入电压是否在 0~5V 范围内,20V 输出经过 30k/10k 分压后应该正好是 5V。如果 ADC 数值不变,大概率是 adc_read 时序里通道选择位顺序写错了。Proteus 仿真的优势在这里体现得淋漓尽致:所有节点电压都能用探针直接测量,不需要猜。

4.3 仿真通过之后,交付文档里值得写清楚的东西

仿真通过后,原理图、仿真图、源代码这三样安装文档直接截图保存即可,但流程图和物料清单需要额外花精力。流程图建议按上一章的闭环控制逻辑画四个模块:初始化、ADC 采样、PID 计算、PWM 输出更新,用箭头连起来,在 ADC 采样模块标注 10ms 周期延时,在 PID 模块标注占空比限幅范围。物料清单要和生产成本对应起来,写清楚每个元件的型号、参数、数量、参考单价,电阻电容按整盘价格摊算,MOS 管和电感单独列,这张表既是答辩时老师必看的内容,也是后续转实物采购的唯一依据。

提示:Proteus 仿真里跑通的是控制逻辑,原理图里要画的栅极驱动三极管推挽电路,不能因为仿真能跑就省略。答辩时老师最常问的就是「为什么这里加两个三极管」,答不上来会很尴尬。常见回答是:51 单片机引脚拉电流只有几百微安,推挽电路提供瞬态充放电电流,保证 MOS 管栅极电容能快速翻转。

5. Boost 调试中的 5 个翻车现场:现象、原因与排查顺序

5.1 输出电压卡死在输入电压附近,纹波还不小

现象:D 占空比已经设置到 70%,输出电压却只有 5V 多一点,也就是和输入电压基本相同,示波器看到输出端有锯齿波但幅度很小。原因:MOS 管根本没有开关动作,或者开关频率异常。先查 PWM 引脚有没有波形,用示波器探 P1.0;如果 PWM 正常,查栅极驱动三极管的供电和接线,尤其是 PNP 管的集电极有没有接 VCC。另一个常见原因是单片机没有正确加载 HEX 文件,程序根本没跑起来。解决顺序:先确认 PWM 方波存在,再确认 MOS 管栅极波形是方波而不是被拉平的直线,最后查功率回路的接线。血泪经验是:Proteus 里虚接的现象很少,一旦出现,先停下来重新检查每个节点的网络标号,而不是反复改占空比参数。

5.2 闭环之后电压来回抖,甚至出现周期性的「呼吸」现象

现象:开环时输出稳定,加上 PID 闭环后电压在目标值上下缓慢摆动,摆动周期大约几百毫秒。原因:PID 参数不匹配,或者采样周期和 PWM 周期之间发生了低频耦合。这里的根源主要是 Kp 过大,占空比每次调节幅度太猛,输出电压好不容易靠近目标值,又被反向修正过头。解决方法是把 Kp 减小一半,Ki 暂时设为 0,观察电压是否还在抖。如果 Ki 是零时不抖了,说明积分项引入过大的相位滞后;如果还在抖,检查 ADC 采样是否用滑动平均滤波,单个毛刺样本会直接干扰 PID 计算。另外注意 pid_control 函数里 delta_pwm 的限幅,±5 这个值在 10 位占空比宽度里约占半级,如果限幅放宽到 ±20,系统大概率会振荡。

5.3 仿真时 MOS 管波形正常,输出电压却上不去

现象:示波器看 MOS 管栅极有漂亮方波,源极接地,漏极波形也是方波,可输出电压就是比理论值低不少。原因:电感参数不对。Proteus 的 INDUCTOR 元件默认电感量可能是 1uH 而不是 1mH。双击电感查看 Inductance 值,这是最容易被忽略的参数。1uH 在 10kHz 开关频率下感抗只有 0.0628Ω,电感根本存不住能量,Boost 变成了一条纯二极管导通回路。解决:把电感量改到 1mH,仿真速度会变慢一点,但波形立刻就正常了。电感量改完之后还要检查电感的串联电阻 R,默认 0.1Ω 合理,设置成 0 反而会让仿真电流大到失真。

5.4 换了个元件库的 MOS 管,波形直接断崖

现象:原理图里的 IRF540N 没动,手抖删掉重新放置了一个同型号,结果输出电压从 20V 掉到 12V。原因:Proteus 元件库里有多个封装或模型变体,重新放置后可能默认参数不同,比如 Vgs(th) 从 2V 变成 4V,51 单片机的驱动电平就推不动 MOS 管了。解决:右键 MOS 管查看属性里的 Model Parameters,把 Vto 参数改回 2V 左右,或者直接删掉换成统一型号。这个坑在 Proteus 8.17 等新版本里尤其常见,因为新版本默认加载的模型库和旧版不一样,老工程文件打开后元件参数会悄悄变化。所以方案文档里一定要写明每个元件的完整参数设置,不能只写型号。

5.5 实物上电电感吱吱叫,仿真却一切正常

现象:照抄仿真参数做了实物板子,一上电电感就发出高频叫声,输出带载能力明显不足。原因:开关频率 10kHz 正好落在人耳最敏感的听觉范围,电感磁芯在 PWM 激励下产生机械振动,是正常物理现象但说明参数选得不合适,常见解决方向有提高开关频率到 20kHz 以上逃出音频范围,或换用工字电感和灌封电感降低振动幅度。更严重的情况是电感饱和:IRF540N 导通时电感电流线性上升,如果电感量偏小或负载过重,电流超过磁芯饱和点,电感量骤降,续流阶段电压就撑不起来。解决方法是重新按输出功率计算电感量,或增加电感电流额定值。这也是仿真永远给不了的信息,仿真电感没有饱和曲线,电流标到 10A 波形依然完美,实物电感 1A 就冒烟。

6. 快速验证这套方案值不值得做:五个电压点的实测与调参习惯

判断这套升压斩波方案是否真的可靠,不能只看 Proteus 仿真波形,要按五个输出点实测闭环性能。以 5V 输入、设定输出分别为 5V、10V、15V、20V 的电压点做一组快速验证,记录每个点的静态误差和动态响应。需要一个可调电子负载或功率电阻,一个万用表,示波器看纹波。

设定输出电压理论占空比实测允许误差满载输出电流判定标准
5V0%±0.2V0.5A占空比接近下限,此时实际是二极管直通
10V50%±0.3V0.5A占空比在中间区间,闭环最容易稳定
15V66.7%±0.4V0.5A电感电流连续模式工作
20V75%±0.5V0.5A最大升压比,关注 MOS 管温升

每个电压点先空载调电位器让电压稳定,再突加 0.5A 负载,记录输出电压跌落幅度和恢复时间。恢复时间在 100ms 以内、跌落不超过 5%,说明 PID 参数和输出电容配合得当。如果恢复时间过长,优先增大 Kp;如果跌落过大,优先增大输出电容而不是调 PID。

我的个人经验是:拿到这个方案第一件事不是改代码,而是把乘法计算全部换成整数运算,把 PID 系数量化成整数,51 的浮点库很慢,10ms 采样周期能跑但会觉得拖沓,性能余量全被吃掉了。另一个习惯是每个参数改完都做一个记录表,占空比初值、Kp、Ki、电感量、开关频率写清楚,不然一天调下来就忘了哪个组合是最优的。最后补充一个细节:问题排查时先用示波器同时看 MOS 管栅极波形和输出电压波形,确认两者关联后再动手改代码,不要「盲调」,否则经常会把已经正确的参数改坏。

希望这些经验能帮你少走些弯路,也希望这套 51 单片机的升压斩波方案能成为你理解功率电子和闭环控制的起点。

本文还有配套的精品资源,点击获取

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询