简介:这份文档面向电子工程、自动化控制方向的学习者与硬件设计入门者,系统讲解数控稳压电源的电路原理与实现方法,帮助读者理解从主控到输出的完整信号链路。内容围绕STC89C51单片机控制TLC5615数模转换器输出电压,经OPA2107运算放大器与IRF9Z24N构成负反馈系统实现恒压输出,并借助电位器分压反馈调节输出准确度;同时涵盖键盘电路读入控制数据、LCD1602或数码管显示电压的人机交互方案,以及整流滤波、晶振、复位、过流检测与蜂鸣器报警等模块的电路细节。资源包共1个doc文件,约487KB,以图文结合方式呈现总体电路图与分模块原理讲解,便于对照识图与理解设计思路。已有507人学习,适合作为课程设计、毕业设计或自学稳压电源电路的参考材料,可帮助读者快速掌握数控电源的硬件架构与调试要点。
1. 数控电源:为什么“数字设定电压”最终还是要靠模拟负反馈兜底
很多人第一次看到数控稳压电源的框图,会以为单片机直接“算出”了输出电压,DAC 一给信号,电源就该稳稳输出。真把板子焊出来才发现,空载时电压挺准,一接负载就往下掉,负载一重甚至直接塌到零。翻车的根源在于:单片机只负责“说要多少伏”,真正扛住电流、稳住电压的是后面那套模拟负反馈环路。这份电路资料讲的正是这条链路——STC89C51 通过 TLC5615 输出一个设定电压,OPA2107 把它和电位器采回来的反馈电压做比较,再去驱动 F9Z24N 这只 MOS 管,形成一个闭环。搞懂它,你就明白数控电源里“数字”和“模拟”各自的分工边界,也就知道为什么调压精度、带载能力、短路保护这三件事必须分开设计。
2. 设定电压是怎么变成稳定输出的:DAC、基准与误差放大的三级接力
2.1 TLC5615 的输出公式决定了“分辨率天花板”
整条链路的起点是 TLC5615,一片 10 位、单 5V 供电、串行接口的电压输出型 DAC。它的输出电压不是随便给的,而是由参考电压和写入的数码共同决定:
Vout = 2 × Vrefin × N / 1024这里Vrefin是 6 脚的参考输入,N是单片机通过 DIN 脚串行写入的 10 位数据(0~1023),乘 2 是因为芯片内部带一级 2 倍增益放大器。把Vrefin定在 2.5V,最大输出就是 5V,最小步进是2 × 2.5 / 1024 ≈ 4.88mV。这个数字很关键:它意味着无论后面模拟环路多精密,设定值的颗粒度就被锁死在约 5mV 一档。常见的实现思路是让单片机维护一个 0~1023 的档位变量,按键加一减一,再把这个整数拆成 10 个 bit 从高位到低位送出去。
串行时序上,TLC5615 靠 SCLK、CS、DIN 三根线工作,单片机侧对应 P3.3、P3.2、P3.4。写一帧数据的典型流程是:拉低 CS 选中芯片,在每个 SCLK 上升沿把一位数据放到 DIN 上,送满 10 位后拉高 CS 锁存。这里有个容易忽略的细节——TLC5615 要求 12 位帧格式(前两位是填充位),如果只送 10 位就拉 CS,输出会错位,表现为“设 1V 出来 2V”这种玄学现象。
2.2 2.5V 基准为什么要用 TL431 加跟随器
DAC 的输出精度直接正比于参考电压的精度。如果Vrefin本身在飘,公式算得再对也没用。资料里用 TL431 产生 2.5V:它是一只可控精密稳压源,靠两个电阻就能把输出设到 2.5V 到 36V 之间任意值,典型动态阻抗只有 0.2Ω 量级,很多时候直接替代稳压二极管。
但 TL431 直接接到 DAC 的参考脚还不够。参考脚在转换过程中会有微小电流抽取,如果源的内阻偏大,这点电流就会在源上产生压降,基准跟着抖。所以中间加了一级 OPA2107 接成电压跟随器:输入阻抗极高、输出阻抗极低,把 2.5V 基准“缓冲”一遍再送进 TLC5615。我一般会这么理解这一级——它不是放大,而是隔离,让基准源只面对一个几乎不吃电流的负载。少了这一级,DAC 输出会随写入码值轻微波动,表现为“不同设定值下满量程不一致”,很难查。
2.3 误差放大器加 MOS 管:闭环真正稳住电压的地方
DAC 出来的只是“目标电压”,它驱动不了负载。真正出力的是 OPA2107 与 F9Z24N 组成的负反馈环。接法是:DAC 输出送到运放反相端,MOS 管输出经 RW1 电位器分压后送回运放正相端,运放输出驱动 MOS 管栅极。这是一个典型的闭环调节结构——输出偏低,正相端低于反相端,运放输出朝一个方向推,让 MOS 管导通加深,输出回升;输出偏高则反向动作。
资料给出的输出关系是:
Vo = Vin × (RW / RWL)Vin是运放输入端的设定电压,RW是电位器总阻值,RWL是电位器下半段(接地那一段)的阻值。这个式子说明:电位器的分压比决定了输出电压相对设定值的放大倍数。调 RW1 实际上是在校准“设定 1V 时实际输出几伏”,这也是资料里说“输出准确度可以调节”的物理来源。C5 作为输出滤波电容,负责把开关动作留下的纹波压下去。
提示:这里的 MOS 管工作在放大区而非开关区,栅极电压连续变化,所以资料里“PWM 占空比随负载变化”的说法更准确的理解是——环路根据负载自动调整导通程度,本质是线性调节,不是开关电源那种斩波。
3. 单片机这一侧:时钟、复位、按键与显示如何配合调压
3.1 时钟与复位电路:系统能跑起来的前提
STC89C51 的时钟由 Y1(12MHz)配合 C2、C3 两只 30pF 电容构成,接在 XTAL1、XTAL2 之间。12MHz 决定了机器周期,也间接决定了按键扫描和 DAC 刷新能跑多快。复位电路是 C1(10uF)加 R2(10K)的经典上电复位:上电瞬间电容相当于短路,RST 被拉高,单片机复位;电容充满后经 R2 放电,RST 回到低电平,程序开始运行。K2 并联在电容两端,按下时同样把 RST 拉高,实现手动复位。这套 RC 参数不是随便取的,电容太小复位时间不够,程序可能起不来;太大则上电后要等一会儿才运行。
3.2 独立按键扫描:为什么选独立按键而不是矩阵
按键接在 P1.0 到 P1.5,一端接地,另一端接 IO。按键弹起时,51 单片机 IO 内部弱上拉让端口读回高电平;按下时端口被拉到地,读回低电平。资料明确说选独立按键是为了“扫描时间短、程序简单、稳定性高”。这个取舍很实在:矩阵键盘要逐行逐列扫描,还要处理鬼键,代码量和时序都更重;而这个电源只需要几个键(加、减、确认之类),独立按键一个 IO 对应一个键,扫描函数就是逐个读端口,几乎没有歧义。
软件上通常要做消抖:检测到低电平后延时一小段再读一次,两次都低才认账。少了消抖,按一下可能被识别成好几下,电压一跳好几档,用户会以为板子坏了。
3.3 数码管与 LCD1602 两条显示路线
资料给了数码管版和液晶版两套图。数码管方案用四位一体共阳管,位选由 P2.4 到 P2.7 控制,各接一只 8550 PNP 三极管,低电平导通、高电平截止;段选直接接 P0 口。这里有个巧妙点:P0 口是漏极开路结构,作为输出本该接上拉电阻,但数码管的段本身就是负载,相当于提供了上拉通路,所以省掉了排阻,既简化电路又降成本。R51 是段限流电阻,220Ω 直接决定亮度。
LCD1602 方案则用 P0 送数据、P2.5 到 P2.7 控制 RS、RW、EN,配合 3K 电位器调对比度。液晶能显示“设定值/实测值”这类文字信息,比数码管直观,代价是接线和初始化代码更多。两条路线并存,本质是同一个控制逻辑换了个人机接口。
4. 过流与短路保护:采样电阻、比较器和蜂鸣器怎么串成一条链
4.1 电流怎么变成电压:R11 采样加反相放大
保护链路的入口是 R11,一只串在输出回路里的电流检测电阻。电流流过它产生压降,这个压降正比于负载电流。但压降通常很小,直接比较不够灵敏,所以后面接 U4A(OPA2107)做反相放大,把微小压降放大到便于比较的电平。反相比例放大的增益由反馈电阻和输入电阻之比决定,调这两个阻值就能设定“多大电流算过流”。
4.2 2.5V 比较阈值与单片机动作
放大后的电压送进 U4B,与 2.5V 标准电平比较。一旦超过 2.5V,比较器输出翻转成低电平送给单片机。单片机检测到这个信号,就认定过流,立刻通过 TLC5615 把设定值降到 0,输出被切断。同时 P3.6 控制 8550 三极管导通,蜂鸣器响起来报警。这条链是纯硬件检测加软件响应:硬件负责“发现”,软件负责“处置”。好处是响应路径短,不依赖主循环轮询;代价是阈值由硬件电阻定死,改保护点要动电阻。
注意:比较器输出到单片机的那根线,电平极性要和程序判断逻辑对齐。资料里写“大于 2.5V 输出低电平”,程序里就得按低电平有效去写,接反了会出现“一上电就报警”或者“过流了没反应”两种极端。
4.3 保护动作之后为什么还要软件兜底
硬件比较器只能告诉单片机“超了”,但切断动作是软件执行的。如果程序卡在某个长延时里,保护就会迟滞。所以稳妥的做法是在主循环里高频检查保护标志,并且把“降为 0V”写成独立函数,任何路径检测到过流都调用它。这也是为什么资料强调“单片机认为过流就会控制 TLC5615 将输出降为 0V”——保护是否可靠,一半看比较器阈值,一半看软件有没有及时响应。
5. 避坑与排查:这类数控电源最容易翻车的几个点
5.1 现象:空载电压准,一接负载就掉
原因多半在反馈取样点或 MOS 管驱动能力。如果电位器分压取的是 MOS 管漏极而不是真正的输出端,线路上的压降没被反馈进去,闭环就“看不见”负载造成的跌落。解决是把反馈点挪到输出接线端附近,确保采到的是负载真正拿到的电压。
5.2 现象:设定值跳变,按一下键电压跳好几档
这是按键没消抖,或者 DAC 写入时序有误。先查按键扫描有没有延时重读;再查 TLC5615 的 CS 是否在送满完整帧后才拉高。帧长不对会导致数据错位,表现就像“按一下跳好几档”。
5.3 现象:基准电压实测不是 2.5V,输出整体偏移
TL431 的分压电阻选值不当,或者跟随器没接好。TL431 的输出由两个电阻比值决定,电阻精度直接影响基准;跟随器如果反馈脚接错,会变成开环比较器,基准直接跑飞。用万用表量 DAC 的 6 脚,稳定在 2.5V 附近才算过关。
5.4 现象:一上电蜂鸣器就响,输出为零
先看比较器输出极性是否和程序判断相反,再看采样电阻是否虚焊导致输入端悬空。悬空时运放输入不确定,比较器可能误翻转。把 R11 两端焊点补一遍,确认比较器输入端有确定的静态电平。
5.5 现象:数码管显示正常但亮度忽明忽暗
位选三极管的基极限流电阻取值偏大,三极管没进入完全导通,位扫描时压降变化导致亮度不稳。按资料思路,基极电阻要保证三极管饱和导通,段限流电阻则统一取值,避免各位亮度不一致。
6. 设计取舍:为什么这套“数字设定加模拟闭环”至今仍有参考价值
把整份电路拆完,会发现它的核心取舍非常清晰:数字部分只做“设定”和“显示”,模拟部分负责“出力”和“稳定”。这个划分不是偷懒,而是由器件特性逼出来的。51 单片机的 IO 驱动不了安培级电流,DAC 的输出阻抗也带不动负载,所以必须有一级功率器件和围绕它的负反馈。反过来,如果全用模拟电位器调压,就没有档位记忆、没有数码显示、也没法用软件做过流后的自动切断。数字与模拟各干各擅长的事,是这类电源成本低又实用的根本原因。
代价同样明显。10 位 DAC 把分辨率锁在约 5mV,想要更细就得上更高位数的转换器;保护阈值由硬件电阻定死,改保护点要动烙铁;MOS 管工作在线性区,重载时发热不可忽视,散热设计不到位就会热到保护甚至损坏。这些不是这份资料的缺陷,而是这个价位和复杂度下的合理边界。
验证这套电路是否真的按原理工作,我习惯分三步走:先断开功率级,只测 DAC 输出随设定值是否线性变化,确认数字链路和基准没问题;再接上功率级空载,测输出是否跟随设定值,确认闭环方向没接反;最后带假负载逐步加流,观察过流保护动作点和蜂鸣器响应。三步里任何一步对不上,问题范围就缩小到对应那一段,比整板乱查高效得多。
从那以后我每次碰这种“数字设定加模拟闭环”的板子,都强制先单独验证基准和 DAC,再验证环路极性,最后才上负载——跳过任何一步,后面排查花的时间都会加倍还回来。希望帮到你。
本文还有配套的精品资源,点击获取